Index: Source/core/platform/graphics/GraphicsLayer.cpp |
diff --git a/Source/core/platform/graphics/GraphicsLayer.cpp b/Source/core/platform/graphics/GraphicsLayer.cpp |
index f7ecd9870041b38f723f51c3be37e46cfd088ae2..3dad4f051364bc812139bd1a9f2f4619f36233ca 100644 |
--- a/Source/core/platform/graphics/GraphicsLayer.cpp |
+++ b/Source/core/platform/graphics/GraphicsLayer.cpp |
@@ -141,7 +141,6 @@ GraphicsLayer::GraphicsLayer(GraphicsLayerClient* client) |
m_opaqueRectTrackingContentLayerDelegate = adoptPtr(new OpaqueRectTrackingContentLayerDelegate(this)); |
m_layer = adoptPtr(Platform::current()->compositorSupport()->createContentLayer(m_opaqueRectTrackingContentLayerDelegate.get())); |
m_layer->layer()->setDrawsContent(m_drawsContent && m_contentsVisible); |
- m_layer->layer()->setScrollClient(this); |
m_layer->setAutomaticallyComputeRasterScale(true); |
} |
@@ -1336,6 +1335,21 @@ void GraphicsLayer::setLinkHighlight(LinkHighlightClient* linkHighlight) |
updateChildList(); |
} |
+void GraphicsLayer::setScrollableArea(ScrollableArea* scrollableArea, bool isMainFrame) |
+{ |
+ if (m_scrollableArea == scrollableArea) |
+ return; |
+ |
+ m_scrollableArea = scrollableArea; |
+ |
+ // Main frame scrolling may involve pinch zoom and gets routed through |
+ // WebViewImpl explicitly rather than via GraphicsLayer::didScroll. |
+ if (isMainFrame) |
+ m_layer->layer()->setScrollClient(nullptr); |
jamesr
2013/07/04 00:37:37
setScrollClient() just takes a WebLayerScrollClien
enne (OOO)
2013/07/04 00:50:17
Changed to 0. :(
|
+ else |
+ m_layer->layer()->setScrollClient(this); |
+} |
+ |
void GraphicsLayer::paint(GraphicsContext& context, const IntRect& clip) |
{ |
paintGraphicsLayerContents(context, clip); |