Title: [112148] trunk/Source/WebCore
Revision
112148
Author
[email protected]
Date
2012-03-26 14:43:55 -0700 (Mon, 26 Mar 2012)

Log Message

Find in page overlay and bouncy are not always positioned correctly
https://bugs.webkit.org/show_bug.cgi?id=82247
<rdar://problem/10866139>

Reviewed by Sam Weinig.

In WebCore, a lot of code depends on scroll position updates to happen synchronously, so
update the frame view scroll position before asking the scrolling thread to scroll.

* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::requestScrollPositionUpdate):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (112147 => 112148)


--- trunk/Source/WebCore/ChangeLog	2012-03-26 21:40:33 UTC (rev 112147)
+++ trunk/Source/WebCore/ChangeLog	2012-03-26 21:43:55 UTC (rev 112148)
@@ -1,3 +1,17 @@
+2012-03-26  Anders Carlsson  <[email protected]>
+
+        Find in page overlay and bouncy are not always positioned correctly
+        https://bugs.webkit.org/show_bug.cgi?id=82247
+        <rdar://problem/10866139>
+
+        Reviewed by Sam Weinig.
+
+        In WebCore, a lot of code depends on scroll position updates to happen synchronously, so
+        update the frame view scroll position before asking the scrolling thread to scroll.
+
+        * page/scrolling/ScrollingCoordinator.cpp:
+        (WebCore::ScrollingCoordinator::requestScrollPositionUpdate):
+
 2012-03-26  Nate Chapin  <[email protected]>
 
         Simplify setting loading state in DocumentLoader

Modified: trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.cpp (112147 => 112148)


--- trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.cpp	2012-03-26 21:40:33 UTC (rev 112147)
+++ trunk/Source/WebCore/page/scrolling/ScrollingCoordinator.cpp	2012-03-26 21:43:55 UTC (rev 112148)
@@ -228,6 +228,10 @@
         return false;
 
 #if ENABLE(THREADED_SCROLLING)
+    // Update the main frame scroll position locally before asking the scrolling thread to scroll,
+    // since FrameView expects scroll position updates to happen synchronously.
+    updateMainFrameScrollPosition(scrollPosition);
+
     ScrollingThread::dispatch(bind(&ScrollingTree::setMainFrameScrollPosition, m_scrollingTree.get(), scrollPosition));
     return true;
 #else
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to