Skip to content

Commit d33446f

Browse files
authored
Merge pull request microsoft#226974 from microsoft/tyriar/226760
Don't verify completions are received on Windows
2 parents 7380713 + 73aa45b commit d33446f

File tree

1 file changed

+15
-10
lines changed

1 file changed

+15
-10
lines changed

src/vs/workbench/contrib/terminalContrib/suggest/browser/terminal.suggest.contribution.ts

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import { AutoOpenBarrier } from 'vs/base/common/async';
99
import { Event } from 'vs/base/common/event';
1010
import { KeyCode } from 'vs/base/common/keyCodes';
1111
import { DisposableStore, MutableDisposable, toDisposable } from 'vs/base/common/lifecycle';
12+
import { isWindows } from 'vs/base/common/platform';
1213
import { localize2 } from 'vs/nls';
1314
import { IConfigurationService } from 'vs/platform/configuration/common/configuration';
1415
import { ContextKeyExpr, IContextKey, IContextKeyService, IReadableSet } from 'vs/platform/contextkey/common/contextkey';
@@ -170,16 +171,20 @@ class TerminalSuggestContribution extends DisposableStore implements ITerminalCo
170171

171172
// If completions are requested, pause and queue input events until completions are
172173
// received. This fixing some problems in PowerShell, particularly enter not executing
173-
// when typing quickly and some characters being printed twice.
174-
let barrier: AutoOpenBarrier | undefined;
175-
this.add(addon.onDidRequestCompletions(() => {
176-
barrier = new AutoOpenBarrier(2000);
177-
this._instance.pauseInputEvents(barrier);
178-
}));
179-
this.add(addon.onDidReceiveCompletions(() => {
180-
barrier?.open();
181-
barrier = undefined;
182-
}));
174+
// when typing quickly and some characters being printed twice. On Windows this isn't
175+
// needed because inputs are _not_ echoed when not handled immediately.
176+
// TODO: This should be based on the OS of the pty host, not the client
177+
if (!isWindows) {
178+
let barrier: AutoOpenBarrier | undefined;
179+
this.add(addon.onDidRequestCompletions(() => {
180+
barrier = new AutoOpenBarrier(2000);
181+
this._instance.pauseInputEvents(barrier);
182+
}));
183+
this.add(addon.onDidReceiveCompletions(() => {
184+
barrier?.open();
185+
barrier = undefined;
186+
}));
187+
}
183188
}
184189
}
185190
}

0 commit comments

Comments
 (0)