Index: third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp |
diff --git a/third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp b/third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp |
index d8c6599e5cca8f50180a4cc7c1d0ef73cc436162..39c1c75ed360613772d3e5072cc9a5cee4f00397 100644 |
--- a/third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp |
+++ b/third_party/WebKit/Source/core/page/scrolling/ScrollingCoordinator.cpp |
@@ -131,6 +131,10 @@ void ScrollingCoordinator::notifyOverflowUpdated() { |
m_scrollGestureRegionIsDirty = true; |
} |
+void ScrollingCoordinator::frameViewVisibilityDidChange() { |
+ m_scrollGestureRegionIsDirty = true; |
+} |
+ |
void ScrollingCoordinator::scrollableAreasDidChange() { |
ASSERT(m_page); |
if (!m_page->mainFrame()->isLocalFrame() || |
@@ -873,7 +877,8 @@ Region ScrollingCoordinator::computeShouldHandleScrollGestureOnMainThreadRegion( |
const IntPoint& frameLocation) const { |
Region shouldHandleScrollGestureOnMainThreadRegion; |
FrameView* frameView = frame->view(); |
- if (!frameView || frameView->shouldThrottleRendering()) |
+ if (!frameView || frameView->shouldThrottleRendering() || |
+ !frameView->isVisible()) |
return shouldHandleScrollGestureOnMainThreadRegion; |
IntPoint offset = frameLocation; |