From fa9126c4e6c19cfb9276cd1ecbbef06eac34cc78 Mon Sep 17 00:00:00 2001 From: Eugene Pankov Date: Wed, 25 Aug 2021 21:48:25 +0200 Subject: [PATCH 1/2] input: support AltGraph as a third level shift modifier --- src/browser/Terminal.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/browser/Terminal.ts b/src/browser/Terminal.ts index 2a81d928..fc725122 100644 --- a/src/browser/Terminal.ts +++ b/src/browser/Terminal.ts @@ -1090,10 +1090,11 @@ export class Terminal extends CoreTerminal implements ITerminal { this._keyDownHandled = true; } - private _isThirdLevelShift(browser: IBrowser, ev: IKeyboardEvent): boolean { + private _isThirdLevelShift(browser: IBrowser, ev: KeyboardEvent): boolean { const thirdLevelKey = (browser.isMac && !this.options.macOptionIsMeta && ev.altKey && !ev.ctrlKey && !ev.metaKey) || - (browser.isWindows && ev.altKey && ev.ctrlKey && !ev.metaKey); + (browser.isWindows && ev.altKey && ev.ctrlKey && !ev.metaKey) || + (browser.isWindows && ev.getModifierState('AltGraph')); if (ev.type === 'keypress') { return thirdLevelKey; From f2ef2b0b040c043ef786629f45cf5bfa0d012199 Mon Sep 17 00:00:00 2001 From: Eugene Pankov Date: Sat, 28 Aug 2021 14:13:27 +0200 Subject: [PATCH 2/2] input: treat AltGraph as a dead key too --- src/browser/Terminal.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/browser/Terminal.ts b/src/browser/Terminal.ts index 2a81d928..b8d2091b 100644 --- a/src/browser/Terminal.ts +++ b/src/browser/Terminal.ts @@ -1032,7 +1032,7 @@ export class Terminal extends CoreTerminal implements ITerminal { return false; } - if (event.key === 'Dead') { + if (event.key === 'Dead' || event.key === 'AltGraph') { this._unprocessedDeadKey = true; }