OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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_TREES_PROPERTY_TREE_H_ | 5 #ifndef CC_TREES_PROPERTY_TREE_H_ |
6 #define CC_TREES_PROPERTY_TREE_H_ | 6 #define CC_TREES_PROPERTY_TREE_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 404 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
415 bool operator==(const ScrollTree& other) const; | 415 bool operator==(const ScrollTree& other) const; |
416 | 416 |
417 void ToProtobuf(proto::PropertyTree* proto) const; | 417 void ToProtobuf(proto::PropertyTree* proto) const; |
418 void FromProtobuf(const proto::PropertyTree& proto, | 418 void FromProtobuf(const proto::PropertyTree& proto, |
419 std::unordered_map<int, int>* node_id_to_index_map); | 419 std::unordered_map<int, int>* node_id_to_index_map); |
420 | 420 |
421 void clear(); | 421 void clear(); |
422 | 422 |
423 typedef std::unordered_map<int, scoped_refptr<SyncedScrollOffset>> | 423 typedef std::unordered_map<int, scoped_refptr<SyncedScrollOffset>> |
424 ScrollOffsetMap; | 424 ScrollOffsetMap; |
| 425 typedef std::unordered_map<int, bool> ScrollbarsEnabledMap; |
425 | 426 |
426 gfx::ScrollOffset MaxScrollOffset(int scroll_node_id) const; | 427 gfx::ScrollOffset MaxScrollOffset(int scroll_node_id) const; |
427 void OnScrollOffsetAnimated(int layer_id, | 428 void OnScrollOffsetAnimated(int layer_id, |
428 int transform_tree_index, | 429 int transform_tree_index, |
429 int scroll_tree_index, | 430 int scroll_tree_index, |
430 const gfx::ScrollOffset& scroll_offset, | 431 const gfx::ScrollOffset& scroll_offset, |
431 LayerTreeImpl* layer_tree_impl); | 432 LayerTreeImpl* layer_tree_impl); |
432 gfx::Size scroll_clip_layer_bounds(int scroll_node_id) const; | 433 gfx::Size scroll_clip_layer_bounds(int scroll_node_id) const; |
433 ScrollNode* CurrentlyScrollingNode(); | 434 ScrollNode* CurrentlyScrollingNode(); |
434 const ScrollNode* CurrentlyScrollingNode() const; | 435 const ScrollNode* CurrentlyScrollingNode() const; |
(...skipping 28 matching lines...) Expand all Loading... |
463 void DistributeScroll(ScrollNode* scroll_node, ScrollState* scroll_state); | 464 void DistributeScroll(ScrollNode* scroll_node, ScrollState* scroll_state); |
464 gfx::Vector2dF ScrollBy(ScrollNode* scroll_node, | 465 gfx::Vector2dF ScrollBy(ScrollNode* scroll_node, |
465 const gfx::Vector2dF& scroll, | 466 const gfx::Vector2dF& scroll, |
466 LayerTreeImpl* layer_tree_impl); | 467 LayerTreeImpl* layer_tree_impl); |
467 gfx::ScrollOffset ClampScrollOffsetToLimits(gfx::ScrollOffset offset, | 468 gfx::ScrollOffset ClampScrollOffsetToLimits(gfx::ScrollOffset offset, |
468 ScrollNode* scroll_node) const; | 469 ScrollNode* scroll_node) const; |
469 | 470 |
470 private: | 471 private: |
471 int currently_scrolling_node_id_; | 472 int currently_scrolling_node_id_; |
472 ScrollOffsetMap layer_id_to_scroll_offset_map_; | 473 ScrollOffsetMap layer_id_to_scroll_offset_map_; |
| 474 ScrollbarsEnabledMap layer_id_to_scrollbars_enabled_map_; |
473 | 475 |
474 SyncedScrollOffset* synced_scroll_offset(int layer_id); | 476 SyncedScrollOffset* synced_scroll_offset(int layer_id); |
475 const SyncedScrollOffset* synced_scroll_offset(int layer_id) const; | 477 const SyncedScrollOffset* synced_scroll_offset(int layer_id) const; |
476 gfx::ScrollOffset PullDeltaForMainThread(SyncedScrollOffset* scroll_offset); | 478 gfx::ScrollOffset PullDeltaForMainThread(SyncedScrollOffset* scroll_offset); |
477 void UpdateScrollOffsetMapEntry(int key, | 479 void UpdateScrollOffsetMapEntry(int key, |
478 ScrollOffsetMap* new_scroll_offset_map, | 480 ScrollOffsetMap* new_scroll_offset_map, |
479 LayerTreeImpl* layer_tree_impl); | 481 LayerTreeImpl* layer_tree_impl); |
480 }; | 482 }; |
481 | 483 |
482 struct AnimationScaleData { | 484 struct AnimationScaleData { |
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
674 DrawTransforms& GetDrawTransforms(int transform_id, int effect_id) const; | 676 DrawTransforms& GetDrawTransforms(int transform_id, int effect_id) const; |
675 DrawTransformData& FetchDrawTransformsDataFromCache(int transform_id, | 677 DrawTransformData& FetchDrawTransformsDataFromCache(int transform_id, |
676 int effect_id) const; | 678 int effect_id) const; |
677 | 679 |
678 PropertyTreesCachedData cached_data_; | 680 PropertyTreesCachedData cached_data_; |
679 }; | 681 }; |
680 | 682 |
681 } // namespace cc | 683 } // namespace cc |
682 | 684 |
683 #endif // CC_TREES_PROPERTY_TREE_H_ | 685 #endif // CC_TREES_PROPERTY_TREE_H_ |
OLD | NEW |