| Index: cc/layers/painted_scrollbar_layer.cc
|
| diff --git a/cc/layers/painted_scrollbar_layer.cc b/cc/layers/painted_scrollbar_layer.cc
|
| index 6bb76368c485f7fecaccf6630c22661738b1540f..2dda0718fab4fee2f056a7f97f6e85c8e02bcff9 100644
|
| --- a/cc/layers/painted_scrollbar_layer.cc
|
| +++ b/cc/layers/painted_scrollbar_layer.cc
|
| @@ -28,16 +28,17 @@ scoped_ptr<LayerImpl> PaintedScrollbarLayer::CreateLayerImpl(
|
|
|
| scoped_refptr<PaintedScrollbarLayer> PaintedScrollbarLayer::Create(
|
| scoped_ptr<Scrollbar> scrollbar,
|
| - int scroll_layer_id) {
|
| + Layer* scroll_layer) {
|
| return make_scoped_refptr(
|
| - new PaintedScrollbarLayer(scrollbar.Pass(), scroll_layer_id));
|
| + new PaintedScrollbarLayer(scrollbar.Pass(), scroll_layer));
|
| }
|
|
|
| PaintedScrollbarLayer::PaintedScrollbarLayer(
|
| scoped_ptr<Scrollbar> scrollbar,
|
| - int scroll_layer_id)
|
| + Layer* scroll_layer)
|
| : scrollbar_(scrollbar.Pass()),
|
| - scroll_layer_id_(scroll_layer_id),
|
| + scroll_layer_(scroll_layer),
|
| + clip_layer_(NULL),
|
| thumb_thickness_(scrollbar_->ThumbThickness()),
|
| thumb_length_(scrollbar_->ThumbLength()),
|
| is_overlay_(scrollbar_->IsOverlay()),
|
| @@ -49,14 +50,22 @@ PaintedScrollbarLayer::PaintedScrollbarLayer(
|
| PaintedScrollbarLayer::~PaintedScrollbarLayer() {}
|
|
|
| int PaintedScrollbarLayer::ScrollLayerId() const {
|
| - return scroll_layer_id_;
|
| + return scroll_layer_->id();
|
| }
|
|
|
| -void PaintedScrollbarLayer::SetScrollLayerId(int id) {
|
| - if (id == scroll_layer_id_)
|
| +void PaintedScrollbarLayer::SetScrollLayer(scoped_refptr<Layer> layer) {
|
| + if (layer == scroll_layer_)
|
| return;
|
|
|
| - scroll_layer_id_ = id;
|
| + scroll_layer_ = layer;
|
| + SetNeedsFullTreeSync();
|
| +}
|
| +
|
| +void PaintedScrollbarLayer::SetClipLayer(scoped_refptr<Layer> layer) {
|
| + if (layer == clip_layer_)
|
| + return;
|
| +
|
| + clip_layer_ = layer;
|
| SetNeedsFullTreeSync();
|
| }
|
|
|
| @@ -112,6 +121,11 @@ void PaintedScrollbarLayer::PushPropertiesTo(LayerImpl* layer) {
|
| PaintedScrollbarLayerImpl* scrollbar_layer =
|
| static_cast<PaintedScrollbarLayerImpl*>(layer);
|
|
|
| + scrollbar_layer->SetScrollLayerById(scroll_layer_ ? scroll_layer_->id()
|
| + : Layer::INVALID_ID);
|
| + scrollbar_layer->SetClipLayerById(clip_layer_ ? clip_layer_->id()
|
| + : Layer::INVALID_ID);
|
| +
|
| scrollbar_layer->SetThumbThickness(thumb_thickness_);
|
| scrollbar_layer->SetThumbLength(thumb_length_);
|
| if (orientation() == HORIZONTAL) {
|
|
|