diff --git a/src/vs/editor/browser/viewParts/lines/viewLines.ts b/src/vs/editor/browser/viewParts/lines/viewLines.ts index 6ab9299d1479aa93c05685ad5c5774bf87fa1111..33c10e4d16765e26fe2fb3fd514d398894acede3 100644 --- a/src/vs/editor/browser/viewParts/lines/viewLines.ts +++ b/src/vs/editor/browser/viewParts/lines/viewLines.ts @@ -239,7 +239,8 @@ export class ViewLines extends ViewPart implements IVisibleLinesHost, this._horizontalRevealRequest = null; } - if (e.scrollType === ScrollType.Smooth) { + const scrollTopDelta = Math.abs(this._context.viewLayout.getCurrentScrollTop() - newScrollPosition.scrollTop); + if (e.scrollType === ScrollType.Smooth && scrollTopDelta > this._lineHeight) { this._context.viewLayout.setScrollPositionSmooth(newScrollPosition); } else { this._context.viewLayout.setScrollPositionNow(newScrollPosition);