зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1022577 - Ensure we flush the repaint _after_ taking the scroll offset from content. r=botond
This commit is contained in:
Родитель
b605651fdd
Коммит
6ab27b8f7a
|
@ -2261,14 +2261,17 @@ void AsyncPanZoomController::NotifyLayersUpdated(const FrameMetrics& aLayerMetri
|
|||
mFrameMetrics.mHasScrollgrab = aLayerMetrics.mHasScrollgrab;
|
||||
|
||||
if (scrollOffsetUpdated) {
|
||||
CancelAnimation();
|
||||
|
||||
APZC_LOG("%p updating scroll offset from (%f, %f) to (%f, %f)\n", this,
|
||||
mFrameMetrics.GetScrollOffset().x, mFrameMetrics.GetScrollOffset().y,
|
||||
aLayerMetrics.GetScrollOffset().x, aLayerMetrics.GetScrollOffset().y);
|
||||
|
||||
mFrameMetrics.CopyScrollInfoFrom(aLayerMetrics);
|
||||
|
||||
// Cancel the animation (which will also trigger a repaint request)
|
||||
// after we update the scroll offset above. Otherwise we can be left
|
||||
// in a state where things are out of sync.
|
||||
CancelAnimation();
|
||||
|
||||
// Because of the scroll offset update, any inflight paint requests are
|
||||
// going to be ignored by layout, and so mLastDispatchedPaintMetrics
|
||||
// becomes incorrect for the purposes of calculating the LD transform. To
|
||||
|
|
Загрузка…
Ссылка в новой задаче