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

Unified Diff: Source/WebCore/rendering/RenderLayerCompositor.cpp

Issue 10342008: Revert 114283 - Avoid using backing store for compositing layers that just need to clip (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/1123/
Patch Set: Created 8 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/WebCore/rendering/RenderLayerCompositor.h ('k') | Source/WebCore/rendering/RenderObject.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/WebCore/rendering/RenderLayerCompositor.cpp
===================================================================
--- Source/WebCore/rendering/RenderLayerCompositor.cpp (revision 115913)
+++ Source/WebCore/rendering/RenderLayerCompositor.cpp (working copy)
@@ -584,7 +584,7 @@
setCompositingParent(child, 0);
- RenderLayer* compLayer = parent->enclosingCompositingLayerForRepaint();
+ RenderLayer* compLayer = parent->enclosingCompositingLayer();
if (compLayer) {
ASSERT(compLayer->backing());
LayoutRect compBounds = child->backing()->compositedBounds();
@@ -1203,7 +1203,7 @@
void RenderLayerCompositor::recursiveRepaintLayerRect(RenderLayer* layer, const IntRect& rect)
{
// FIXME: This method does not work correctly with transforms.
- if (layer->isComposited() && !layer->backing()->paintsIntoCompositedAncestor())
+ if (layer->isComposited())
layer->setBackingNeedsRepaintInRect(rect);
#if !ASSERT_DISABLED
@@ -1398,15 +1398,15 @@
}
// The root layer always has a compositing layer, but it may not have backing.
return requiresCompositingForTransform(renderer)
- || requiresCompositingForVideo(renderer)
- || requiresCompositingForCanvas(renderer)
- || requiresCompositingForPlugin(renderer)
- || requiresCompositingForFrame(renderer)
- || (canRender3DTransforms() && renderer->style()->backfaceVisibility() == BackfaceVisibilityHidden)
- || clipsCompositingDescendants(layer)
- || requiresCompositingForAnimation(renderer)
- || requiresCompositingForFilters(renderer)
- || requiresCompositingForPosition(renderer, layer);
+ || requiresCompositingForVideo(renderer)
+ || requiresCompositingForCanvas(renderer)
+ || requiresCompositingForPlugin(renderer)
+ || requiresCompositingForFrame(renderer)
+ || (canRender3DTransforms() && renderer->style()->backfaceVisibility() == BackfaceVisibilityHidden)
+ || clipsCompositingDescendants(layer)
+ || requiresCompositingForAnimation(renderer)
+ || requiresCompositingForFilters(renderer)
+ || requiresCompositingForPosition(renderer, layer);
}
bool RenderLayerCompositor::canBeComposited(const RenderLayer* layer) const
@@ -1414,32 +1414,6 @@
return m_hasAcceleratedCompositing && layer->isSelfPaintingLayer();
}
-bool RenderLayerCompositor::requiresOwnBackingStore(const RenderLayer* layer, const RenderLayer* compositingAncestorLayer) const
-{
- RenderObject* renderer = layer->renderer();
- if (compositingAncestorLayer
- && !(compositingAncestorLayer->backing()->graphicsLayer()->drawsContent()
- || compositingAncestorLayer->backing()->paintsIntoWindow()
- || compositingAncestorLayer->backing()->paintsIntoCompositedAncestor()))
- return true;
-
- return layer->isRootLayer()
- || layer->transform() // note: excludes perspective and transformStyle3D.
- || requiresCompositingForVideo(renderer)
- || requiresCompositingForCanvas(renderer)
- || requiresCompositingForPlugin(renderer)
- || requiresCompositingForFrame(renderer)
- || (canRender3DTransforms() && renderer->style()->backfaceVisibility() == BackfaceVisibilityHidden)
- || requiresCompositingForAnimation(renderer)
- || requiresCompositingForFilters(renderer)
- || requiresCompositingForPosition(renderer, layer)
- || renderer->isTransparent()
- || renderer->hasMask()
- || renderer->hasReflection()
- || renderer->hasFilter()
- || layer->mustOverlapCompositedLayers();
-}
-
#if !LOG_DISABLED
const char* RenderLayerCompositor::reasonForCompositing(const RenderLayer* layer)
{
« no previous file with comments | « Source/WebCore/rendering/RenderLayerCompositor.h ('k') | Source/WebCore/rendering/RenderObject.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698