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

Unified Diff: cc/layers/painted_scrollbar_layer_impl.cc

Issue 935333002: Update from https://crrev.com/316786 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 10 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/layers/painted_scrollbar_layer_impl.h ('k') | cc/layers/painted_scrollbar_layer_impl_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/layers/painted_scrollbar_layer_impl.cc
diff --git a/cc/layers/painted_scrollbar_layer_impl.cc b/cc/layers/painted_scrollbar_layer_impl.cc
index 068d42f2a5f626b255cb5c9c5b058a41f68bc64c..b05d51e500956620333a0fe5659caf05caab39cb 100644
--- a/cc/layers/painted_scrollbar_layer_impl.cc
+++ b/cc/layers/painted_scrollbar_layer_impl.cc
@@ -32,6 +32,7 @@ PaintedScrollbarLayerImpl::PaintedScrollbarLayerImpl(
: ScrollbarLayerImplBase(tree_impl, id, orientation, false, false),
track_ui_resource_id_(0),
thumb_ui_resource_id_(0),
+ internal_contents_scale_(1.f),
thumb_thickness_(0),
thumb_length_(0),
track_start_(0),
@@ -51,6 +52,9 @@ void PaintedScrollbarLayerImpl::PushPropertiesTo(LayerImpl* layer) {
PaintedScrollbarLayerImpl* scrollbar_layer =
static_cast<PaintedScrollbarLayerImpl*>(layer);
+ scrollbar_layer->set_internal_contents_scale_and_bounds(
+ internal_contents_scale_, internal_content_bounds_);
+
scrollbar_layer->SetThumbThickness(thumb_thickness_);
scrollbar_layer->SetThumbLength(thumb_length_);
scrollbar_layer->SetTrackStart(track_start_);
@@ -68,26 +72,28 @@ bool PaintedScrollbarLayerImpl::WillDraw(DrawMode draw_mode,
void PaintedScrollbarLayerImpl::AppendQuads(
RenderPass* render_pass,
- const Occlusion& occlusion_in_content_space,
AppendQuadsData* append_quads_data) {
bool premultipled_alpha = true;
bool flipped = false;
bool nearest_neighbor = false;
gfx::PointF uv_top_left(0.f, 0.f);
gfx::PointF uv_bottom_right(1.f, 1.f);
- gfx::Rect bounds_rect(bounds());
- gfx::Rect content_bounds_rect(content_bounds());
SharedQuadState* shared_quad_state =
render_pass->CreateAndAppendSharedQuadState();
- PopulateSharedQuadState(shared_quad_state);
+ PopulateScaledSharedQuadState(shared_quad_state, internal_contents_scale_);
- AppendDebugBorderQuad(
- render_pass, content_bounds(), shared_quad_state, append_quads_data);
+ AppendDebugBorderQuad(render_pass, internal_content_bounds_,
+ shared_quad_state, append_quads_data);
gfx::Rect thumb_quad_rect = ComputeThumbQuadRect();
+ gfx::Rect scaled_thumb_quad_rect =
+ gfx::ScaleToEnclosingRect(thumb_quad_rect, internal_contents_scale_);
gfx::Rect visible_thumb_quad_rect =
- occlusion_in_content_space.GetUnoccludedContentRect(thumb_quad_rect);
+ draw_properties().occlusion_in_content_space.GetUnoccludedContentRect(
+ thumb_quad_rect);
+ gfx::Rect scaled_visible_thumb_quad_rect = gfx::ScaleToEnclosingRect(
+ visible_thumb_quad_rect, internal_contents_scale_);
ResourceProvider::ResourceId thumb_resource_id =
layer_tree_impl()->ResourceIdForUIResource(thumb_ui_resource_id_);
@@ -99,40 +105,29 @@ void PaintedScrollbarLayerImpl::AppendQuads(
const float opacity[] = {1.0f, 1.0f, 1.0f, 1.0f};
TextureDrawQuad* quad =
render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
- quad->SetNew(shared_quad_state,
- thumb_quad_rect,
- opaque_rect,
- visible_thumb_quad_rect,
- thumb_resource_id,
- premultipled_alpha,
- uv_top_left,
- uv_bottom_right,
- SK_ColorTRANSPARENT,
- opacity,
- flipped,
- nearest_neighbor);
+ quad->SetNew(shared_quad_state, scaled_thumb_quad_rect, opaque_rect,
+ scaled_visible_thumb_quad_rect, thumb_resource_id,
+ premultipled_alpha, uv_top_left, uv_bottom_right,
+ SK_ColorTRANSPARENT, opacity, flipped, nearest_neighbor);
}
- gfx::Rect track_quad_rect = content_bounds_rect;
+ gfx::Rect track_quad_rect(bounds());
+ gfx::Rect scaled_track_quad_rect(internal_content_bounds_);
gfx::Rect visible_track_quad_rect =
- occlusion_in_content_space.GetUnoccludedContentRect(track_quad_rect);
+ draw_properties().occlusion_in_content_space.GetUnoccludedContentRect(
+ track_quad_rect);
+ gfx::Rect scaled_visible_track_quad_rect = gfx::ScaleToEnclosingRect(
+ visible_track_quad_rect, internal_contents_scale_);
if (track_resource_id && !visible_track_quad_rect.IsEmpty()) {
- gfx::Rect opaque_rect(contents_opaque() ? track_quad_rect : gfx::Rect());
+ gfx::Rect opaque_rect(contents_opaque() ? scaled_track_quad_rect
+ : gfx::Rect());
const float opacity[] = {1.0f, 1.0f, 1.0f, 1.0f};
TextureDrawQuad* quad =
render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
- quad->SetNew(shared_quad_state,
- track_quad_rect,
- opaque_rect,
- visible_track_quad_rect,
- track_resource_id,
- premultipled_alpha,
- uv_top_left,
- uv_bottom_right,
- SK_ColorTRANSPARENT,
- opacity,
- flipped,
- nearest_neighbor);
+ quad->SetNew(shared_quad_state, scaled_track_quad_rect, opaque_rect,
+ scaled_visible_track_quad_rect, track_resource_id,
+ premultipled_alpha, uv_top_left, uv_bottom_right,
+ SK_ColorTRANSPARENT, opacity, flipped, nearest_neighbor);
}
}
« no previous file with comments | « cc/layers/painted_scrollbar_layer_impl.h ('k') | cc/layers/painted_scrollbar_layer_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698