From d616aaa4f8e31cdee04c9cdf1c80b8d905d1d9ff Mon Sep 17 00:00:00 2001 From: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Wed, 28 Apr 2021 12:51:40 -0700 Subject: [PATCH] Ensure all viewport scroll events are handled by buffer Some scroll events were never making it to the buffer service when using a trackpad. See microsoft/vscode#121017 Fixes #3311 --- src/browser/Terminal.ts | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/browser/Terminal.ts b/src/browser/Terminal.ts index 6400743c7..e9241a8c1 100644 --- a/src/browser/Terminal.ts +++ b/src/browser/Terminal.ts @@ -476,7 +476,7 @@ export class Terminal extends CoreTerminal implements ITerminal { this._instantiationService.setService(IMouseService, this._mouseService); this.viewport = this._instantiationService.createInstance(Viewport, - (amount: number) => this.scrollLines(amount, false, ScrollSource.VIEWPORT), + (amount: number) => this.scrollLines(amount, true, ScrollSource.VIEWPORT), this._viewportElement, this._viewportScrollArea ); @@ -511,9 +511,7 @@ export class Terminal extends CoreTerminal implements ITerminal { this.textarea!.select(); })); this.register(this._onScroll.event(ev => { - if (ev.source !== ScrollSource.VIEWPORT) { - this.viewport!.syncScrollArea(); - } + this.viewport!.syncScrollArea(); this._selectionService!.refresh(); })); this.register(addDisposableDomListener(this._viewportElement, 'scroll', () => this._selectionService!.refresh()));