Index: cc/layers/picture_layer_impl.cc |
diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc |
index e819afd860d412784301915fe1fcbd7ac857aa67..93d658159516549e0164c2e55790fea982a05370 100644 |
--- a/cc/layers/picture_layer_impl.cc |
+++ b/cc/layers/picture_layer_impl.cc |
@@ -331,8 +331,8 @@ void PictureLayerImpl::AppendQuads(RenderPass* render_pass, |
CheckerboardDrawQuad* quad = |
render_pass->CreateAndAppendDrawQuad<CheckerboardDrawQuad>(); |
SkColor color = DebugColors::DefaultCheckerboardColor(); |
- quad->SetNew( |
- shared_quad_state, geometry_rect, visible_geometry_rect, color); |
+ quad->SetNew(shared_quad_state, geometry_rect, visible_geometry_rect, |
+ color, draw_properties().device_scale_factor); |
} else { |
SkColor color = SafeOpaqueBackgroundColor(); |
SolidColorDrawQuad* quad = |
@@ -605,6 +605,15 @@ skia::RefPtr<SkPicture> PictureLayerImpl::GetPicture() { |
return raster_source_->GetFlattenedPicture(); |
} |
+Region PictureLayerImpl::GetInvalidationRegion() { |
+ // |invalidation_| gives the invalidation contained in the source frame, but |
+ // is not cleared after drawing from the layer. However, update_rect() is |
+ // cleared once the invalidation is drawn, which is useful for debugging |
+ // visualizations. This method intersects the two to give a more exact |
+ // representation of what was invalidated that is cleared after drawing. |
+ return IntersectRegions(invalidation_, update_rect()); |
+} |
+ |
scoped_refptr<Tile> PictureLayerImpl::CreateTile( |
float contents_scale, |
const gfx::Rect& content_rect) { |