Index: cc/trees/property_tree_builder.cc |
diff --git a/cc/trees/property_tree_builder.cc b/cc/trees/property_tree_builder.cc |
index 7853b0112b26755ef0fb16dbc1063d07a975f78c..f539966fa199a80c8bbbbd6e473f4d8a360111bc 100644 |
--- a/cc/trees/property_tree_builder.cc |
+++ b/cc/trees/property_tree_builder.cc |
@@ -55,7 +55,7 @@ struct DataForRecursion { |
bool scroll_tree_parent_created_by_uninheritable_criteria; |
const gfx::Transform* device_transform; |
gfx::Transform compound_transform_since_render_target; |
- bool axis_align_since_render_target; |
+ bool animation_axis_aligned_since_render_target; |
SkColor safe_opaque_background_color; |
}; |
@@ -727,10 +727,9 @@ static inline bool PropertyChanged(LayerImpl* layer) { |
template <typename LayerType> |
bool ShouldCreateRenderSurface(LayerType* layer, |
gfx::Transform current_transform, |
- bool axis_aligned) { |
+ bool animation_axis_aligned) { |
const bool preserves_2d_axis_alignment = |
- (current_transform * Transform(layer)).Preserves2dAxisAlignment() && |
- axis_aligned && AnimationsPreserveAxisAlignment(layer); |
+ current_transform.Preserves2dAxisAlignment() && animation_axis_aligned; |
const bool is_root = !Parent(layer); |
if (is_root) |
return true; |
@@ -885,11 +884,13 @@ bool AddEffectNodeIfNeeded( |
HasPotentiallyRunningFilterAnimation(layer); |
const bool has_proxied_opacity = |
!!(layer->mutable_properties() & MutableProperty::kOpacity); |
- const bool should_create_render_surface = ShouldCreateRenderSurface( |
- layer, data_from_ancestor.compound_transform_since_render_target, |
- data_from_ancestor.axis_align_since_render_target); |
- data_for_children->axis_align_since_render_target &= |
+ |
+ data_for_children->animation_axis_aligned_since_render_target &= |
AnimationsPreserveAxisAlignment(layer); |
+ data_for_children->compound_transform_since_render_target *= Transform(layer); |
+ const bool should_create_render_surface = ShouldCreateRenderSurface( |
+ layer, data_for_children->compound_transform_since_render_target, |
+ data_for_children->animation_axis_aligned_since_render_target); |
bool requires_node = is_root || has_transparency || |
has_potential_opacity_animation || has_proxied_opacity || |
@@ -900,8 +901,6 @@ bool AddEffectNodeIfNeeded( |
if (!requires_node) { |
layer->SetEffectTreeIndex(parent_id); |
data_for_children->effect_tree_parent = parent_id; |
- data_for_children->compound_transform_since_render_target *= |
- Transform(layer); |
return false; |
} |
@@ -981,7 +980,7 @@ bool AddEffectNodeIfNeeded( |
if (should_create_render_surface) { |
data_for_children->compound_transform_since_render_target = |
gfx::Transform(); |
- data_for_children->axis_align_since_render_target = true; |
+ data_for_children->animation_axis_aligned_since_render_target = true; |
} |
return should_create_render_surface; |
} |
@@ -1272,7 +1271,7 @@ void BuildPropertyTreesTopLevelInternal( |
data_for_recursion.property_trees->clear(); |
data_for_recursion.compound_transform_since_render_target = gfx::Transform(); |
- data_for_recursion.axis_align_since_render_target = true; |
+ data_for_recursion.animation_axis_aligned_since_render_target = true; |
data_for_recursion.property_trees->transform_tree.set_device_scale_factor( |
device_scale_factor); |
data_for_recursion.safe_opaque_background_color = color; |