Index: cc/resources/gpu_raster_worker_pool.cc |
diff --git a/cc/resources/gpu_raster_worker_pool.cc b/cc/resources/gpu_raster_worker_pool.cc |
index c9139706f81bf9620bc90536936ac7061dabf041..d29855ad5c150c92cf64791e607c50fb14cb7043 100644 |
--- a/cc/resources/gpu_raster_worker_pool.cc |
+++ b/cc/resources/gpu_raster_worker_pool.cc |
@@ -41,15 +41,19 @@ class RasterBufferImpl : public RasterBuffer { |
bool use_distance_field_text = |
use_distance_field_text_ || |
raster_source->ShouldAttemptToUseDistanceFieldText(); |
- SkSurface* sk_surface = lock_.GetSkSurface(use_distance_field_text); |
+ SkSurface* sk_surface = lock_.GetSkSurface(use_distance_field_text, |
+ raster_source->CanUseLCDText()); |
if (!sk_surface) |
return; |
SkPictureRecorder recorder; |
gfx::Size size = resource_->size(); |
+ const int flags = SkPictureRecorder::kComputeSaveLayerInfo_RecordFlag; |
skia::RefPtr<SkCanvas> canvas = |
- skia::SharePtr(recorder.beginRecording(size.width(), size.height())); |
+ skia::SharePtr(recorder.beginRecording(size.width(), size.height(), |
+ NULL, flags)); |
+ |
canvas->save(); |
raster_source->PlaybackToCanvas(canvas.get(), rect, scale); |