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

Unified Diff: cc/trees/layer_tree_host_common.cc

Issue 2873593002: Force use of and cache render surface. (Closed)
Patch Set: Fix for patch 1. 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 47f3fc27ee865a923fb1f699bd99b09b325f3310..d8c6e104b9f9d4c243de55142a0e9fdd73ee18d9 100644
--- a/cc/trees/layer_tree_host_common.cc
+++ b/cc/trees/layer_tree_host_common.cc
@@ -307,6 +307,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) {
@@ -379,7 +380,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