Index: cc/trees/layer_tree_host_common.cc |
diff --git a/cc/trees/layer_tree_host_common.cc b/cc/trees/layer_tree_host_common.cc |
index aa9ad5e57255c40ffad3c20b50bf134c9416d9cb..7548cd293bbf1a2212062e961bc269fa34b0f08e 100644 |
--- a/cc/trees/layer_tree_host_common.cc |
+++ b/cc/trees/layer_tree_host_common.cc |
@@ -268,6 +268,17 @@ static inline void UpdateTilePrioritiesForLayer(LayerImpl* layer) { |
static inline void UpdateTilePrioritiesForLayer(Layer* layer) {} |
+static inline void SavePaintPropertiesLayer(LayerImpl* layer) {} |
+ |
+static inline void SavePaintPropertiesLayer(Layer* layer) { |
+ layer->SavePaintProperties(); |
+ |
+ if (layer->mask_layer()) |
+ layer->mask_layer()->SavePaintProperties(); |
+ if (layer->replica_layer() && layer->replica_layer()->mask_layer()) |
+ layer->replica_layer()->mask_layer()->SavePaintProperties(); |
+} |
+ |
template <typename LayerType> |
static bool SubtreeShouldRenderToSeparateSurface( |
LayerType* layer, |
@@ -1409,6 +1420,8 @@ static void CalculateDrawPropertiesInternal( |
layer->render_target()->render_surface()-> |
AddContributingDelegatedRenderPassLayer(layer); |
} |
+ |
+ SavePaintPropertiesLayer(layer); |
} |
void LayerTreeHostCommon::CalculateDrawProperties( |