Index: cc/layers/layer_impl.h |
diff --git a/cc/layers/layer_impl.h b/cc/layers/layer_impl.h |
index 9d3951b78afe49aeb46c6a24d90f877bad5a446c..e801b49249de57e2cfea804f148243763fd2f40e 100644 |
--- a/cc/layers/layer_impl.h |
+++ b/cc/layers/layer_impl.h |
@@ -356,8 +356,10 @@ class CC_EXPORT LayerImpl : LayerAnimationValueObserver { |
gfx::Vector2dF scroll_delta); |
gfx::Vector2d scroll_offset() const { return scroll_offset_; } |
- void SetMaxScrollOffset(gfx::Vector2d max_scroll_offset); |
- gfx::Vector2d max_scroll_offset() const { return max_scroll_offset_; } |
+ gfx::Vector2d MaxScrollOffset() const; |
+ gfx::Vector2dF ClampScrollToMaxScrollOffset(); |
+ void SetScrollbarPosition(ScrollbarLayerImplBase* scrollbar_layer, |
+ LayerImpl* scrollbar_clip_layer) const; |
void SetScrollDelta(gfx::Vector2dF scroll_delta); |
gfx::Vector2dF ScrollDelta() const; |
@@ -371,8 +373,8 @@ class CC_EXPORT LayerImpl : LayerAnimationValueObserver { |
// initial scroll |
gfx::Vector2dF ScrollBy(gfx::Vector2dF scroll); |
- void SetScrollable(bool scrollable) { scrollable_ = scrollable; } |
- bool scrollable() const { return scrollable_; } |
+ void SetScrollable(int clip_layer_id); |
+ bool scrollable() const { return clip_layer_; } |
void set_user_scrollable_horizontal(bool scrollable) { |
user_scrollable_horizontal_ = scrollable; |
@@ -464,15 +466,14 @@ class CC_EXPORT LayerImpl : LayerAnimationValueObserver { |
return scrollbar_animation_controller_.get(); |
} |
- 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_; |
- } |
+ 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 NotifyScrollbars(); |
enne (OOO)
2013/11/14 22:59:01
Can you name this more clearly? Maybe even just Sc
wjmaclean
2013/12/24 21:03:49
Done.
I needs (I think) to remain public until Cl
|
+ int clip_height() { return clip_layer_ ? clip_layer_->bounds().height() : 0; } |
gfx::Rect LayerRectToContentRect(const gfx::RectF& layer_rect) const; |
@@ -514,8 +515,6 @@ class CC_EXPORT LayerImpl : LayerAnimationValueObserver { |
void NoteLayerPropertyChangedForDescendants(); |
private: |
- void UpdateScrollbarPositions(); |
- |
virtual const char* LayerTypeAsString() const; |
// Properties internal to LayerImpl |
@@ -548,7 +547,7 @@ class CC_EXPORT LayerImpl : LayerAnimationValueObserver { |
gfx::Size bounds_; |
gfx::Vector2d scroll_offset_; |
LayerScrollOffsetDelegate* scroll_offset_delegate_; |
- bool scrollable_; |
+ LayerImpl* clip_layer_; |
bool should_scroll_on_main_thread_; |
bool have_wheel_event_handlers_; |
bool user_scrollable_horizontal_; |
@@ -588,7 +587,7 @@ class CC_EXPORT LayerImpl : LayerAnimationValueObserver { |
gfx::Vector2dF scroll_delta_; |
gfx::Vector2d sent_scroll_delta_; |
- gfx::Vector2d max_scroll_offset_; |
+// gfx::Vector2d max_scroll_offset_; |
enne (OOO)
2013/11/14 22:59:01
Remove this line?
wjmaclean
2013/12/24 21:03:49
Done.
|
gfx::Vector2dF last_scroll_offset_; |
// The global depth value of the center of the layer. This value is used |
@@ -617,10 +616,7 @@ class CC_EXPORT LayerImpl : LayerAnimationValueObserver { |
// Manages scrollbars for this layer |
scoped_ptr<ScrollbarAnimationController> scrollbar_animation_controller_; |
- // Weak pointers to this layer's scrollbars, if it has them. Updated during |
- // tree synchronization. |
- ScrollbarLayerImplBase* horizontal_scrollbar_layer_; |
- ScrollbarLayerImplBase* vertical_scrollbar_layer_; |
+ scoped_ptr<ScrollbarSet> scrollbars_; |
ScopedPtrVector<CopyOutputRequest> copy_requests_; |