Index: Source/core/rendering/RenderLayer.cpp |
diff --git a/Source/core/rendering/RenderLayer.cpp b/Source/core/rendering/RenderLayer.cpp |
index 17edf636a3a2c9e7116f6987e2195b220b1c5311..abac8916fa2bd912ad0977fc46ad2537898def36 100644 |
--- a/Source/core/rendering/RenderLayer.cpp |
+++ b/Source/core/rendering/RenderLayer.cpp |
@@ -1510,13 +1510,8 @@ void RenderLayer::setFilterBackendNeedsRepaintingInRect(const LayoutRect& rect) |
LayoutRect parentLayerRect = renderer()->localToContainerQuad(repaintQuad, parentLayer->renderer()).enclosingBoundingBox(); |
if (parentLayer->isComposited()) { |
- if (!parentLayer->backing()->paintsIntoWindow()) { |
- parentLayer->setBackingNeedsRepaintInRect(parentLayerRect); |
- return; |
- } |
- // If the painting goes to window, redirect the painting to the parent RenderView. |
- parentLayer = renderer()->view()->layer(); |
- parentLayerRect = renderer()->localToContainerQuad(repaintQuad, parentLayer->renderer()).enclosingBoundingBox(); |
+ parentLayer->setBackingNeedsRepaintInRect(parentLayerRect); |
+ return; |
} |
if (parentLayer->paintsWithFilters()) { |
@@ -3585,8 +3580,7 @@ void RenderLayer::paintLayer(GraphicsContext* context, const LayerPaintingInfo& |
// but we need to ensure that we don't cache clip rects computed with the wrong root in this case. |
if (context->updatingControlTints() || (paintingInfo.paintBehavior & PaintBehaviorFlattenCompositingLayers)) |
paintFlags |= PaintLayerTemporaryClipRects; |
- else if (!backing()->paintsIntoWindow() |
- && !backing()->paintsIntoCompositedAncestor() |
+ else if (!backing()->paintsIntoCompositedAncestor() |
&& !shouldDoSoftwarePaint(this, paintFlags & PaintLayerPaintingReflection)) { |
// If this RenderLayer should paint into its backing, that will be done via RenderLayerBacking::paintIntoLayer(). |
return; |
@@ -5498,8 +5492,7 @@ GraphicsLayer* RenderLayer::layerForScrollCorner() const |
bool RenderLayer::paintsWithTransform(PaintBehavior paintBehavior) const |
{ |
- bool paintsToWindow = !isComposited() || backing()->paintsIntoWindow(); |
- return transform() && ((paintBehavior & PaintBehaviorFlattenCompositingLayers) || paintsToWindow); |
+ return transform() && ((paintBehavior & PaintBehaviorFlattenCompositingLayers) || !isComposited()); |
} |
bool RenderLayer::backgroundIsKnownToBeOpaqueInRect(const LayoutRect& localRect) const |
@@ -5755,14 +5748,7 @@ void RenderLayer::repaintIncludingDescendants() |
void RenderLayer::setBackingNeedsRepaint() |
{ |
ASSERT(isComposited()); |
- if (backing()->paintsIntoWindow()) { |
- // If we're trying to repaint the placeholder document layer, propagate the |
- // repaint to the native view system. |
- RenderView* view = renderer()->view(); |
- if (view) |
- view->repaintViewRectangle(absoluteBoundingBox()); |
- } else |
- backing()->setContentsNeedDisplay(); |
+ backing()->setContentsNeedDisplay(); |
} |
void RenderLayer::setBackingNeedsRepaintInRect(const LayoutRect& r) |
@@ -5770,7 +5756,7 @@ void RenderLayer::setBackingNeedsRepaintInRect(const LayoutRect& r) |
// https://bugs.webkit.org/show_bug.cgi?id=61159 describes an unreproducible crash here, |
// so assert but check that the layer is composited. |
ASSERT(isComposited()); |
- if (!isComposited() || backing()->paintsIntoWindow()) { |
+ if (!isComposited()) { |
// If we're trying to repaint the placeholder document layer, propagate the |
// repaint to the native view system. |
LayoutRect absRect(r); |