Title: [141904] trunk/Source/WebKit/chromium
Revision
141904
Author
[email protected]
Date
2013-02-05 10:55:57 -0800 (Tue, 05 Feb 2013)

Log Message

[chromium] Make overlay layers slow-scrolling
https://bugs.webkit.org/show_bug.cgi?id=108957

Patch by Sami Kyostila <[email protected]> on 2013-02-05
Reviewed by James Robinson.

Since overlay layers get inserted on top of everything else, we must
mark them slow-scrolling to prevent all scroll input events to the rest
of the page from getting blocked. This is also more correct because
generally the overlay contents need to be repainted whenever the scroll
offset changes, and with this patch the painting happens in sync with
page scrolling.

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (141903 => 141904)


--- trunk/Source/WebKit/chromium/ChangeLog	2013-02-05 18:44:09 UTC (rev 141903)
+++ trunk/Source/WebKit/chromium/ChangeLog	2013-02-05 18:55:57 UTC (rev 141904)
@@ -1,3 +1,17 @@
+2013-02-05  Sami Kyostila  <[email protected]>
+
+        [chromium] Make overlay layers slow-scrolling
+        https://bugs.webkit.org/show_bug.cgi?id=108957
+
+        Reviewed by James Robinson.
+
+        Since overlay layers get inserted on top of everything else, we must
+        mark them slow-scrolling to prevent all scroll input events to the rest
+        of the page from getting blocked. This is also more correct because
+        generally the overlay contents need to be repainted whenever the scroll
+        offset changes, and with this patch the painting happens in sync with
+        page scrolling.
+
 2013-02-05  Sheriff Bot  <[email protected]>
 
         Unreviewed, rolling out r141896.

Modified: trunk/Source/WebKit/chromium/src/PageOverlay.cpp (141903 => 141904)


--- trunk/Source/WebKit/chromium/src/PageOverlay.cpp	2013-02-05 18:44:09 UTC (rev 141903)
+++ trunk/Source/WebKit/chromium/src/PageOverlay.cpp	2013-02-05 18:55:57 UTC (rev 141904)
@@ -30,6 +30,7 @@
 #include "PageOverlay.h"
 
 #include "GraphicsLayer.h"
+#include "GraphicsLayerChromium.h"
 #include "GraphicsLayerClient.h"
 #include "Page.h"
 #include "PlatformContextSkia.h"
@@ -37,6 +38,7 @@
 #include "WebPageOverlay.h"
 #include "WebViewClient.h"
 #include "WebViewImpl.h"
+#include <public/WebLayer.h>
 
 using namespace WebCore;
 
@@ -141,6 +143,9 @@
 
     m_viewImpl->setOverlayLayer(m_layer.get());
     m_layer->setNeedsDisplay();
+
+    WebLayer* platformLayer = static_cast<GraphicsLayerChromium*>(m_layer.get())->platformLayer();
+    platformLayer->setShouldScrollOnMainThread(true);
 #endif
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to