Index: content/browser/compositor/delegated_frame_host.cc |
diff --git a/content/browser/compositor/delegated_frame_host.cc b/content/browser/compositor/delegated_frame_host.cc |
index 28d586b3d694ed0ce9d0c38470776721b4172560..54305f89e856a01f26e77b1b7e3c2c7c95a4eeff 100644 |
--- a/content/browser/compositor/delegated_frame_host.cc |
+++ b/content/browser/compositor/delegated_frame_host.cc |
@@ -151,7 +151,7 @@ void DelegatedFrameHost::CopyFromCompositingSurface( |
(color_type == kN32_SkColorType)); |
DCHECK(format_support); |
if (!CanCopyToBitmap()) { |
- callback.Run(false, SkBitmap()); |
+ callback.Run(false, SkBitmap(), content::READBACK_SURFACE_UNAVAILABLE); |
return; |
} |
@@ -524,10 +524,10 @@ void DelegatedFrameHost::EvictDelegatedFrame() { |
void DelegatedFrameHost::CopyFromCompositingSurfaceHasResult( |
const gfx::Size& dst_size_in_pixel, |
const SkColorType color_type, |
- const base::Callback<void(bool, const SkBitmap&)>& callback, |
+ CopyFromCompositingSurfaceCallback& callback, |
scoped_ptr<cc::CopyOutputResult> result) { |
if (result->IsEmpty() || result->size().IsEmpty()) { |
- callback.Run(false, SkBitmap()); |
+ callback.Run(false, SkBitmap(), content::READBACK_RESULT_EMPTY); |
return; |
} |
@@ -546,7 +546,7 @@ void DelegatedFrameHost::CopyFromCompositingSurfaceHasResult( |
} |
static void CopyFromCompositingSurfaceFinished( |
- const base::Callback<void(bool, const SkBitmap&)>& callback, |
+ CopyFromCompositingSurfaceCallback& callback, |
scoped_ptr<cc::SingleReleaseCallback> release_callback, |
scoped_ptr<SkBitmap> bitmap, |
scoped_ptr<SkAutoLockPixels> bitmap_pixels_lock, |
@@ -561,18 +561,18 @@ static void CopyFromCompositingSurfaceFinished( |
bool lost_resource = sync_point == 0; |
release_callback->Run(sync_point, lost_resource); |
- callback.Run(result, *bitmap); |
+ callback.Run(result, *bitmap, content::READBACK_SUCCESS); |
} |
// static |
void DelegatedFrameHost::PrepareTextureCopyOutputResult( |
const gfx::Size& dst_size_in_pixel, |
const SkColorType color_type, |
- const base::Callback<void(bool, const SkBitmap&)>& callback, |
+ CopyFromCompositingSurfaceCallback& callback, |
scoped_ptr<cc::CopyOutputResult> result) { |
DCHECK(result->HasTexture()); |
base::ScopedClosureRunner scoped_callback_runner( |
- base::Bind(callback, false, SkBitmap())); |
+ base::Bind(callback, false, SkBitmap(), content::READBACK_RESULT_EMPTY)); |
// TODO(sikugu): We should be able to validate the format here using |
// GLHelper::IsReadbackConfigSupported before we processs the result. |
@@ -620,11 +620,11 @@ void DelegatedFrameHost::PrepareTextureCopyOutputResult( |
void DelegatedFrameHost::PrepareBitmapCopyOutputResult( |
const gfx::Size& dst_size_in_pixel, |
const SkColorType color_type, |
- const base::Callback<void(bool, const SkBitmap&)>& callback, |
+ CopyFromCompositingSurfaceCallback& callback, |
scoped_ptr<cc::CopyOutputResult> result) { |
if (color_type != kN32_SkColorType && color_type != kAlpha_8_SkColorType) { |
NOTIMPLEMENTED(); |
- callback.Run(false, SkBitmap()); |
+ callback.Run(false, SkBitmap(), READBACK_FORMAT_NOT_SUPPORTED); |
return; |
} |
DCHECK(result->HasBitmap()); |
@@ -643,7 +643,7 @@ void DelegatedFrameHost::PrepareBitmapCopyOutputResult( |
} |
if (color_type == kN32_SkColorType) { |
DCHECK_EQ(scaled_bitmap.colorType(), kN32_SkColorType); |
- callback.Run(true, scaled_bitmap); |
+ callback.Run(true, scaled_bitmap, READBACK_SUCCESS); |
return; |
} |
DCHECK_EQ(color_type, kAlpha_8_SkColorType); |
@@ -655,7 +655,8 @@ void DelegatedFrameHost::PrepareBitmapCopyOutputResult( |
bool success = grayscale_bitmap.tryAllocPixels( |
SkImageInfo::MakeA8(scaled_bitmap.width(), scaled_bitmap.height())); |
if (!success) { |
- callback.Run(false, SkBitmap()); |
+ callback.Run( |
+ false, SkBitmap(), content::READBACK_MEMORY_ALLOCATION_FAILURE); |
return; |
} |
SkCanvas canvas(grayscale_bitmap); |
@@ -664,7 +665,7 @@ void DelegatedFrameHost::PrepareBitmapCopyOutputResult( |
skia::AdoptRef(SkLumaColorFilter::Create()); |
paint.setColorFilter(filter.get()); |
canvas.drawBitmap(scaled_bitmap, SkIntToScalar(0), SkIntToScalar(0), &paint); |
- callback.Run(true, grayscale_bitmap); |
+ callback.Run(true, grayscale_bitmap, READBACK_SUCCESS); |
} |
// static |