summaryrefslogtreecommitdiffstats
path: root/Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm')
-rw-r--r--Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm7
1 files changed, 4 insertions, 3 deletions
diff --git a/Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm b/Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm
index b8edef8..610cd40 100644
--- a/Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm
+++ b/Source/WebKit/mac/WebView/WebDynamicScrollBarsView.mm
@@ -568,7 +568,7 @@ static const unsigned cMaxUpdateScrollbarsPass = 2;
return YES;
}
-- (void)setScrollOrigin:(NSPoint)scrollOrigin updatePosition:(BOOL)updatePosition
+- (void)setScrollOrigin:(NSPoint)scrollOrigin updatePositionAtAll:(BOOL)updatePositionAtAll immediately:(BOOL)updatePositionSynchronously
{
// The cross-platform ScrollView call already checked to see if the old/new scroll origins were the same or not
// so we don't have to check for equivalence here.
@@ -579,12 +579,13 @@ static const unsigned cMaxUpdateScrollbarsPass = 2;
[docView setBoundsOrigin:NSMakePoint(-scrollOrigin.x, -scrollOrigin.y)];
- _private->scrollOriginChanged = true;
+ if (updatePositionAtAll)
+ _private->scrollOriginChanged = true;
// Maintain our original position in the presence of the new scroll origin.
_private->scrollPositionExcludingOrigin = NSMakePoint(visibleRect.origin.x + scrollOrigin.x, visibleRect.origin.y + scrollOrigin.y);
- if (updatePosition) // Otherwise we'll just let the snap happen when we update for the resize.
+ if (updatePositionAtAll && updatePositionSynchronously) // Otherwise we'll just let the snap happen when we update for the resize.
[self adjustForScrollOriginChange];
}