From 064392ffc7fc58fcc3018fd2ba2df33fbb21f1de Mon Sep 17 00:00:00 2001 From: Julius Marminge Date: Wed, 2 Sep 2026 15:57:50 -0700 Subject: [PATCH] fix(web): offer browser profiles from the empty-panel launcher (#9279) --- apps/web/src/components/RightPanelTabs.tsx | 86 +++++++++++++++++----- 1 file changed, 69 insertions(+), 17 deletions(-) diff --git a/apps/web/src/components/RightPanelTabs.tsx b/apps/web/src/components/RightPanelTabs.tsx index 6d3ba4f1ba92c74f2cd727bb40f490b33aabba8b..667390ebd473d012d65f010545a0070c90aa3a6a 100644 --- a/apps/web/src/components/RightPanelTabs.tsx +++ b/apps/web/src/components/RightPanelTabs.tsx @@ -8,6 +8,7 @@ import type { import { getTerminalLabel } from "@t3tools/shared/terminalLabels"; import { Bot, + ChevronDown, FileDiff, Files, GitPullRequest, @@ -283,6 +284,8 @@ function SurfaceMenuItem(props: { */ function RightPanelEmptyState(props: { onAddBrowser: () => void; + onAddBrowserInProfile: (profileId: string) => void; + browserProfiles: ReadonlyArray<{ readonly id: string; readonly name: string }>; onAddTerminal: () => void; onAddDiff: () => void; onAddFiles: () => void; @@ -473,31 +476,78 @@ function RightPanelEmptyState(props: {
{actions.map((action) => action.available ? ( - + + {/* + Same choice the tab bar's "+" menu offers: the card opens the + default profile, the chevron picks another. Only worth showing + once there is something to choose between. + */} + {action.label === "Browser" && props.browserProfiles.length > 1 ? ( + + + } + > + + + + {props.browserProfiles.map((profile) => ( + props.onAddBrowserInProfile(profile.id)} + > + {profile.name} + + ))} + + + ) : null} +
) : (