| Index: cc/layers/scrollbar_layer_impl_base.h
|
| diff --git a/cc/layers/scrollbar_layer_impl_base.h b/cc/layers/scrollbar_layer_impl_base.h
|
| index 6bba7495d730bf0020da1e2350712e369abfcb2f..e7a2fc7ff9c56117a15cef8f422c82d2bdaae442 100644
|
| --- a/cc/layers/scrollbar_layer_impl_base.h
|
| +++ b/cc/layers/scrollbar_layer_impl_base.h
|
| @@ -7,6 +7,7 @@
|
|
|
| #include "cc/base/cc_export.h"
|
| #include "cc/input/scrollbar.h"
|
| +#include "cc/layers/layer.h"
|
| #include "cc/layers/layer_impl.h"
|
|
|
| namespace cc {
|
| @@ -15,8 +16,16 @@ class LayerTreeImpl;
|
|
|
| class CC_EXPORT ScrollbarLayerImplBase : public LayerImpl {
|
| public:
|
| - int ScrollLayerId() const { return scroll_layer_id_; }
|
| - void set_scroll_layer_id(int id) { scroll_layer_id_ = id; }
|
| + int ScrollLayerId() const {
|
| + return scroll_layer_ ? scroll_layer_->id() : Layer::INVALID_ID;
|
| + }
|
| + void ClearScrollLayer() { scroll_layer_ = NULL; }
|
| + void SetScrollLayerById(int id);
|
| + int ClipLayerId() const {
|
| + return clip_layer_ ? clip_layer_->id() : Layer::INVALID_ID;
|
| + }
|
| + void ClearClipLayer() { clip_layer_ = NULL; }
|
| + void SetClipLayerById(int id);
|
|
|
| float current_pos() const { return current_pos_; }
|
| void SetCurrentPos(float current_pos);
|
| @@ -37,6 +46,7 @@ class CC_EXPORT ScrollbarLayerImplBase : public LayerImpl {
|
|
|
| virtual void PushPropertiesTo(LayerImpl* layer) OVERRIDE;
|
| virtual ScrollbarLayerImplBase* ToScrollbarLayer() OVERRIDE;
|
| + void PushScrollClipPropertiesTo(LayerImpl* layer);
|
|
|
| void SetVisibleToTotalLengthRatio(float ratio);
|
| virtual gfx::Rect ComputeThumbQuadRect() const;
|
| @@ -46,12 +56,15 @@ class CC_EXPORT ScrollbarLayerImplBase : public LayerImpl {
|
| }
|
| void SetThumbThicknessScaleFactor(float thumb_thickness_scale_factor);
|
|
|
| + void ScrollbarParametersDidChange();
|
| +
|
| protected:
|
| ScrollbarLayerImplBase(LayerTreeImpl* tree_impl,
|
| int id,
|
| ScrollbarOrientation orientation,
|
| - bool is_left_side_vertical_scrollbar);
|
| - virtual ~ScrollbarLayerImplBase() {}
|
| + bool is_left_side_vertical_scrollbar,
|
| + bool is_overlay);
|
| + virtual ~ScrollbarLayerImplBase();
|
|
|
| gfx::Rect ScrollbarLayerRectToContentRect(const gfx::RectF& layer_rect) const;
|
|
|
| @@ -69,7 +82,8 @@ class CC_EXPORT ScrollbarLayerImplBase : public LayerImpl {
|
| virtual bool IsThumbResizable() const = 0;
|
|
|
| private:
|
| - int scroll_layer_id_;
|
| + LayerImpl* scroll_layer_;
|
| + LayerImpl* clip_layer_;
|
| bool is_overlay_scrollbar_;
|
|
|
| float thumb_thickness_scale_factor_;
|
|
|