| Index: cc/layers/layer_impl.h
|
| diff --git a/cc/layers/layer_impl.h b/cc/layers/layer_impl.h
|
| index 7ad2915de4d8d241bc298ab12ce3bdcc04380c7e..75f02ec95dd898d04f68dca62d69e40a23a88802 100644
|
| --- a/cc/layers/layer_impl.h
|
| +++ b/cc/layers/layer_impl.h
|
| @@ -373,10 +373,8 @@
|
| const gfx::Vector2dF& scroll_delta);
|
| gfx::Vector2d scroll_offset() const { return scroll_offset_; }
|
|
|
| - gfx::Vector2d MaxScrollOffset() const;
|
| - gfx::Vector2dF ClampScrollToMaxScrollOffset();
|
| - void SetScrollbarPosition(ScrollbarLayerImplBase* scrollbar_layer,
|
| - LayerImpl* scrollbar_clip_layer) const;
|
| + void SetMaxScrollOffset(gfx::Vector2d max_scroll_offset);
|
| + gfx::Vector2d max_scroll_offset() const { return max_scroll_offset_; }
|
|
|
| void SetScrollDelta(const gfx::Vector2dF& scroll_delta);
|
| gfx::Vector2dF ScrollDelta() const;
|
| @@ -390,8 +388,8 @@
|
| // initial scroll
|
| gfx::Vector2dF ScrollBy(const gfx::Vector2dF& scroll);
|
|
|
| - void SetScrollClipLayer(int scroll_clip_layer_id);
|
| - bool scrollable() const { return !!scroll_clip_layer_; }
|
| + void SetScrollable(bool scrollable) { scrollable_ = scrollable; }
|
| + bool scrollable() const { return scrollable_; }
|
|
|
| void set_user_scrollable_horizontal(bool scrollable) {
|
| user_scrollable_horizontal_ = scrollable;
|
| @@ -481,15 +479,14 @@
|
| return scrollbar_animation_controller_.get();
|
| }
|
|
|
| - typedef std::set<ScrollbarLayerImplBase*> ScrollbarSet;
|
| - ScrollbarSet* scrollbars() { return scrollbars_.get(); }
|
| - void ClearScrollbars();
|
| - void AddScrollbar(ScrollbarLayerImplBase* layer);
|
| - void RemoveScrollbar(ScrollbarLayerImplBase* layer);
|
| - bool HasScrollbar(ScrollbarOrientation orientation) const;
|
| - void ScrollbarParametersDidChange();
|
| - int clip_height() {
|
| - return scroll_clip_layer_ ? scroll_clip_layer_->bounds().height() : 0;
|
| + void SetHorizontalScrollbarLayer(ScrollbarLayerImplBase* scrollbar_layer);
|
| + ScrollbarLayerImplBase* horizontal_scrollbar_layer() {
|
| + return horizontal_scrollbar_layer_;
|
| + }
|
| +
|
| + void SetVerticalScrollbarLayer(ScrollbarLayerImplBase* scrollbar_layer);
|
| + ScrollbarLayerImplBase* vertical_scrollbar_layer() {
|
| + return vertical_scrollbar_layer_;
|
| }
|
|
|
| gfx::Rect LayerRectToContentRect(const gfx::RectF& layer_rect) const;
|
| @@ -547,6 +544,8 @@
|
| private:
|
| void NoteLayerPropertyChangedForDescendantsInternal();
|
|
|
| + void UpdateScrollbarPositions();
|
| +
|
| virtual const char* LayerTypeAsString() const;
|
|
|
| // Properties internal to LayerImpl
|
| @@ -579,7 +578,6 @@
|
| gfx::Size bounds_;
|
| gfx::Vector2d scroll_offset_;
|
| LayerScrollOffsetDelegate* scroll_offset_delegate_;
|
| - LayerImpl* scroll_clip_layer_;
|
| bool scrollable_ : 1;
|
| bool should_scroll_on_main_thread_ : 1;
|
| bool have_wheel_event_handlers_ : 1;
|
| @@ -622,6 +620,7 @@
|
|
|
| gfx::Vector2dF scroll_delta_;
|
| gfx::Vector2d sent_scroll_delta_;
|
| + gfx::Vector2d max_scroll_offset_;
|
| gfx::Vector2dF last_scroll_offset_;
|
|
|
| // The global depth value of the center of the layer. This value is used
|
| @@ -657,7 +656,10 @@
|
| // Manages scrollbars for this layer
|
| scoped_ptr<ScrollbarAnimationController> scrollbar_animation_controller_;
|
|
|
| - scoped_ptr<ScrollbarSet> scrollbars_;
|
| + // Weak pointers to this layer's scrollbars, if it has them. Updated during
|
| + // tree synchronization.
|
| + ScrollbarLayerImplBase* horizontal_scrollbar_layer_;
|
| + ScrollbarLayerImplBase* vertical_scrollbar_layer_;
|
|
|
| ScopedPtrVector<CopyOutputRequest> copy_requests_;
|
|
|
|
|