Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(223)

Side by Side Diff: cc/trees/property_tree.cc

Issue 2758343002: cc: Use Element Id to Record Animation Changes (Closed)
Patch Set: fix for test Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « cc/trees/property_tree.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 bool success = to_screen.GetInverse(&from_screen); 171 bool success = to_screen.GetInverse(&from_screen);
172 if (!success) 172 if (!success)
173 return false; 173 return false;
174 transform->ConcatTransform(from_screen); 174 transform->ConcatTransform(from_screen);
175 } 175 }
176 } 176 }
177 177
178 return true; 178 return true;
179 } 179 }
180 180
181 TransformNode* TransformTree::FindNodeFromElementId(ElementId id) {
182 auto iterator = property_trees()->element_id_to_transform_node_index.find(id);
183 if (iterator == property_trees()->element_id_to_transform_node_index.end())
184 return nullptr;
185
186 return Node(iterator->second);
187 }
188
181 void TransformTree::OnTransformAnimated(const gfx::Transform& transform, 189 void TransformTree::OnTransformAnimated(const gfx::Transform& transform,
182 int id, 190 int id,
183 LayerTreeImpl* layer_tree_impl) { 191 LayerTreeImpl* layer_tree_impl) {
184 TransformNode* node = Node(id); 192 TransformNode* node = Node(id);
185 layer_tree_impl->AddToTransformAnimationsMap(node->owning_layer_id, 193 layer_tree_impl->AddToTransformAnimationsMap(node->owning_layer_id,
186 transform); 194 transform);
187 if (node->local == transform) { 195 if (node->local == transform) {
188 return; 196 return;
189 } 197 }
190 node->local = transform; 198 node->local = transform;
(...skipping 651 matching lines...) Expand 10 before | Expand all | Expand 10 after
842 transform_tree.device_transform_scale_factor(); 850 transform_tree.device_transform_scale_factor();
843 TransformNode* transform_node = 851 TransformNode* transform_node =
844 transform_tree.Node(effect_node->transform_id); 852 transform_tree.Node(effect_node->transform_id);
845 if (transform_node->in_subtree_of_page_scale_layer) 853 if (transform_node->in_subtree_of_page_scale_layer)
846 layer_scale_factor *= transform_tree.page_scale_factor(); 854 layer_scale_factor *= transform_tree.page_scale_factor();
847 effect_node->surface_contents_scale = 855 effect_node->surface_contents_scale =
848 MathUtil::ComputeTransform2dScaleComponents( 856 MathUtil::ComputeTransform2dScaleComponents(
849 transform_tree.ToScreen(transform_node->id), layer_scale_factor); 857 transform_tree.ToScreen(transform_node->id), layer_scale_factor);
850 } 858 }
851 859
860 EffectNode* EffectTree::FindNodeFromElementId(ElementId id) {
861 auto iterator = property_trees()->element_id_to_effect_node_index.find(id);
862 if (iterator == property_trees()->element_id_to_effect_node_index.end())
863 return nullptr;
864
865 return Node(iterator->second);
866 }
867
852 void EffectTree::OnOpacityAnimated(float opacity, 868 void EffectTree::OnOpacityAnimated(float opacity,
853 int id, 869 int id,
854 LayerTreeImpl* layer_tree_impl) { 870 LayerTreeImpl* layer_tree_impl) {
855 EffectNode* node = Node(id); 871 EffectNode* node = Node(id);
856 layer_tree_impl->AddToOpacityAnimationsMap(node->owning_layer_id, opacity); 872 layer_tree_impl->AddToOpacityAnimationsMap(node->owning_layer_id, opacity);
857 if (node->opacity == opacity) 873 if (node->opacity == opacity)
858 return; 874 return;
859 node->opacity = opacity; 875 node->opacity = opacity;
860 node->effect_changed = true; 876 node->effect_changed = true;
861 property_trees()->changed = true; 877 property_trees()->changed = true;
(...skipping 1220 matching lines...) Expand 10 before | Expand all | Expand 10 after
2082 const EffectNode* effect_node = effect_tree.Node(effect_id); 2098 const EffectNode* effect_node = effect_tree.Node(effect_id);
2083 2099
2084 if (effect_node->surface_contents_scale.x() != 0.0 && 2100 if (effect_node->surface_contents_scale.x() != 0.0 &&
2085 effect_node->surface_contents_scale.y() != 0.0) 2101 effect_node->surface_contents_scale.y() != 0.0)
2086 screen_space_transform.Scale(1.0 / effect_node->surface_contents_scale.x(), 2102 screen_space_transform.Scale(1.0 / effect_node->surface_contents_scale.x(),
2087 1.0 / effect_node->surface_contents_scale.y()); 2103 1.0 / effect_node->surface_contents_scale.y());
2088 return screen_space_transform; 2104 return screen_space_transform;
2089 } 2105 }
2090 2106
2091 } // namespace cc 2107 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/property_tree.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698