diff --git a/src/renderer/src/components/terminal-pane/use-cold-parked-terminal-presentation.test.ts b/src/renderer/src/components/terminal-pane/use-cold-parked-terminal-presentation.test.ts index 1aa77fefd..d1a2f2089 100644 --- a/src/renderer/src/components/terminal-pane/use-cold-parked-terminal-presentation.test.ts +++ b/src/renderer/src/components/terminal-pane/use-cold-parked-terminal-presentation.test.ts @@ -48,6 +48,17 @@ describe('useColdParkedTerminalPresentation', () => { expect(presentedTargetId(hook.result)).toBe('b') }) + it('clears the terminal presentation when the group activates non-terminal content', () => { + const hook = renderPresentationHook({ + desiredTargetId: 'a', + coldParkedTargetIds: new Set() + }) + + hook.rerender({ desiredTargetId: null, coldParkedTargetIds: new Set() }) + + expect(presentedTargetId(hook.result)).toBeNull() + }) + it('retains the prior target until a cold target settles', () => { const hook = renderPresentationHook({ desiredTargetId: 'a', diff --git a/src/renderer/src/components/terminal-pane/use-cold-parked-terminal-presentation.ts b/src/renderer/src/components/terminal-pane/use-cold-parked-terminal-presentation.ts index aa52944d3..400805638 100644 --- a/src/renderer/src/components/terminal-pane/use-cold-parked-terminal-presentation.ts +++ b/src/renderer/src/components/terminal-pane/use-cold-parked-terminal-presentation.ts @@ -56,7 +56,7 @@ export function resolveColdParkedPresentation( presentedTargetId: null, pendingTargetId: null } - if (entry.pendingTargetId === desiredTargetId) { + if (entry.pendingTargetId !== null && entry.pendingTargetId === desiredTargetId) { next.set(scopeId, entry) continue }