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

Unified Diff: cc/blink/web_scrollbar_layer_impl.cc

Issue 2743653003: Revert of Remove indirection: setup scrollbar scroll layers in the scrollbar constructor (Closed)
Patch Set: Created 3 years, 9 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/blink/web_scrollbar_layer_impl.h ('k') | cc/layers/painted_overlay_scrollbar_layer.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/blink/web_scrollbar_layer_impl.cc
diff --git a/cc/blink/web_scrollbar_layer_impl.cc b/cc/blink/web_scrollbar_layer_impl.cc
index 4ced75af721953faf294ae090859bdb83383f34f..b6a759c51471a71433c6a424f18107ad89a7f368 100644
--- a/cc/blink/web_scrollbar_layer_impl.cc
+++ b/cc/blink/web_scrollbar_layer_impl.cc
@@ -34,35 +34,35 @@
WebScrollbarLayerImpl::WebScrollbarLayerImpl(
std::unique_ptr<blink::WebScrollbar> scrollbar,
blink::WebScrollbarThemePainter painter,
+ std::unique_ptr<blink::WebScrollbarThemeGeometry> geometry)
+ : layer_(new WebLayerImpl(PaintedScrollbarLayer::Create(
+ base::MakeUnique<ScrollbarImpl>(std::move(scrollbar),
+ painter,
+ std::move(geometry)),
+ 0))) {}
+
+WebScrollbarLayerImpl::WebScrollbarLayerImpl(
+ std::unique_ptr<blink::WebScrollbar> scrollbar,
+ blink::WebScrollbarThemePainter painter,
std::unique_ptr<blink::WebScrollbarThemeGeometry> geometry,
- bool is_overlay,
- blink::WebLayer* scroll_layer)
- : layer_(
- is_overlay
- ? new WebLayerImpl(PaintedOverlayScrollbarLayer::Create(
- base::MakeUnique<ScrollbarImpl>(std::move(scrollbar),
- painter,
- std::move(geometry)),
- static_cast<WebLayerImpl*>(scroll_layer)->layer()->id()))
- : new WebLayerImpl(PaintedScrollbarLayer::Create(
- base::MakeUnique<ScrollbarImpl>(std::move(scrollbar),
- painter,
- std::move(geometry)),
- static_cast<WebLayerImpl*>(scroll_layer)->layer()->id()))) {
-}
+ bool)
+ : layer_(new WebLayerImpl(PaintedOverlayScrollbarLayer::Create(
+ base::MakeUnique<ScrollbarImpl>(std::move(scrollbar),
+ painter,
+ std::move(geometry)),
+ 0))) {}
WebScrollbarLayerImpl::WebScrollbarLayerImpl(
blink::WebScrollbar::Orientation orientation,
int thumb_thickness,
int track_start,
- bool is_left_side_vertical_scrollbar,
- blink::WebLayer* scroll_layer)
- : layer_(new WebLayerImpl(SolidColorScrollbarLayer::Create(
- ConvertOrientation(orientation),
- thumb_thickness,
- track_start,
- is_left_side_vertical_scrollbar,
- static_cast<WebLayerImpl*>(scroll_layer)->layer()->id()))) {}
+ bool is_left_side_vertical_scrollbar)
+ : layer_(new WebLayerImpl(
+ SolidColorScrollbarLayer::Create(ConvertOrientation(orientation),
+ thumb_thickness,
+ track_start,
+ is_left_side_vertical_scrollbar,
+ 0))) {}
WebScrollbarLayerImpl::~WebScrollbarLayerImpl() {
}
@@ -71,4 +71,11 @@
return layer_.get();
}
+void WebScrollbarLayerImpl::setScrollLayer(blink::WebLayer* layer) {
+ cc::Layer* scroll_layer =
+ layer ? static_cast<WebLayerImpl*>(layer)->layer() : 0;
+ layer_->layer()->ToScrollbarLayer()->SetScrollLayer(
+ scroll_layer ? scroll_layer->id() : cc::Layer::INVALID_ID);
+}
+
} // namespace cc_blink
« no previous file with comments | « cc/blink/web_scrollbar_layer_impl.h ('k') | cc/layers/painted_overlay_scrollbar_layer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698