| OLD | NEW |
| 1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CC_LAYERS_LAYER_IMPL_H_ | 5 #ifndef CC_LAYERS_LAYER_IMPL_H_ |
| 6 #define CC_LAYERS_LAYER_IMPL_H_ | 6 #define CC_LAYERS_LAYER_IMPL_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 | 10 |
| (...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 262 | 262 |
| 263 // The client should be responsible for setting bounds, content bounds and | 263 // The client should be responsible for setting bounds, content bounds and |
| 264 // contents scale to appropriate values. LayerImpl doesn't calculate any of | 264 // contents scale to appropriate values. LayerImpl doesn't calculate any of |
| 265 // them from the other values. | 265 // them from the other values. |
| 266 | 266 |
| 267 void SetBounds(const gfx::Size& bounds); | 267 void SetBounds(const gfx::Size& bounds); |
| 268 gfx::Size bounds() const; | 268 gfx::Size bounds() const; |
| 269 // Like bounds() but doesn't snap to int. Lossy on giant pages (e.g. millions | 269 // Like bounds() but doesn't snap to int. Lossy on giant pages (e.g. millions |
| 270 // of pixels) due to use of single precision float. | 270 // of pixels) due to use of single precision float. |
| 271 gfx::SizeF BoundsForScrolling() const; | 271 gfx::SizeF BoundsForScrolling() const; |
| 272 void SetBoundsDelta(const gfx::Vector2dF& bounds_delta); | 272 |
| 273 gfx::Vector2dF bounds_delta() const { return bounds_delta_; } | 273 // Viewport bounds delta are used for viewport layers and accounts for changes |
| 274 // in the viewport layers from browser controls and page scale factors. These |
| 275 // deltas are only set on the active tree. |
| 276 void SetViewportBoundsDelta(const gfx::Vector2dF& bounds_delta); |
| 277 gfx::Vector2dF ViewportBoundsDelta() const; |
| 274 | 278 |
| 275 void SetCurrentScrollOffset(const gfx::ScrollOffset& scroll_offset); | 279 void SetCurrentScrollOffset(const gfx::ScrollOffset& scroll_offset); |
| 276 gfx::ScrollOffset CurrentScrollOffset() const; | 280 gfx::ScrollOffset CurrentScrollOffset() const; |
| 277 | 281 |
| 278 gfx::ScrollOffset MaxScrollOffset() const; | 282 gfx::ScrollOffset MaxScrollOffset() const; |
| 279 gfx::ScrollOffset ClampScrollOffsetToLimits(gfx::ScrollOffset offset) const; | 283 gfx::ScrollOffset ClampScrollOffsetToLimits(gfx::ScrollOffset offset) const; |
| 280 gfx::Vector2dF ClampScrollToMaxScrollOffset(); | 284 gfx::Vector2dF ClampScrollToMaxScrollOffset(); |
| 281 | 285 |
| 282 // Returns the delta of the scroll that was outside of the bounds of the | 286 // Returns the delta of the scroll that was outside of the bounds of the |
| 283 // initial scroll | 287 // initial scroll |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 464 | 468 |
| 465 void ValidateQuadResourcesInternal(DrawQuad* quad) const; | 469 void ValidateQuadResourcesInternal(DrawQuad* quad) const; |
| 466 | 470 |
| 467 virtual const char* LayerTypeAsString() const; | 471 virtual const char* LayerTypeAsString() const; |
| 468 | 472 |
| 469 int layer_id_; | 473 int layer_id_; |
| 470 LayerTreeImpl* layer_tree_impl_; | 474 LayerTreeImpl* layer_tree_impl_; |
| 471 | 475 |
| 472 std::unique_ptr<LayerImplTestProperties> test_properties_; | 476 std::unique_ptr<LayerImplTestProperties> test_properties_; |
| 473 | 477 |
| 474 gfx::Vector2dF bounds_delta_; | |
| 475 | |
| 476 // Properties synchronized from the associated Layer. | 478 // Properties synchronized from the associated Layer. |
| 477 gfx::Size bounds_; | 479 gfx::Size bounds_; |
| 478 int scroll_clip_layer_id_; | 480 int scroll_clip_layer_id_; |
| 479 | 481 |
| 480 gfx::Vector2dF offset_to_transform_parent_; | 482 gfx::Vector2dF offset_to_transform_parent_; |
| 481 uint32_t main_thread_scrolling_reasons_; | 483 uint32_t main_thread_scrolling_reasons_; |
| 482 | 484 |
| 483 bool user_scrollable_horizontal_ : 1; | 485 bool user_scrollable_horizontal_ : 1; |
| 484 bool user_scrollable_vertical_ : 1; | 486 bool user_scrollable_vertical_ : 1; |
| 485 bool should_flatten_transform_from_property_tree_ : 1; | 487 bool should_flatten_transform_from_property_tree_ : 1; |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 553 // the overlay scrollbars. It's set on the scroll layer (not the scrollbar | 555 // the overlay scrollbars. It's set on the scroll layer (not the scrollbar |
| 554 // layers) and consumed by LayerTreeImpl::PushPropertiesTo during activation. | 556 // layers) and consumed by LayerTreeImpl::PushPropertiesTo during activation. |
| 555 bool needs_show_scrollbars_ : 1; | 557 bool needs_show_scrollbars_ : 1; |
| 556 | 558 |
| 557 DISALLOW_COPY_AND_ASSIGN(LayerImpl); | 559 DISALLOW_COPY_AND_ASSIGN(LayerImpl); |
| 558 }; | 560 }; |
| 559 | 561 |
| 560 } // namespace cc | 562 } // namespace cc |
| 561 | 563 |
| 562 #endif // CC_LAYERS_LAYER_IMPL_H_ | 564 #endif // CC_LAYERS_LAYER_IMPL_H_ |
| OLD | NEW |