| Index: cc/resources/tile_task_worker_pool.cc
|
| diff --git a/cc/resources/tile_task_worker_pool.cc b/cc/resources/tile_task_worker_pool.cc
|
| index 130dc06daef53c5e12c9920bf228cb8f8a6c57cc..085406e0a5fb3b639e38231ba6bdac1b0e6641ed 100644
|
| --- a/cc/resources/tile_task_worker_pool.cc
|
| +++ b/cc/resources/tile_task_worker_pool.cc
|
| @@ -160,7 +160,9 @@ void TileTaskWorkerPool::PlaybackToMemory(void* memory,
|
| int stride,
|
| const RasterSource* raster_source,
|
| const gfx::Rect& rect,
|
| - float scale) {
|
| + const gfx::Vector2d& raster_offset,
|
| + float scale,
|
| + bool partial_update) {
|
| DCHECK(IsSupportedPlaybackToMemoryFormat(format)) << format;
|
|
|
| // Uses kPremul_SkAlphaType since the result is not known to be opaque.
|
| @@ -184,14 +186,16 @@ void TileTaskWorkerPool::PlaybackToMemory(void* memory,
|
| skia::RefPtr<SkSurface> surface = skia::AdoptRef(
|
| SkSurface::NewRasterDirect(info, memory, stride, &surface_props));
|
| skia::RefPtr<SkCanvas> canvas = skia::SharePtr(surface->getCanvas());
|
| - raster_source->PlaybackToCanvas(canvas.get(), rect, scale);
|
| + canvas->translate(raster_offset.x(), raster_offset.y());
|
| + raster_source->PlaybackToCanvas(canvas.get(), rect, scale, partial_update);
|
| return;
|
| }
|
|
|
| skia::RefPtr<SkSurface> surface =
|
| skia::AdoptRef(SkSurface::NewRaster(info, &surface_props));
|
| skia::RefPtr<SkCanvas> canvas = skia::SharePtr(surface->getCanvas());
|
| - raster_source->PlaybackToCanvas(canvas.get(), rect, scale);
|
| + canvas->translate(raster_offset.x(), raster_offset.y());
|
| + raster_source->PlaybackToCanvas(canvas.get(), rect, scale, partial_update);
|
|
|
| SkImageInfo dst_info = info;
|
| dst_info.fColorType = buffer_color_type;
|
|
|