Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(189)

Side by Side Diff: cc/layers/painted_scrollbar_layer_impl.cc

Issue 576173003: cc: Move UnoccludedContentRect to Occlusion. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/painted_scrollbar_layer_impl.h" 5 #include "cc/layers/painted_scrollbar_layer_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "cc/animation/scrollbar_animation_controller.h" 9 #include "cc/animation/scrollbar_animation_controller.h"
10 #include "cc/layers/layer.h" 10 #include "cc/layers/layer.h"
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 gfx::Rect content_bounds_rect(content_bounds()); 80 gfx::Rect content_bounds_rect(content_bounds());
81 81
82 SharedQuadState* shared_quad_state = 82 SharedQuadState* shared_quad_state =
83 render_pass->CreateAndAppendSharedQuadState(); 83 render_pass->CreateAndAppendSharedQuadState();
84 PopulateSharedQuadState(shared_quad_state); 84 PopulateSharedQuadState(shared_quad_state);
85 85
86 AppendDebugBorderQuad( 86 AppendDebugBorderQuad(
87 render_pass, content_bounds(), shared_quad_state, append_quads_data); 87 render_pass, content_bounds(), shared_quad_state, append_quads_data);
88 88
89 gfx::Rect thumb_quad_rect = ComputeThumbQuadRect(); 89 gfx::Rect thumb_quad_rect = ComputeThumbQuadRect();
90 gfx::Rect visible_thumb_quad_rect = occlusion_tracker.UnoccludedContentRect( 90 Occlusion occlusion =
91 thumb_quad_rect, draw_transform()); 91 occlusion_tracker.GetCurrentOcclusionForLayer(draw_transform());
92 gfx::Rect visible_thumb_quad_rect =
93 occlusion.GetUnoccludedContentRect(thumb_quad_rect);
92 94
93 ResourceProvider::ResourceId thumb_resource_id = 95 ResourceProvider::ResourceId thumb_resource_id =
94 layer_tree_impl()->ResourceIdForUIResource(thumb_ui_resource_id_); 96 layer_tree_impl()->ResourceIdForUIResource(thumb_ui_resource_id_);
95 ResourceProvider::ResourceId track_resource_id = 97 ResourceProvider::ResourceId track_resource_id =
96 layer_tree_impl()->ResourceIdForUIResource(track_ui_resource_id_); 98 layer_tree_impl()->ResourceIdForUIResource(track_ui_resource_id_);
97 99
98 if (thumb_resource_id && !visible_thumb_quad_rect.IsEmpty()) { 100 if (thumb_resource_id && !visible_thumb_quad_rect.IsEmpty()) {
99 gfx::Rect opaque_rect; 101 gfx::Rect opaque_rect;
100 const float opacity[] = {1.0f, 1.0f, 1.0f, 1.0f}; 102 const float opacity[] = {1.0f, 1.0f, 1.0f, 1.0f};
101 TextureDrawQuad* quad = 103 TextureDrawQuad* quad =
102 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); 104 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
103 quad->SetNew(shared_quad_state, 105 quad->SetNew(shared_quad_state,
104 thumb_quad_rect, 106 thumb_quad_rect,
105 opaque_rect, 107 opaque_rect,
106 visible_thumb_quad_rect, 108 visible_thumb_quad_rect,
107 thumb_resource_id, 109 thumb_resource_id,
108 premultipled_alpha, 110 premultipled_alpha,
109 uv_top_left, 111 uv_top_left,
110 uv_bottom_right, 112 uv_bottom_right,
111 SK_ColorTRANSPARENT, 113 SK_ColorTRANSPARENT,
112 opacity, 114 opacity,
113 flipped); 115 flipped);
114 } 116 }
115 117
116 gfx::Rect track_quad_rect = content_bounds_rect; 118 gfx::Rect track_quad_rect = content_bounds_rect;
117 gfx::Rect visible_track_quad_rect = occlusion_tracker.UnoccludedContentRect( 119 gfx::Rect visible_track_quad_rect =
118 track_quad_rect, draw_transform()); 120 occlusion.GetUnoccludedContentRect(track_quad_rect);
119 if (track_resource_id && !visible_track_quad_rect.IsEmpty()) { 121 if (track_resource_id && !visible_track_quad_rect.IsEmpty()) {
120 gfx::Rect opaque_rect(contents_opaque() ? track_quad_rect : gfx::Rect()); 122 gfx::Rect opaque_rect(contents_opaque() ? track_quad_rect : gfx::Rect());
121 const float opacity[] = {1.0f, 1.0f, 1.0f, 1.0f}; 123 const float opacity[] = {1.0f, 1.0f, 1.0f, 1.0f};
122 TextureDrawQuad* quad = 124 TextureDrawQuad* quad =
123 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>(); 125 render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
124 quad->SetNew(shared_quad_state, 126 quad->SetNew(shared_quad_state,
125 track_quad_rect, 127 track_quad_rect,
126 opaque_rect, 128 opaque_rect,
127 visible_track_quad_rect, 129 visible_track_quad_rect,
128 track_resource_id, 130 track_resource_id,
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
181 183
182 bool PaintedScrollbarLayerImpl::IsThumbResizable() const { 184 bool PaintedScrollbarLayerImpl::IsThumbResizable() const {
183 return false; 185 return false;
184 } 186 }
185 187
186 const char* PaintedScrollbarLayerImpl::LayerTypeAsString() const { 188 const char* PaintedScrollbarLayerImpl::LayerTypeAsString() const {
187 return "cc::PaintedScrollbarLayerImpl"; 189 return "cc::PaintedScrollbarLayerImpl";
188 } 190 }
189 191
190 } // namespace cc 192 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698