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

Unified Diff: cc/trees/property_tree.cc

Issue 2762123004: cc: LayerTreeHostImpl uses element id to tick animations (Closed)
Patch Set: review comments 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 side-by-side diff with in-line comments
Download patch
Index: cc/trees/property_tree.cc
diff --git a/cc/trees/property_tree.cc b/cc/trees/property_tree.cc
index 4a7df8f128b230ee104094d1cd4be0e3793c491b..ab426546edbf1bac2b285b4b012b2ad81ce16868 100644
--- a/cc/trees/property_tree.cc
+++ b/cc/trees/property_tree.cc
@@ -184,21 +184,18 @@ TransformNode* TransformTree::FindNodeFromElementId(ElementId id) {
return Node(iterator->second);
}
-void TransformTree::OnTransformAnimated(const gfx::Transform& transform,
- int id,
- LayerTreeImpl* layer_tree_impl) {
- TransformNode* node = Node(id);
- layer_tree_impl->AddToTransformAnimationsMap(node->owning_layer_id,
- transform);
- if (node->local == transform) {
- return;
- }
+bool TransformTree::OnTransformAnimated(ElementId element_id,
+ const gfx::Transform& transform) {
+ TransformNode* node = FindNodeFromElementId(element_id);
+ DCHECK(node);
+ if (node->local == transform)
+ return false;
node->local = transform;
node->needs_local_transform_update = true;
node->transform_changed = true;
property_trees()->changed = true;
set_needs_update(true);
- layer_tree_impl->set_needs_update_draw_properties();
+ return true;
}
bool TransformTree::NeedsSourceToParentUpdate(TransformNode* node) {
@@ -863,32 +860,29 @@ EffectNode* EffectTree::FindNodeFromElementId(ElementId id) {
return Node(iterator->second);
}
-void EffectTree::OnOpacityAnimated(float opacity,
- int id,
- LayerTreeImpl* layer_tree_impl) {
- EffectNode* node = Node(id);
- layer_tree_impl->AddToOpacityAnimationsMap(node->owning_layer_id, opacity);
+bool EffectTree::OnOpacityAnimated(ElementId id, float opacity) {
+ EffectNode* node = FindNodeFromElementId(id);
+ DCHECK(node);
if (node->opacity == opacity)
- return;
+ return false;
node->opacity = opacity;
node->effect_changed = true;
property_trees()->changed = true;
property_trees()->effect_tree.set_needs_update(true);
- layer_tree_impl->set_needs_update_draw_properties();
+ return true;
}
-void EffectTree::OnFilterAnimated(const FilterOperations& filters,
- int id,
- LayerTreeImpl* layer_tree_impl) {
- EffectNode* node = Node(id);
- layer_tree_impl->AddToFilterAnimationsMap(node->owning_layer_id, filters);
+bool EffectTree::OnFilterAnimated(ElementId id,
+ const FilterOperations& filters) {
+ EffectNode* node = FindNodeFromElementId(id);
+ DCHECK(node);
if (node->filters == filters)
- return;
+ return false;
node->filters = filters;
node->effect_changed = true;
property_trees()->changed = true;
property_trees()->effect_tree.set_needs_update(true);
- layer_tree_impl->set_needs_update_draw_properties();
+ return true;
}
void EffectTree::UpdateEffects(int id) {

Powered by Google App Engine
This is Rietveld 408576698