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 228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
239 } | 239 } |
240 | 240 |
241 static const gfx::Transform& Transform(Layer* layer) { | 241 static const gfx::Transform& Transform(Layer* layer) { |
242 return layer->transform(); | 242 return layer->transform(); |
243 } | 243 } |
244 | 244 |
245 static const gfx::Transform& Transform(LayerImpl* layer) { | 245 static const gfx::Transform& Transform(LayerImpl* layer) { |
246 return layer->test_properties()->transform; | 246 return layer->test_properties()->transform; |
247 } | 247 } |
248 | 248 |
| 249 static void SetIsScrollClipLayer(Layer* layer) { |
| 250 layer->set_is_scroll_clip_layer(); |
| 251 } |
| 252 |
| 253 static void SetIsScrollClipLayer(LayerImpl* layer) {} |
| 254 |
249 // Methods to query state from the AnimationHost ---------------------- | 255 // Methods to query state from the AnimationHost ---------------------- |
250 template <typename LayerType> | 256 template <typename LayerType> |
251 bool OpacityIsAnimating(LayerType* layer) { | 257 bool OpacityIsAnimating(LayerType* layer) { |
252 return layer->GetMutatorHost()->IsAnimatingOpacityProperty( | 258 return layer->GetMutatorHost()->IsAnimatingOpacityProperty( |
253 layer->element_id(), layer->GetElementTypeForAnimation()); | 259 layer->element_id(), layer->GetElementTypeForAnimation()); |
254 } | 260 } |
255 | 261 |
256 template <typename LayerType> | 262 template <typename LayerType> |
257 bool HasPotentiallyRunningOpacityAnimation(LayerType* layer) { | 263 bool HasPotentiallyRunningOpacityAnimation(LayerType* layer) { |
258 return layer->GetMutatorHost()->HasPotentiallyRunningOpacityAnimation( | 264 return layer->GetMutatorHost()->HasPotentiallyRunningOpacityAnimation( |
(...skipping 898 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1157 if (!requires_node) { | 1163 if (!requires_node) { |
1158 node_id = parent_id; | 1164 node_id = parent_id; |
1159 data_for_children->scroll_tree_parent = node_id; | 1165 data_for_children->scroll_tree_parent = node_id; |
1160 } else { | 1166 } else { |
1161 ScrollNode node; | 1167 ScrollNode node; |
1162 node.owning_layer_id = layer->id(); | 1168 node.owning_layer_id = layer->id(); |
1163 node.scrollable = scrollable; | 1169 node.scrollable = scrollable; |
1164 node.main_thread_scrolling_reasons = main_thread_scrolling_reasons; | 1170 node.main_thread_scrolling_reasons = main_thread_scrolling_reasons; |
1165 node.non_fast_scrollable_region = layer->non_fast_scrollable_region(); | 1171 node.non_fast_scrollable_region = layer->non_fast_scrollable_region(); |
1166 gfx::Size clip_bounds; | 1172 gfx::Size clip_bounds; |
1167 if (layer->scroll_clip_layer()) { | 1173 if (LayerType* scroll_clip_layer = layer->scroll_clip_layer()) { |
1168 clip_bounds = layer->scroll_clip_layer()->bounds(); | 1174 SetIsScrollClipLayer(scroll_clip_layer); |
1169 DCHECK(layer->scroll_clip_layer()->transform_tree_index() != | 1175 clip_bounds = scroll_clip_layer->bounds(); |
| 1176 DCHECK(scroll_clip_layer->transform_tree_index() != |
1170 TransformTree::kInvalidNodeId); | 1177 TransformTree::kInvalidNodeId); |
1171 node.max_scroll_offset_affected_by_page_scale = | 1178 node.max_scroll_offset_affected_by_page_scale = |
1172 !data_from_ancestor.property_trees->transform_tree | 1179 !data_from_ancestor.property_trees->transform_tree |
1173 .Node(layer->scroll_clip_layer()->transform_tree_index()) | 1180 .Node(scroll_clip_layer->transform_tree_index()) |
1174 ->in_subtree_of_page_scale_layer && | 1181 ->in_subtree_of_page_scale_layer && |
1175 data_from_ancestor.in_subtree_of_page_scale_layer; | 1182 data_from_ancestor.in_subtree_of_page_scale_layer; |
1176 } | 1183 } |
1177 | 1184 |
1178 node.scroll_clip_layer_bounds = clip_bounds; | 1185 node.scroll_clip_layer_bounds = clip_bounds; |
1179 node.scrolls_inner_viewport = | 1186 node.scrolls_inner_viewport = |
1180 layer == data_from_ancestor.inner_viewport_scroll_layer; | 1187 layer == data_from_ancestor.inner_viewport_scroll_layer; |
1181 node.scrolls_outer_viewport = | 1188 node.scrolls_outer_viewport = |
1182 layer == data_from_ancestor.outer_viewport_scroll_layer; | 1189 layer == data_from_ancestor.outer_viewport_scroll_layer; |
1183 | 1190 |
(...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1546 root_layer, page_scale_layer, inner_viewport_scroll_layer, | 1553 root_layer, page_scale_layer, inner_viewport_scroll_layer, |
1547 outer_viewport_scroll_layer, overscroll_elasticity_layer, | 1554 outer_viewport_scroll_layer, overscroll_elasticity_layer, |
1548 elastic_overscroll, page_scale_factor, device_scale_factor, viewport, | 1555 elastic_overscroll, page_scale_factor, device_scale_factor, viewport, |
1549 device_transform, property_trees, color); | 1556 device_transform, property_trees, color); |
1550 property_trees->effect_tree.CreateOrReuseRenderSurfaces( | 1557 property_trees->effect_tree.CreateOrReuseRenderSurfaces( |
1551 &render_surfaces, root_layer->layer_tree_impl()); | 1558 &render_surfaces, root_layer->layer_tree_impl()); |
1552 property_trees->ResetCachedData(); | 1559 property_trees->ResetCachedData(); |
1553 } | 1560 } |
1554 | 1561 |
1555 } // namespace cc | 1562 } // namespace cc |
OLD | NEW |