Chromium Code Reviews| 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 831 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 842 } | 842 } |
| 843 | 843 |
| 844 static inline bool HasCopyRequest(Layer* layer) { | 844 static inline bool HasCopyRequest(Layer* layer) { |
| 845 return layer->HasCopyRequest(); | 845 return layer->HasCopyRequest(); |
| 846 } | 846 } |
| 847 | 847 |
| 848 static inline bool HasCopyRequest(LayerImpl* layer) { | 848 static inline bool HasCopyRequest(LayerImpl* layer) { |
| 849 return !layer->test_properties()->copy_requests.empty(); | 849 return !layer->test_properties()->copy_requests.empty(); |
| 850 } | 850 } |
| 851 | 851 |
| 852 static inline bool PropertyChanged(Layer* layer) { | |
| 853 return layer->layer_property_changed() || layer->subtree_property_changed(); | |
| 854 } | |
| 855 | |
| 856 static inline bool PropertyChanged(LayerImpl* layer) { | |
| 857 return false; | |
| 858 } | |
| 859 | |
| 852 template <typename LayerType> | 860 template <typename LayerType> |
| 853 bool ShouldCreateRenderSurface(LayerType* layer, | 861 bool ShouldCreateRenderSurface(LayerType* layer, |
| 854 gfx::Transform current_transform, | 862 gfx::Transform current_transform, |
| 855 bool axis_aligned) { | 863 bool axis_aligned) { |
| 856 const bool preserves_2d_axis_alignment = | 864 const bool preserves_2d_axis_alignment = |
| 857 (current_transform * Transform(layer)).Preserves2dAxisAlignment() && | 865 (current_transform * Transform(layer)).Preserves2dAxisAlignment() && |
| 858 axis_aligned && AnimationsPreserveAxisAlignment(layer); | 866 axis_aligned && AnimationsPreserveAxisAlignment(layer); |
| 859 const bool is_root = !Parent(layer); | 867 const bool is_root = !Parent(layer); |
| 860 if (is_root) | 868 if (is_root) |
| 861 return true; | 869 return true; |
| (...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1018 node.has_copy_request = HasCopyRequest(layer); | 1026 node.has_copy_request = HasCopyRequest(layer); |
| 1019 node.filters = Filters(layer); | 1027 node.filters = Filters(layer); |
| 1020 node.background_filters = BackgroundFilters(layer); | 1028 node.background_filters = BackgroundFilters(layer); |
| 1021 node.filters_origin = FiltersOrigin(layer); | 1029 node.filters_origin = FiltersOrigin(layer); |
| 1022 node.has_potential_opacity_animation = has_potential_opacity_animation; | 1030 node.has_potential_opacity_animation = has_potential_opacity_animation; |
| 1023 node.has_potential_filter_animation = has_potential_filter_animation; | 1031 node.has_potential_filter_animation = has_potential_filter_animation; |
| 1024 node.double_sided = DoubleSided(layer); | 1032 node.double_sided = DoubleSided(layer); |
| 1025 node.subtree_hidden = HideLayerAndSubtree(layer); | 1033 node.subtree_hidden = HideLayerAndSubtree(layer); |
| 1026 node.is_currently_animating_opacity = OpacityIsAnimating(layer); | 1034 node.is_currently_animating_opacity = OpacityIsAnimating(layer); |
| 1027 node.is_currently_animating_filter = FilterIsAnimating(layer); | 1035 node.is_currently_animating_filter = FilterIsAnimating(layer); |
| 1036 node.effect_changed = PropertyChanged(layer); | |
|
jaydasika
2016/09/23 18:18:19
I think this change has the side effect that we no
ajuma
2016/09/23 22:31:12
Done.
| |
| 1028 | 1037 |
| 1029 EffectTree& effect_tree = data_for_children->property_trees->effect_tree; | 1038 EffectTree& effect_tree = data_for_children->property_trees->effect_tree; |
| 1030 if (MaskLayer(layer)) { | 1039 if (MaskLayer(layer)) { |
| 1031 node.mask_layer_id = MaskLayer(layer)->id(); | 1040 node.mask_layer_id = MaskLayer(layer)->id(); |
| 1032 effect_tree.AddMaskOrReplicaLayerId(node.mask_layer_id); | 1041 effect_tree.AddMaskOrReplicaLayerId(node.mask_layer_id); |
| 1033 } | 1042 } |
| 1034 if (ReplicaLayer(layer)) { | 1043 if (ReplicaLayer(layer)) { |
| 1035 node.replica_layer_id = ReplicaLayer(layer)->id(); | 1044 node.replica_layer_id = ReplicaLayer(layer)->id(); |
| 1036 effect_tree.AddMaskOrReplicaLayerId(node.replica_layer_id); | 1045 effect_tree.AddMaskOrReplicaLayerId(node.replica_layer_id); |
| 1037 if (MaskLayer(ReplicaLayer(layer))) { | 1046 if (MaskLayer(ReplicaLayer(layer))) { |
| (...skipping 463 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1501 color = SkColorSetA(color, 255); | 1510 color = SkColorSetA(color, 255); |
| 1502 BuildPropertyTreesTopLevelInternal( | 1511 BuildPropertyTreesTopLevelInternal( |
| 1503 root_layer, page_scale_layer, inner_viewport_scroll_layer, | 1512 root_layer, page_scale_layer, inner_viewport_scroll_layer, |
| 1504 outer_viewport_scroll_layer, overscroll_elasticity_layer, | 1513 outer_viewport_scroll_layer, overscroll_elasticity_layer, |
| 1505 elastic_overscroll, page_scale_factor, device_scale_factor, viewport, | 1514 elastic_overscroll, page_scale_factor, device_scale_factor, viewport, |
| 1506 device_transform, property_trees, color); | 1515 device_transform, property_trees, color); |
| 1507 property_trees->ResetCachedData(); | 1516 property_trees->ResetCachedData(); |
| 1508 } | 1517 } |
| 1509 | 1518 |
| 1510 } // namespace cc | 1519 } // namespace cc |
| OLD | NEW |