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

Side by Side Diff: Source/core/rendering/compositing/RenderLayerCompositor.cpp

Issue 233063004: Suppress layer creation for descendants of GPU-rasterized layers (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Address abarth's comments Created 6 years, 8 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2009, 2010 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 1147 matching lines...) Expand 10 before | Expand all | Expand 10 after
1158 } 1158 }
1159 if (m_containerLayer) { 1159 if (m_containerLayer) {
1160 FrameView* frameView = m_renderView.frameView(); 1160 FrameView* frameView = m_renderView.frameView();
1161 m_containerLayer->setSize(frameView->unscaledVisibleContentSize()); 1161 m_containerLayer->setSize(frameView->unscaledVisibleContentSize());
1162 } 1162 }
1163 } 1163 }
1164 1164
1165 void RenderLayerCompositor::updateStyleDeterminedCompositingReasons(RenderLayer* layer) 1165 void RenderLayerCompositor::updateStyleDeterminedCompositingReasons(RenderLayer* layer)
1166 { 1166 {
1167 CompositingReasons reasons = m_compositingReasonFinder.styleDeterminedReason s(layer->renderer()); 1167 CompositingReasons reasons = m_compositingReasonFinder.styleDeterminedReason s(layer->renderer());
1168 layer->setCompositingReasons(reasons, CompositingReasonComboAllStyleDetermin edReasons); 1168 layer->setStyleDeterminedCompositingReasons(reasons);
abarth-chromium 2014/04/17 17:29:51 Yeah, I'm pretty sure you can drop the mask argume
1169 } 1169 }
1170 1170
1171 void RenderLayerCompositor::updateDirectCompositingReasons(RenderLayer* layer) 1171 void RenderLayerCompositor::updateDirectCompositingReasons(RenderLayer* layer)
1172 { 1172 {
1173 CompositingReasons reasons = m_compositingReasonFinder.directReasons(layer, &m_needsToRecomputeCompositingRequirements); 1173 CompositingReasons reasons = m_compositingReasonFinder.directReasons(layer, &m_needsToRecomputeCompositingRequirements);
1174 if (layer->suppressingCompositedLayerCreation())
1175 reasons = m_compositingReasonFinder.suppressWillChangeAndAnimationForGpu Rasterization(layer, reasons);
1174 layer->setCompositingReasons(reasons, CompositingReasonComboAllDirectReasons ); 1176 layer->setCompositingReasons(reasons, CompositingReasonComboAllDirectReasons );
1175 } 1177 }
1176 1178
1177 bool RenderLayerCompositor::needsOwnBacking(const RenderLayer* layer) const 1179 bool RenderLayerCompositor::needsOwnBacking(const RenderLayer* layer) const
1178 { 1180 {
1179 if (!canBeComposited(layer)) 1181 if (!canBeComposited(layer))
1180 return false; 1182 return false;
1181 1183
1182 // If squashing is disabled, then layers that would have been squashed shoul d just be separately composited. 1184 // If squashing is disabled, then layers that would have been squashed shoul d just be separately composited.
1183 bool needsOwnBackingForDisabledSquashing = !layerSquashingEnabled() && requi resSquashing(layer->compositingReasons()); 1185 bool needsOwnBackingForDisabledSquashing = !layerSquashingEnabled() && requi resSquashing(layer->compositingReasons());
(...skipping 522 matching lines...) Expand 10 before | Expand all | Expand 10 after
1706 } else if (graphicsLayer == m_scrollLayer.get()) { 1708 } else if (graphicsLayer == m_scrollLayer.get()) {
1707 name = "LocalFrame Scrolling Layer"; 1709 name = "LocalFrame Scrolling Layer";
1708 } else { 1710 } else {
1709 ASSERT_NOT_REACHED(); 1711 ASSERT_NOT_REACHED();
1710 } 1712 }
1711 1713
1712 return name; 1714 return name;
1713 } 1715 }
1714 1716
1715 } // namespace WebCore 1717 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698