Fix recent workspaces when open in new window

This commit is contained in:
Gregory Schier
2025-06-06 14:10:30 -07:00
parent fcda6f8d32
commit f62e90297d
2 changed files with 20 additions and 16 deletions
+8 -3
View File
@@ -26,7 +26,13 @@ export function useRecentWorkspaces() {
export function useSubscribeRecentWorkspaces() {
useEffect(() => {
return jotaiStore.sub(activeWorkspaceIdAtom, async () => {
const unsub = jotaiStore.sub(activeWorkspaceIdAtom, updateRecentWorkspaces);
updateRecentWorkspaces().catch(console.error); // Update when opened in a new window
return unsub;
}, []);
}
async function updateRecentWorkspaces() {
const activeWorkspaceId = jotaiStore.get(activeWorkspaceIdAtom);
if (activeWorkspaceId == null) return;
@@ -37,7 +43,6 @@ export function useSubscribeRecentWorkspaces() {
const withoutActiveId = recentIds.filter((id) => id !== activeWorkspaceId);
const value = [activeWorkspaceId, ...withoutActiveId];
console.log('Recent workspaces update', activeWorkspaceId);
await setKeyValue({ namespace, key, value });
});
}, []);
}
+2 -3
View File
@@ -30,9 +30,8 @@ export function getKeyValueRaw({
key: string | string[];
}) {
const key = buildKeyValueKey(keyOrKeys);
const kv = jotaiStore
.get(keyValuesAtom)
.find((kv) => kv.namespace === namespace && kv?.key === key);
const keyValues = jotaiStore.get(keyValuesAtom);
const kv = keyValues.find((kv) => kv.namespace === namespace && kv?.key === key);
return kv ?? null;
}