diff --git a/packages/tui/src/component/session-tabs.tsx b/packages/tui/src/component/session-tabs.tsx index 3d2d979bbb9..cf8b2b1dde5 100644 --- a/packages/tui/src/component/session-tabs.tsx +++ b/packages/tui/src/component/session-tabs.tsx @@ -341,6 +341,9 @@ export function SessionTabs(props: { controller?: SessionTabsController; animati fg={closeColor()} selectable={false} onMouseUp={(event) => { + // The close mark only renders while hovered; without motion events a click can + // land here first, and must select the tab instead of closing it invisibly. + if (hovered() !== tab.sessionID) return event.stopPropagation() tabs.close(tab === NEW_SESSION_TAB ? undefined : tab.sessionID) }}