| 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 733 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 744 sticky_data->scroll_ancestor = GetScrollParentId(data_from_ancestor, layer); | 744 sticky_data->scroll_ancestor = GetScrollParentId(data_from_ancestor, layer); |
| 745 ScrollNode* scroll_ancestor = | 745 ScrollNode* scroll_ancestor = |
| 746 data_for_children->property_trees->scroll_tree.Node( | 746 data_for_children->property_trees->scroll_tree.Node( |
| 747 sticky_data->scroll_ancestor); | 747 sticky_data->scroll_ancestor); |
| 748 if (sticky_data->constraints.is_anchored_right || | 748 if (sticky_data->constraints.is_anchored_right || |
| 749 sticky_data->constraints.is_anchored_bottom) { | 749 sticky_data->constraints.is_anchored_bottom) { |
| 750 // Sticky nodes whose ancestor scroller is the inner / outer viewport | 750 // Sticky nodes whose ancestor scroller is the inner / outer viewport |
| 751 // need to have their local transform updated when the inner / outer | 751 // need to have their local transform updated when the inner / outer |
| 752 // viewport bounds change, but do not unconditionally move by that delta | 752 // viewport bounds change, but do not unconditionally move by that delta |
| 753 // like fixed position nodes. | 753 // like fixed position nodes. |
| 754 if (scroll_ancestor->is_inner_viewport_scroll_layer) { | 754 if (scroll_ancestor->scrolls_inner_viewport) { |
| 755 data_for_children->property_trees->transform_tree | 755 data_for_children->property_trees->transform_tree |
| 756 .AddNodeAffectedByInnerViewportBoundsDelta(node->id); | 756 .AddNodeAffectedByInnerViewportBoundsDelta(node->id); |
| 757 } else if (scroll_ancestor->is_outer_viewport_scroll_layer) { | 757 } else if (scroll_ancestor->scrolls_outer_viewport) { |
| 758 data_for_children->property_trees->transform_tree | 758 data_for_children->property_trees->transform_tree |
| 759 .AddNodeAffectedByOuterViewportBoundsDelta(node->id); | 759 .AddNodeAffectedByOuterViewportBoundsDelta(node->id); |
| 760 } | 760 } |
| 761 } | 761 } |
| 762 sticky_data->main_thread_offset = | 762 sticky_data->main_thread_offset = |
| 763 layer->position().OffsetFromOrigin() - | 763 layer->position().OffsetFromOrigin() - |
| 764 sticky_data->constraints.parent_relative_sticky_box_offset | 764 sticky_data->constraints.parent_relative_sticky_box_offset |
| 765 .OffsetFromOrigin(); | 765 .OffsetFromOrigin(); |
| 766 } | 766 } |
| 767 | 767 |
| (...skipping 403 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1171 DCHECK(layer->scroll_clip_layer()->transform_tree_index() != | 1171 DCHECK(layer->scroll_clip_layer()->transform_tree_index() != |
| 1172 TransformTree::kInvalidNodeId); | 1172 TransformTree::kInvalidNodeId); |
| 1173 node.max_scroll_offset_affected_by_page_scale = | 1173 node.max_scroll_offset_affected_by_page_scale = |
| 1174 !data_from_ancestor.property_trees->transform_tree | 1174 !data_from_ancestor.property_trees->transform_tree |
| 1175 .Node(layer->scroll_clip_layer()->transform_tree_index()) | 1175 .Node(layer->scroll_clip_layer()->transform_tree_index()) |
| 1176 ->in_subtree_of_page_scale_layer && | 1176 ->in_subtree_of_page_scale_layer && |
| 1177 data_from_ancestor.in_subtree_of_page_scale_layer; | 1177 data_from_ancestor.in_subtree_of_page_scale_layer; |
| 1178 } | 1178 } |
| 1179 | 1179 |
| 1180 node.scroll_clip_layer_bounds = clip_bounds; | 1180 node.scroll_clip_layer_bounds = clip_bounds; |
| 1181 node.is_inner_viewport_scroll_layer = | 1181 node.scrolls_inner_viewport = |
| 1182 layer == data_from_ancestor.inner_viewport_scroll_layer; | 1182 layer == data_from_ancestor.inner_viewport_scroll_layer; |
| 1183 node.is_outer_viewport_scroll_layer = | 1183 node.scrolls_outer_viewport = |
| 1184 layer == data_from_ancestor.outer_viewport_scroll_layer; | 1184 layer == data_from_ancestor.outer_viewport_scroll_layer; |
| 1185 | 1185 |
| 1186 node.bounds = layer->bounds(); | 1186 node.bounds = layer->bounds(); |
| 1187 node.offset_to_transform_parent = layer->offset_to_transform_parent(); | 1187 node.offset_to_transform_parent = layer->offset_to_transform_parent(); |
| 1188 node.should_flatten = layer->should_flatten_transform_from_property_tree(); | 1188 node.should_flatten = layer->should_flatten_transform_from_property_tree(); |
| 1189 node.user_scrollable_horizontal = layer->user_scrollable_horizontal(); | 1189 node.user_scrollable_horizontal = layer->user_scrollable_horizontal(); |
| 1190 node.user_scrollable_vertical = layer->user_scrollable_vertical(); | 1190 node.user_scrollable_vertical = layer->user_scrollable_vertical(); |
| 1191 node.element_id = layer->element_id(); | 1191 node.element_id = layer->element_id(); |
| 1192 node.transform_id = | 1192 node.transform_id = |
| 1193 data_for_children->transform_tree_parent->transform_tree_index(); | 1193 data_for_children->transform_tree_parent->transform_tree_index(); |
| (...skipping 354 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1548 root_layer, page_scale_layer, inner_viewport_scroll_layer, | 1548 root_layer, page_scale_layer, inner_viewport_scroll_layer, |
| 1549 outer_viewport_scroll_layer, overscroll_elasticity_layer, | 1549 outer_viewport_scroll_layer, overscroll_elasticity_layer, |
| 1550 elastic_overscroll, page_scale_factor, device_scale_factor, viewport, | 1550 elastic_overscroll, page_scale_factor, device_scale_factor, viewport, |
| 1551 device_transform, property_trees, color); | 1551 device_transform, property_trees, color); |
| 1552 property_trees->effect_tree.CreateOrReuseRenderSurfaces( | 1552 property_trees->effect_tree.CreateOrReuseRenderSurfaces( |
| 1553 &render_surfaces, root_layer->layer_tree_impl()); | 1553 &render_surfaces, root_layer->layer_tree_impl()); |
| 1554 property_trees->ResetCachedData(); | 1554 property_trees->ResetCachedData(); |
| 1555 } | 1555 } |
| 1556 | 1556 |
| 1557 } // namespace cc | 1557 } // namespace cc |
| OLD | NEW |