OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "cc/layers/surface_layer_impl.h" | 5 #include "cc/layers/surface_layer_impl.h" |
6 | 6 |
7 #include "base/debug/trace_event_argument.h" | 7 #include "base/debug/trace_event_argument.h" |
8 #include "cc/debug/debug_colors.h" | 8 #include "cc/debug/debug_colors.h" |
9 #include "cc/quads/surface_draw_quad.h" | 9 #include "cc/quads/surface_draw_quad.h" |
10 #include "cc/trees/occlusion_tracker.h" | 10 #include "cc/trees/occlusion_tracker.h" |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
45 render_pass->CreateAndAppendSharedQuadState(); | 45 render_pass->CreateAndAppendSharedQuadState(); |
46 PopulateSharedQuadState(shared_quad_state); | 46 PopulateSharedQuadState(shared_quad_state); |
47 | 47 |
48 AppendDebugBorderQuad( | 48 AppendDebugBorderQuad( |
49 render_pass, content_bounds(), shared_quad_state, append_quads_data); | 49 render_pass, content_bounds(), shared_quad_state, append_quads_data); |
50 | 50 |
51 if (surface_id_.is_null()) | 51 if (surface_id_.is_null()) |
52 return; | 52 return; |
53 | 53 |
54 gfx::Rect quad_rect(content_bounds()); | 54 gfx::Rect quad_rect(content_bounds()); |
55 gfx::Rect visible_quad_rect = occlusion_tracker.UnoccludedContentRect( | 55 gfx::Rect visible_quad_rect = |
56 quad_rect, draw_properties().target_space_transform); | 56 occlusion_tracker.GetCurrentOcclusionForLayer( |
| 57 draw_properties().target_space_transform) |
| 58 .GetUnoccludedContentRect(quad_rect); |
57 if (visible_quad_rect.IsEmpty()) | 59 if (visible_quad_rect.IsEmpty()) |
58 return; | 60 return; |
59 SurfaceDrawQuad* quad = | 61 SurfaceDrawQuad* quad = |
60 render_pass->CreateAndAppendDrawQuad<SurfaceDrawQuad>(); | 62 render_pass->CreateAndAppendDrawQuad<SurfaceDrawQuad>(); |
61 quad->SetNew(shared_quad_state, quad_rect, visible_quad_rect, surface_id_); | 63 quad->SetNew(shared_quad_state, quad_rect, visible_quad_rect, surface_id_); |
62 } | 64 } |
63 | 65 |
64 void SurfaceLayerImpl::GetDebugBorderProperties(SkColor* color, | 66 void SurfaceLayerImpl::GetDebugBorderProperties(SkColor* color, |
65 float* width) const { | 67 float* width) const { |
66 *color = DebugColors::SurfaceLayerBorderColor(); | 68 *color = DebugColors::SurfaceLayerBorderColor(); |
67 *width = DebugColors::SurfaceLayerBorderWidth(layer_tree_impl()); | 69 *width = DebugColors::SurfaceLayerBorderWidth(layer_tree_impl()); |
68 } | 70 } |
69 | 71 |
70 void SurfaceLayerImpl::AsValueInto(base::debug::TracedValue* dict) const { | 72 void SurfaceLayerImpl::AsValueInto(base::debug::TracedValue* dict) const { |
71 LayerImpl::AsValueInto(dict); | 73 LayerImpl::AsValueInto(dict); |
72 dict->SetInteger("surface_id", surface_id_.id); | 74 dict->SetInteger("surface_id", surface_id_.id); |
73 } | 75 } |
74 | 76 |
75 const char* SurfaceLayerImpl::LayerTypeAsString() const { | 77 const char* SurfaceLayerImpl::LayerTypeAsString() const { |
76 return "cc::SurfaceLayerImpl"; | 78 return "cc::SurfaceLayerImpl"; |
77 } | 79 } |
78 | 80 |
79 } // namespace cc | 81 } // namespace cc |
OLD | NEW |