summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/page/FrameView.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/page/FrameView.cpp')
-rw-r--r--Source/WebCore/page/FrameView.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/Source/WebCore/page/FrameView.cpp b/Source/WebCore/page/FrameView.cpp
index 8d141b8d1..adbe04968 100644
--- a/Source/WebCore/page/FrameView.cpp
+++ b/Source/WebCore/page/FrameView.cpp
@@ -1259,7 +1259,11 @@ bool FrameView::useSlowRepaints(bool considerOverlap) const
{
bool mustBeSlow = m_slowRepaintObjectCount > 0 || (platformWidget() && m_fixedObjectCount > 0);
- if (contentsInCompositedLayer())
+ // FIXME: WidgetMac.mm makes the assumption that useSlowRepaints ==
+ // m_contentIsOpaque, so don't take the fast path for composited layers
+ // if they are a platform widget in order to get painting correctness
+ // for transparent layers. See the comment in WidgetMac::paint.
+ if (contentsInCompositedLayer() && !platformWidget())
return mustBeSlow;
#if PLATFORM(CHROMIUM)