Index: Source/core/rendering/RenderView.cpp |
diff --git a/Source/core/rendering/RenderView.cpp b/Source/core/rendering/RenderView.cpp |
index 78259d0f6763915806421d2895f1f7a900fd2411..2d2e67147b1292bccd2fa0a35857d479a0a1ed78 100644 |
--- a/Source/core/rendering/RenderView.cpp |
+++ b/Source/core/rendering/RenderView.cpp |
@@ -430,10 +430,8 @@ void RenderView::paintBoxDecorations(PaintInfo& paintInfo, const LayoutPoint&) |
} |
if (RenderLayer* compositingLayer = layer->enclosingCompositingLayerForRepaint()) { |
- if (!compositingLayer->backing()->paintsIntoWindow()) { |
- frameView()->setCannotBlitToWindow(); |
- break; |
- } |
+ frameView()->setCannotBlitToWindow(); |
+ break; |
} |
} |
@@ -1083,6 +1081,17 @@ RenderBlock::IntervalArena* RenderView::intervalArena() |
return m_intervalArena.get(); |
} |
+bool RenderView::backgroundIsKnownToBeOpaqueInRect(const LayoutRect&) const |
+{ |
+ // FIXME: Remove this main frame check. Same concept applies to subframes too. |
+ Page* page = document()->page(); |
+ Frame* mainFrame = page ? page->mainFrame() : 0; |
+ if (!m_frameView || m_frameView->frame() != mainFrame) |
+ return false; |
+ |
+ return m_frameView->hasOpaqueBackground(); |
+} |
+ |
void RenderView::reportMemoryUsage(MemoryObjectInfo* memoryObjectInfo) const |
{ |
MemoryClassInfo info(memoryObjectInfo, this, PlatformMemoryTypes::Rendering); |