Chromium Code Reviews| Index: cc/layers/picture_layer_impl.cc |
| diff --git a/cc/layers/picture_layer_impl.cc b/cc/layers/picture_layer_impl.cc |
| index 861bf074f81d76c1ca79e0b1001e3c223429db82..2aeacac99fce3b6226ce9063b8f8ded4b96faead 100644 |
| --- a/cc/layers/picture_layer_impl.cc |
| +++ b/cc/layers/picture_layer_impl.cc |
| @@ -25,7 +25,7 @@ |
| #include "cc/quads/tile_draw_quad.h" |
| #include "cc/resources/tile_manager.h" |
| #include "cc/trees/layer_tree_impl.h" |
| -#include "cc/trees/occlusion_tracker.h" |
| +#include "cc/trees/occlusion.h" |
| #include "ui/gfx/quad_f.h" |
| #include "ui/gfx/rect_conversions.h" |
| #include "ui/gfx/size_conversions.h" |
| @@ -150,10 +150,9 @@ void PictureLayerImpl::PushPropertiesTo(LayerImpl* base_layer) { |
| needs_push_properties_ = true; |
| } |
| -void PictureLayerImpl::AppendQuads( |
| - RenderPass* render_pass, |
| - const OcclusionTracker<LayerImpl>& occlusion_tracker, |
| - AppendQuadsData* append_quads_data) { |
| +void PictureLayerImpl::AppendQuads(RenderPass* render_pass, |
| + const Occlusion& occlusion_in_content_space, |
| + AppendQuadsData* append_quads_data) { |
| DCHECK(!needs_post_commit_initialization_); |
| SharedQuadState* shared_quad_state = |
| @@ -165,14 +164,12 @@ void PictureLayerImpl::AppendQuads( |
| AppendDebugBorderQuad( |
| render_pass, content_bounds(), shared_quad_state, append_quads_data); |
| - SolidColorLayerImpl::AppendSolidQuads( |
| - render_pass, |
| - occlusion_tracker, |
| - shared_quad_state, |
| - content_bounds(), |
| - draw_properties().target_space_transform, |
|
vmpstr
2014/10/07 06:44:35
Transform here went away.
|
| - pile_->solid_color(), |
| - append_quads_data); |
| + SolidColorLayerImpl::AppendSolidQuads(render_pass, |
| + occlusion_in_content_space, |
| + shared_quad_state, |
| + content_bounds(), |
| + pile_->solid_color(), |
| + append_quads_data); |
| return; |
| } |
| @@ -186,8 +183,9 @@ void PictureLayerImpl::AppendQuads( |
| gfx::ScaleToEnclosingRect(visible_content_rect(), max_contents_scale); |
| scaled_visible_content_rect.Intersect(gfx::Rect(scaled_content_bounds)); |
| - Occlusion occlusion = |
| - occlusion_tracker.GetCurrentOcclusionForLayer(scaled_draw_transform); |
| + Occlusion scaled_occlusion = |
| + occlusion_in_content_space.GetOcclusionWithGivenDrawTransform( |
| + scaled_draw_transform); |
| shared_quad_state->SetAll(scaled_draw_transform, |
| scaled_content_bounds, |
| @@ -210,7 +208,7 @@ void PictureLayerImpl::AppendQuads( |
| gfx::Rect geometry_rect = scaled_visible_content_rect; |
| gfx::Rect opaque_rect = contents_opaque() ? geometry_rect : gfx::Rect(); |
| gfx::Rect visible_geometry_rect = |
| - occlusion.GetUnoccludedContentRect(geometry_rect); |
| + scaled_occlusion.GetUnoccludedContentRect(geometry_rect); |
| if (visible_geometry_rect.IsEmpty()) |
| return; |
| @@ -305,7 +303,7 @@ void PictureLayerImpl::AppendQuads( |
| gfx::Rect geometry_rect = iter.geometry_rect(); |
| gfx::Rect opaque_rect = contents_opaque() ? geometry_rect : gfx::Rect(); |
| gfx::Rect visible_geometry_rect = |
| - occlusion.GetUnoccludedContentRect(geometry_rect); |
| + scaled_occlusion.GetUnoccludedContentRect(geometry_rect); |
| if (visible_geometry_rect.IsEmpty()) |
| continue; |