From 8c753cda71a20bf4972db1487da0f23c2603c6f8 Mon Sep 17 00:00:00 2001 From: t-amqi Date: Tue, 8 Aug 2017 15:56:33 -0700 Subject: [PATCH 1/2] Fix dangling active terminal on delete --- .../parts/terminal/electron-browser/terminalActions.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/vs/workbench/parts/terminal/electron-browser/terminalActions.ts b/src/vs/workbench/parts/terminal/electron-browser/terminalActions.ts index 39b7fc92d0e46..6815ba84e3d72 100644 --- a/src/vs/workbench/parts/terminal/electron-browser/terminalActions.ts +++ b/src/vs/workbench/parts/terminal/electron-browser/terminalActions.ts @@ -95,6 +95,9 @@ export class QuickKillTerminalAction extends Action { if (terminal) { terminal.dispose(); } + if (this.terminalService.activeTerminalInstanceIndex !== terminalIndex) { + this.terminalService.setActiveInstanceByIndex(Math.min(terminalIndex, this.terminalService.terminalInstances.length - 1)); + } return TPromise.timeout(50).then(result => this.quickOpenService.show(TERMINAL_PICKER_PREFIX, null)); } } From 82c26e0c9d9882895a0d093566f04e082ef267a9 Mon Sep 17 00:00:00 2001 From: t-amqi Date: Tue, 8 Aug 2017 16:35:11 -0700 Subject: [PATCH 2/2] Address changes --- .../parts/terminal/electron-browser/terminalActions.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vs/workbench/parts/terminal/electron-browser/terminalActions.ts b/src/vs/workbench/parts/terminal/electron-browser/terminalActions.ts index 6815ba84e3d72..87e36ec933113 100644 --- a/src/vs/workbench/parts/terminal/electron-browser/terminalActions.ts +++ b/src/vs/workbench/parts/terminal/electron-browser/terminalActions.ts @@ -95,7 +95,7 @@ export class QuickKillTerminalAction extends Action { if (terminal) { terminal.dispose(); } - if (this.terminalService.activeTerminalInstanceIndex !== terminalIndex) { + if (this.terminalService.terminalInstances.length > 0 && this.terminalService.activeTerminalInstanceIndex !== terminalIndex) { this.terminalService.setActiveInstanceByIndex(Math.min(terminalIndex, this.terminalService.terminalInstances.length - 1)); } return TPromise.timeout(50).then(result => this.quickOpenService.show(TERMINAL_PICKER_PREFIX, null));