REGRESSION (132422): Tiles don't move when the Find dialog causes programmatic scrolls

https://bugs.webkit.org/show_bug.cgi?id=100433
<rdar://problem/12575582>

Reviewed by Simon Fraser.

Actually update GraphicsLayer positions from updateMainFrameScrollPosition if
we're doing a programmatic scroll; otherwise programmatic scrolls while scrolling
on the main thread will short-circuit and end up only updating the GraphicsLayer's
notion of its current position, but never synchronizing that to the layer itself.

No new tests, as this is currently untestable.

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



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132543 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent c22feac7
2012-10-25 Tim Horton <timothy_horton@apple.com>
REGRESSION (132422): Tiles don't move when the Find dialog causes programmatic scrolls
https://bugs.webkit.org/show_bug.cgi?id=100433
<rdar://problem/12575582>
Reviewed by Simon Fraser.
Actually update GraphicsLayer positions from updateMainFrameScrollPosition if
we're doing a programmatic scroll; otherwise programmatic scrolls while scrolling
on the main thread will short-circuit and end up only updating the GraphicsLayer's
notion of its current position, but never synchronizing that to the layer itself.
No new tests, as this is currently untestable.
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::updateMainFrameScrollPosition):
2012-10-25 Simon Fraser <simon.fraser@apple.com>
Tiled layers are missing content on zooming
......@@ -237,8 +237,12 @@ void ScrollingCoordinator::updateMainFrameScrollPosition(const IntPoint& scrollP
frameView->setInProgrammaticScroll(oldProgrammaticScroll);
#if USE(ACCELERATED_COMPOSITING)
if (GraphicsLayer* scrollLayer = scrollLayerForFrameView(frameView))
scrollLayer->syncPosition(-frameView->scrollPosition());
if (GraphicsLayer* scrollLayer = scrollLayerForFrameView(frameView)) {
if (programmaticScroll)
scrollLayer->setPosition(-frameView->scrollPosition());
else
scrollLayer->syncPosition(-frameView->scrollPosition());
}
#endif
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment