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 <stddef.h> | 5 #include <stddef.h> |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
(...skipping 823 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
834 .is_showing_backface; | 834 .is_showing_backface; |
835 } | 835 } |
836 | 836 |
837 void EffectTree::UpdateSurfaceContentsScale(EffectNode* effect_node) { | 837 void EffectTree::UpdateSurfaceContentsScale(EffectNode* effect_node) { |
838 if (!effect_node->has_render_surface) { | 838 if (!effect_node->has_render_surface) { |
839 effect_node->surface_contents_scale = gfx::Vector2dF(1.0f, 1.0f); | 839 effect_node->surface_contents_scale = gfx::Vector2dF(1.0f, 1.0f); |
840 return; | 840 return; |
841 } | 841 } |
842 | 842 |
843 TransformTree& transform_tree = property_trees()->transform_tree; | 843 TransformTree& transform_tree = property_trees()->transform_tree; |
844 TransformNode* transform_node = | |
845 transform_tree.Node(effect_node->transform_id); | |
846 if (transform_node->is_currently_animating) { | |
ajuma
2017/04/04 21:41:11
Would it make sense to tie this to LayerTreeSettin
reveman
2017/04/05 13:20:15
Makes sense. Done.
| |
847 effect_node->surface_contents_scale = gfx::Vector2dF(1.0f, 1.0f); | |
ajuma
2017/04/04 21:41:11
Is device scale factor a better choice than 1 here
reveman
2017/04/05 13:20:15
Yes, it is. Done.
| |
848 return; | |
849 } | |
844 float layer_scale_factor = transform_tree.device_scale_factor() * | 850 float layer_scale_factor = transform_tree.device_scale_factor() * |
845 transform_tree.device_transform_scale_factor(); | 851 transform_tree.device_transform_scale_factor(); |
846 TransformNode* transform_node = | |
847 transform_tree.Node(effect_node->transform_id); | |
848 if (transform_node->in_subtree_of_page_scale_layer) | 852 if (transform_node->in_subtree_of_page_scale_layer) |
849 layer_scale_factor *= transform_tree.page_scale_factor(); | 853 layer_scale_factor *= transform_tree.page_scale_factor(); |
850 effect_node->surface_contents_scale = | 854 effect_node->surface_contents_scale = |
851 MathUtil::ComputeTransform2dScaleComponents( | 855 MathUtil::ComputeTransform2dScaleComponents( |
852 transform_tree.ToScreen(transform_node->id), layer_scale_factor); | 856 transform_tree.ToScreen(transform_node->id), layer_scale_factor); |
853 } | 857 } |
854 | 858 |
855 EffectNode* EffectTree::FindNodeFromElementId(ElementId id) { | 859 EffectNode* EffectTree::FindNodeFromElementId(ElementId id) { |
856 auto iterator = property_trees()->element_id_to_effect_node_index.find(id); | 860 auto iterator = property_trees()->element_id_to_effect_node_index.find(id); |
857 if (iterator == property_trees()->element_id_to_effect_node_index.end()) | 861 if (iterator == property_trees()->element_id_to_effect_node_index.end()) |
(...skipping 1253 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2111 const EffectNode* effect_node = effect_tree.Node(effect_id); | 2115 const EffectNode* effect_node = effect_tree.Node(effect_id); |
2112 | 2116 |
2113 if (effect_node->surface_contents_scale.x() != 0.0 && | 2117 if (effect_node->surface_contents_scale.x() != 0.0 && |
2114 effect_node->surface_contents_scale.y() != 0.0) | 2118 effect_node->surface_contents_scale.y() != 0.0) |
2115 screen_space_transform.Scale(1.0 / effect_node->surface_contents_scale.x(), | 2119 screen_space_transform.Scale(1.0 / effect_node->surface_contents_scale.x(), |
2116 1.0 / effect_node->surface_contents_scale.y()); | 2120 1.0 / effect_node->surface_contents_scale.y()); |
2117 return screen_space_transform; | 2121 return screen_space_transform; |
2118 } | 2122 } |
2119 | 2123 |
2120 } // namespace cc | 2124 } // namespace cc |
OLD | NEW |