Index: cc/layers/layer.h |
diff --git a/cc/layers/layer.h b/cc/layers/layer.h |
index dfbbdf7b6f732d3591cc6852cd262b9e2ced25d7..3d39f5b3c841283c9d28e58f0497669b4683dedf 100644 |
--- a/cc/layers/layer.h |
+++ b/cc/layers/layer.h |
@@ -253,9 +253,7 @@ class CC_EXPORT Layer : public base::RefCounted<Layer>, |
draw_properties_.render_target->render_surface()); |
return draw_properties_.render_target; |
} |
- RenderSurface* render_surface() const { |
- return draw_properties_.render_surface.get(); |
- } |
+ RenderSurface* render_surface() const { return render_surface_.get(); } |
int num_unclipped_descendants() const { |
return draw_properties_.num_unclipped_descendants; |
} |
@@ -375,6 +373,11 @@ class CC_EXPORT Layer : public base::RefCounted<Layer>, |
void CreateRenderSurface(); |
void ClearRenderSurface(); |
+ |
+ void SetShouldHaveRenderSurface(bool should_have); |
+ void SetRenderSurfaceActive(bool active); |
+ bool ShouldHaveRenderSurface() { return should_have_render_surface_; } |
+ |
void ClearRenderSurfaceLayerList(); |
// The contents scale converts from logical, non-page-scaled pixels to target |
@@ -607,6 +610,7 @@ class CC_EXPORT Layer : public base::RefCounted<Layer>, |
bool draw_checkerboard_for_missing_tiles_ : 1; |
bool force_render_surface_ : 1; |
bool transform_is_invertible_ : 1; |
+ bool should_have_render_surface_ : 1; |
Region non_fast_scrollable_region_; |
Region touch_event_handler_region_; |
gfx::PointF position_; |
@@ -640,6 +644,7 @@ class CC_EXPORT Layer : public base::RefCounted<Layer>, |
DrawProperties<Layer> draw_properties_; |
PaintProperties paint_properties_; |
+ scoped_ptr<RenderSurface> render_surface_; |
DISALLOW_COPY_AND_ASSIGN(Layer); |
}; |