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 #include "cc/trees/property_tree_builder.h" | 5 #include "cc/trees/property_tree_builder.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <map> | 9 #include <map> |
10 #include <set> | 10 #include <set> |
(...skipping 662 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
673 | 673 |
674 if (!requires_node) { | 674 if (!requires_node) { |
675 data_for_children->scroll_tree_parent = parent_id; | 675 data_for_children->scroll_tree_parent = parent_id; |
676 } else { | 676 } else { |
677 ScrollNode node; | 677 ScrollNode node; |
678 node.owner_id = layer->id(); | 678 node.owner_id = layer->id(); |
679 node.data.scrollable = scrollable; | 679 node.data.scrollable = scrollable; |
680 node.data.main_thread_scrolling_reasons = main_thread_scrolling_reasons; | 680 node.data.main_thread_scrolling_reasons = main_thread_scrolling_reasons; |
681 node.data.contains_non_fast_scrollable_region = | 681 node.data.contains_non_fast_scrollable_region = |
682 contains_non_fast_scrollable_region; | 682 contains_non_fast_scrollable_region; |
683 node.data.transform_id = | 683 gfx::Size clip_bounds; |
684 data_for_children->transform_tree_parent->transform_tree_index(); | 684 if (layer->scroll_clip_layer()) { |
685 clip_bounds = layer->scroll_clip_layer()->bounds(); | |
686 if (layer->scroll_clip_layer()->transform_tree_index() != | |
687 kInvalidPropertyTreeNodeId) { | |
ajuma
2016/02/09 22:35:05
Are there cases where this doesn't hold? What if w
sunxd
2016/02/09 23:03:56
In LayerTreeHostImplTest.ScrollUnknownScrollAncest
ajuma
2016/02/10 00:15:06
What if we modify the test so that the child_scrol
| |
688 node.data.max_scroll_offset_affected_by_page_scale = | |
689 !data_from_ancestor.transform_tree | |
690 ->Node(layer->scroll_clip_layer()->transform_tree_index()) | |
691 ->data.in_subtree_of_page_scale_layer && | |
692 data_from_ancestor.in_subtree_of_page_scale_layer; | |
693 } | |
694 } | |
695 node.data.scroll_clip_layer_bounds = clip_bounds; | |
696 | |
697 node.data.is_inner_viewport_scroll_layer = | |
698 layer == data_from_ancestor.inner_viewport_scroll_layer; | |
699 node.data.is_outer_viewport_scroll_layer = | |
700 layer == data_from_ancestor.outer_viewport_scroll_layer; | |
701 | |
702 node.data.bounds = layer->bounds(); | |
703 | |
685 data_for_children->scroll_tree_parent = | 704 data_for_children->scroll_tree_parent = |
686 data_for_children->scroll_tree->Insert(node, parent_id); | 705 data_for_children->scroll_tree->Insert(node, parent_id); |
687 data_for_children->main_thread_scrolling_reasons = | 706 data_for_children->main_thread_scrolling_reasons = |
688 node.data.main_thread_scrolling_reasons; | 707 node.data.main_thread_scrolling_reasons; |
689 data_for_children->scroll_tree_parent_created_by_uninheritable_criteria = | 708 data_for_children->scroll_tree_parent_created_by_uninheritable_criteria = |
690 scroll_node_uninheritable_criteria; | 709 scroll_node_uninheritable_criteria; |
691 } | 710 } |
692 | 711 |
693 layer->SetScrollTreeIndex(data_for_children->scroll_tree_parent); | 712 layer->SetScrollTreeIndex(data_for_children->scroll_tree_parent); |
694 } | 713 } |
(...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
926 const gfx::Transform& device_transform, | 945 const gfx::Transform& device_transform, |
927 PropertyTrees* property_trees) { | 946 PropertyTrees* property_trees) { |
928 BuildPropertyTreesTopLevelInternal( | 947 BuildPropertyTreesTopLevelInternal( |
929 root_layer, page_scale_layer, inner_viewport_scroll_layer, | 948 root_layer, page_scale_layer, inner_viewport_scroll_layer, |
930 outer_viewport_scroll_layer, overscroll_elasticity_layer, | 949 outer_viewport_scroll_layer, overscroll_elasticity_layer, |
931 elastic_overscroll, page_scale_factor, device_scale_factor, viewport, | 950 elastic_overscroll, page_scale_factor, device_scale_factor, viewport, |
932 device_transform, property_trees); | 951 device_transform, property_trees); |
933 } | 952 } |
934 | 953 |
935 } // namespace cc | 954 } // namespace cc |
OLD | NEW |