summaryrefslogtreecommitdiffhomepage
path: root/packages/app/src/context
diff options
context:
space:
mode:
authorAdam <[email protected]>2025-12-29 09:47:53 -0600
committerAdam <[email protected]>2025-12-29 09:47:57 -0600
commit831e9bce51c035ec22ce9562bf0257d6b59b2fe4 (patch)
treeb6e86b44cbc980d737a63cb571cb61a9003d237b /packages/app/src/context
parent5de73abd820d9425e82f85f95f50568332ca7cdc (diff)
downloadopencode-831e9bce51c035ec22ce9562bf0257d6b59b2fe4.tar.gz
opencode-831e9bce51c035ec22ce9562bf0257d6b59b2fe4.zip
fix(desktop): jankiness
Diffstat (limited to 'packages/app/src/context')
-rw-r--r--packages/app/src/context/global-sync.tsx4
-rw-r--r--packages/app/src/context/sync.tsx4
2 files changed, 4 insertions, 4 deletions
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),