From e5e29aca4941098463f19441d3e9c1fe2c5be34c Mon Sep 17 00:00:00 2001 From: Developer Date: Tue, 9 Jun 2026 12:18:28 +0000 Subject: [PATCH] fix: remove features string from window.open to enable tab reuse window.open(url, name, 'noopener,noreferrer') with a non-empty features string forces a new popup window and ignores the name for tab reuse. Remove the third parameter so the browser focuses existing named tabs. Quality gates: tsc --noEmit pass, npm run build pass, 80/80 tests pass --- .../features/session/session-card.tsx | 6 +- .../features/tool/instance-list.tsx | 433 +++++++++--------- apps/web/src/hooks/use-instance-actions.ts | 6 +- 3 files changed, 223 insertions(+), 222 deletions(-) diff --git a/apps/web/src/components/features/session/session-card.tsx b/apps/web/src/components/features/session/session-card.tsx index e2c38a6..536f16f 100644 --- a/apps/web/src/components/features/session/session-card.tsx +++ b/apps/web/src/components/features/session/session-card.tsx @@ -138,7 +138,11 @@ export function SessionCard({ )} {session.url && (

- + {session.url}

diff --git a/apps/web/src/components/features/tool/instance-list.tsx b/apps/web/src/components/features/tool/instance-list.tsx index 8c89616..7e18c34 100644 --- a/apps/web/src/components/features/tool/instance-list.tsx +++ b/apps/web/src/components/features/tool/instance-list.tsx @@ -11,7 +11,10 @@ import { } from "../../../api/sessions"; import type { ToolType } from "../../../api/tool-types"; import { CreateSessionForm } from "../session/create-session-form"; -import { listConfigProfiles, type ConfigProfile } from "../../../api/config-profiles"; +import { + listConfigProfiles, + type ConfigProfile, +} from "../../../api/config-profiles"; import { listSSHKeys, type SSHKey } from "../../../api/ssh-keys"; import { useEventContext } from "../../../state/events"; @@ -307,120 +310,117 @@ export const InstanceList = ({ )} {instance.status !== "running" && ( <> - {profileSelectInstanceId === instance.id ? ( -
- -
- {sshKeys.map((key) => ( -
- ) : ( - - )} + {sshKeys.map((key) => ( + + ))} +
+ + + + ) : ( + + )} )} {instance.status === "running" && ( @@ -455,119 +455,116 @@ export const InstanceList = ({ )} - {profileSelectInstanceId === instance.id ? ( -
- -
- {sshKeys.map((key) => ( -
- ) : ( - - )} + {sshKeys.map((key) => ( + + ))} +
+ + + + ) : ( + + )} )}