fix: ProfileSwitcher re-fetches profiles after workspace creation so new workspace shows as active

This commit is contained in:
kumarabhirup 2026-02-19 21:56:37 -08:00
parent ec561894cb
commit 09f2d82c50
No known key found for this signature in database
GPG Key ID: DB7CA2289CAB0167
3 changed files with 6 additions and 2 deletions

View File

@ -437,6 +437,7 @@ export function Sidebar({
<ProfileSwitcher
onProfileSwitch={handleProfileSwitch}
onCreateWorkspace={() => setShowCreateWorkspace(true)}
activeProfileHint={String(sidebarRefreshKey)}
/>
</div>

View File

@ -13,9 +13,11 @@ export type ProfileInfo = {
type ProfileSwitcherProps = {
onProfileSwitch?: () => void;
onCreateWorkspace?: () => void;
/** Parent-tracked active profile — triggers a re-fetch when it changes (e.g. after workspace creation). */
activeProfileHint?: string | null;
};
export function ProfileSwitcher({ onProfileSwitch, onCreateWorkspace }: ProfileSwitcherProps) {
export function ProfileSwitcher({ onProfileSwitch, onCreateWorkspace, activeProfileHint }: ProfileSwitcherProps) {
const [profiles, setProfiles] = useState<ProfileInfo[]>([]);
const [activeProfile, setActiveProfile] = useState("default");
const [isOpen, setIsOpen] = useState(false);
@ -35,7 +37,7 @@ export function ProfileSwitcher({ onProfileSwitch, onCreateWorkspace }: ProfileS
useEffect(() => {
void fetchProfiles();
}, [fetchProfiles]);
}, [fetchProfiles, activeProfileHint]);
// Close dropdown on outside click
useEffect(() => {

View File

@ -520,6 +520,7 @@ export function WorkspaceSidebar({
<ProfileSwitcher
onProfileSwitch={onProfileSwitch}
onCreateWorkspace={() => setShowCreateWorkspace(true)}
activeProfileHint={activeProfile}
/>
</div>
)}