From fbb59af76ade2b37e47671c508016ecf14510d8a Mon Sep 17 00:00:00 2001 From: Murat Aslan Date: Fri, 2 Jan 2026 15:43:55 +0300 Subject: [PATCH] Fix: Replace terminal view lifecycle hack with Event.once --- src/vs/workbench/contrib/terminal/browser/terminalView.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/vs/workbench/contrib/terminal/browser/terminalView.ts b/src/vs/workbench/contrib/terminal/browser/terminalView.ts index 628e1313ba5c..01b62d5c1d2c 100644 --- a/src/vs/workbench/contrib/terminal/browser/terminalView.ts +++ b/src/vs/workbench/contrib/terminal/browser/terminalView.ts @@ -337,10 +337,8 @@ export class TerminalViewPane extends ViewPane { // be focused. So wait for connection to finish, then focus. const previousActiveElement = this.element.ownerDocument.activeElement; if (previousActiveElement) { - // TODO: Improve lifecycle management this event should be disposed after first fire - this._register(this._terminalService.onDidChangeConnectionState(() => { + this._register(Event.once(this._terminalService.onDidChangeConnectionState)(() => { // Only focus the terminal if the activeElement has not changed since focus() was called - // TODO: Hack if (previousActiveElement && dom.isActiveElement(previousActiveElement)) { this._terminalGroupService.showPanel(true); }