diff --git a/apps/app/src/react-app/domains/session/sidebar/workspace-session-list.tsx b/apps/app/src/react-app/domains/session/sidebar/workspace-session-list.tsx index 640ec1d3..2f5beb13 100644 --- a/apps/app/src/react-app/domains/session/sidebar/workspace-session-list.tsx +++ b/apps/app/src/react-app/domains/session/sidebar/workspace-session-list.tsx @@ -210,14 +210,10 @@ export function WorkspaceSessionList(props: Props) { useEffect(() => { const id = props.selectedWorkspaceId.trim(); if (!id) return; - // Keep the selected workspace expanded and collapse the rest by default. - // Without this, repeated switching leaves multiple large session trees open - // at once, which makes the sidebar increasingly expensive to render as - // histories grow. - setExpandedWorkspaceIds((previous) => { - if (previous.size === 1 && previous.has(id)) return previous; - return new Set([id]); - }); + // Keep the selected workspace visible without collapsing other workspaces. + // Collapsing the previous workspace on every cross-workspace session click + // makes the sidebar feel jumpy and hides the context the user just left. + expandWorkspace(id); }, [props.selectedWorkspaceId]); const previewCount = (workspaceId: string) =>