Index: Source/core/page/scrolling/ScrollingCoordinator.cpp |
diff --git a/Source/core/page/scrolling/ScrollingCoordinator.cpp b/Source/core/page/scrolling/ScrollingCoordinator.cpp |
index 894e1c2f82949d54987dec697f895c6754ed3cfd..60ffc3dea30f18e3405aeff1d5e6c8007e785c45 100644 |
--- a/Source/core/page/scrolling/ScrollingCoordinator.cpp |
+++ b/Source/core/page/scrolling/ScrollingCoordinator.cpp |
@@ -946,8 +946,12 @@ MainThreadScrollingReasons ScrollingCoordinator::mainThreadScrollingReasons() co |
if (frameView->hasSlowRepaintObjects()) |
reasons |= HasSlowRepaintObjects; |
- if (frameView->isScrollable() && hasVisibleSlowRepaintViewportConstrainedObjects(frameView)) |
+ FrameView::ScrollingReasons scrollingReasons = frameView->scrollingReasons(); |
+ if ((scrollingReasons == FrameView::NonScrollableFromLayout |
+ || scrollingReasons == FrameView::Scrollable) |
+ && hasVisibleSlowRepaintViewportConstrainedObjects(frameView)) { |
Ian Vollick
2014/11/05 16:40:06
I think this could be made clearer with some well
awoloszyn
2014/11/05 19:25:11
Done.
|
reasons |= HasNonLayerViewportConstrainedObjects; |
+ } |
return reasons; |
} |