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

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

Issue 2253233003: cc : Add OnOpacityAnimated to effect tree (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: . Created 4 years, 4 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
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 895 matching lines...) Expand 10 before | Expand all | Expand 10 after
906 transform_tree.device_transform_scale_factor(); 906 transform_tree.device_transform_scale_factor();
907 TransformNode* transform_node = 907 TransformNode* transform_node =
908 transform_tree.Node(effect_node->transform_id); 908 transform_tree.Node(effect_node->transform_id);
909 if (transform_node->in_subtree_of_page_scale_layer) 909 if (transform_node->in_subtree_of_page_scale_layer)
910 layer_scale_factor *= transform_tree.page_scale_factor(); 910 layer_scale_factor *= transform_tree.page_scale_factor();
911 effect_node->surface_contents_scale = 911 effect_node->surface_contents_scale =
912 MathUtil::ComputeTransform2dScaleComponents( 912 MathUtil::ComputeTransform2dScaleComponents(
913 transform_tree.ToScreen(transform_node->id), layer_scale_factor); 913 transform_tree.ToScreen(transform_node->id), layer_scale_factor);
914 } 914 }
915 915
916 void EffectTree::OnOpacityAnimated(float opacity,
917 int id,
918 LayerTreeImpl* layer_tree_impl) {
919 EffectNode* node = Node(id);
920 if (node->opacity == opacity)
921 return;
922 node->opacity = opacity;
923 node->effect_changed = true;
924 property_trees()->changed = true;
925 property_trees()->effect_tree.set_needs_update(true);
926 layer_tree_impl->set_needs_update_draw_properties();
927 layer_tree_impl->AddToOpacityAnimationsMap(node->owner_id, opacity);
928 }
929
916 void EffectTree::UpdateEffects(int id) { 930 void EffectTree::UpdateEffects(int id) {
917 EffectNode* node = Node(id); 931 EffectNode* node = Node(id);
918 EffectNode* parent_node = parent(node); 932 EffectNode* parent_node = parent(node);
919 933
920 UpdateOpacities(node, parent_node); 934 UpdateOpacities(node, parent_node);
921 UpdateIsDrawn(node, parent_node); 935 UpdateIsDrawn(node, parent_node);
922 UpdateEffectChanged(node, parent_node); 936 UpdateEffectChanged(node, parent_node);
923 UpdateBackfaceVisibility(node, parent_node); 937 UpdateBackfaceVisibility(node, parent_node);
924 UpdateSurfaceContentsScale(node); 938 UpdateSurfaceContentsScale(node);
925 } 939 }
(...skipping 1263 matching lines...) Expand 10 before | Expand all | Expand 10 after
2189 from_target.ConcatTransform(draw_transforms.from_target); 2203 from_target.ConcatTransform(draw_transforms.from_target);
2190 from_target.Scale(effect_node->surface_contents_scale.x(), 2204 from_target.Scale(effect_node->surface_contents_scale.x(),
2191 effect_node->surface_contents_scale.y()); 2205 effect_node->surface_contents_scale.y());
2192 DCHECK(from_target.ApproximatelyEqual(*transform) || 2206 DCHECK(from_target.ApproximatelyEqual(*transform) ||
2193 !draw_transforms.invertible); 2207 !draw_transforms.invertible);
2194 } 2208 }
2195 return success; 2209 return success;
2196 } 2210 }
2197 2211
2198 } // namespace cc 2212 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698