From 5f074edc3a2ca80db4fd51360304bc070279a218 Mon Sep 17 00:00:00 2001 From: Adam <2363879+adamdotdevin@users.noreply.github.com> Date: Mon, 29 Dec 2025 10:42:08 -0600 Subject: fix(desktop): performance/jankiness --- packages/app/src/context/global-sync.tsx | 4 ++-- packages/app/src/context/sync.tsx | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'packages/app/src/context') diff --git a/packages/app/src/context/global-sync.tsx b/packages/app/src/context/global-sync.tsx index e1dcf15fc..a6851aecb 100644 --- a/packages/app/src/context/global-sync.tsx +++ b/packages/app/src/context/global-sync.tsx @@ -124,7 +124,7 @@ function createGlobalSync() { const updated = new Date(s.time.updated).getTime() return updated > fourHoursAgo }) - setStore("session", sessions) + setStore("session", reconcile(sessions, { key: "id" })) }) .catch((err) => { console.error("Failed to load sessions", err) @@ -263,7 +263,7 @@ function createGlobalSync() { setStore("session_diff", event.properties.sessionID, reconcile(event.properties.diff, { key: "file" })) break case "todo.updated": - setStore("todo", event.properties.sessionID, reconcile(event.properties.todos)) + setStore("todo", event.properties.sessionID, reconcile(event.properties.todos, { key: "id" })) break case "session.status": { setStore("session_status", event.properties.sessionID, reconcile(event.properties.status)) diff --git a/packages/app/src/context/sync.tsx b/packages/app/src/context/sync.tsx index dad035fb3..05156613a 100644 --- a/packages/app/src/context/sync.tsx +++ b/packages/app/src/context/sync.tsx @@ -81,7 +81,7 @@ export const { use: useSync, provider: SyncProvider } = createSimpleContext({ }), ) - setStore("todo", sessionID, reconcile(todo.data ?? [])) + setStore("todo", sessionID, reconcile(todo.data ?? [], { key: "id" })) setStore( "message", sessionID, @@ -115,7 +115,7 @@ export const { use: useSync, provider: SyncProvider } = createSimpleContext({ .slice() .sort((a, b) => a.id.localeCompare(b.id)) .slice(0, store.limit) - setStore("session", sessions) + setStore("session", reconcile(sessions, { key: "id" })) }) }, more: createMemo(() => store.session.length >= store.limit), -- cgit v1.2.3