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

Unified Diff: cc/trees/layer_tree_host_common.cc

Issue 2873593002: Force use of and cache render surface. (Closed)
Patch Set: Created 3 years, 7 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/layer_tree_host_common.cc
diff --git a/cc/trees/layer_tree_host_common.cc b/cc/trees/layer_tree_host_common.cc
index ca048445bd3d36693eab2f4100295db93e809a97..e06de129701bafcbfe8207a3a8ee331edd22a4b7 100644
--- a/cc/trees/layer_tree_host_common.cc
+++ b/cc/trees/layer_tree_host_common.cc
@@ -310,6 +310,7 @@ static void AddSurfaceToRenderSurfaceList(
// pixel-moving filters)
const FilterOperations& filters = render_surface->Filters();
bool is_occlusion_immune = render_surface->HasCopyRequest() ||
+ render_surface->ForceRenderSurface() ||
filters.HasReferenceFilter() ||
filters.HasFilterThatMovesPixels();
if (is_occlusion_immune) {
@@ -383,7 +384,7 @@ static void ComputeInitialRenderSurfaceList(
bool has_animating_opacity_and_hidden =
effect_node->has_potential_opacity_animation &&
property_trees->effect_tree.EffectiveOpacity(effect_node) == 0.f &&
- !effect_node->has_copy_request;
+ !effect_node->has_copy_request && !effect_node->force_render_surface;
bool skip_layer = !is_root && (skip_draw_properties_computation ||
skip_for_invertibility ||

Powered by Google App Engine
This is Rietveld 408576698