Index: cc/trees/property_tree_builder.cc |
diff --git a/cc/trees/property_tree_builder.cc b/cc/trees/property_tree_builder.cc |
index 1d637229d0a00b57383950d6938e6478d8561a1e..36b3551574921197f1ea81154ba265b70bc81384 100644 |
--- a/cc/trees/property_tree_builder.cc |
+++ b/cc/trees/property_tree_builder.cc |
@@ -730,6 +730,14 @@ void SetBackfaceVisibilityTransform(LayerType* layer, |
} |
} |
+static void SetLayerPropertyChangedForChild(Layer* parent, Layer* child) { |
+ if (parent->subtree_property_changed()) |
+ child->SetSubtreePropertyChanged(); |
+} |
+ |
+static void SetLayerPropertyChangedForChild(LayerImpl* parent, |
+ LayerImpl* child) {} |
+ |
template <typename LayerType> |
void BuildPropertyTreesInternal( |
LayerType* layer, |
@@ -762,6 +770,7 @@ void BuildPropertyTreesInternal( |
SetBackfaceVisibilityTransform(layer, created_transform_node); |
for (size_t i = 0; i < layer->children().size(); ++i) { |
+ SetLayerPropertyChangedForChild(layer, layer->child_at(i)); |
if (!layer->child_at(i)->scroll_parent()) { |
DataForRecursionFromChild<LayerType> data_from_child; |
BuildPropertyTreesInternal(layer->child_at(i), data_for_children, |