summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAdam <[email protected]>2025-12-27 19:59:16 -0600
committerAdam <[email protected]>2025-12-27 19:59:16 -0600
commitd70e9fb01e6c7f4d3fd4c9ce6d13251108d6a7f4 (patch)
tree0b3efbd92cfc2a55d71a3d658ae8857456c00104
parentfc082a0f14852ff23ecac3c07d3a4a407b42e625 (diff)
downloadopencode-d70e9fb01e6c7f4d3fd4c9ce6d13251108d6a7f4.tar.gz
opencode-d70e9fb01e6c7f4d3fd4c9ce6d13251108d6a7f4.zip
chore(desktop): cleanup
-rw-r--r--packages/app/src/context/global-sync.tsx13
-rw-r--r--packages/app/src/pages/layout.tsx8
2 files changed, 7 insertions, 14 deletions
diff --git a/packages/app/src/context/global-sync.tsx b/packages/app/src/context/global-sync.tsx
index 50c8a9d1c..22fdd0276 100644
--- a/packages/app/src/context/global-sync.tsx
+++ b/packages/app/src/context/global-sync.tsx
@@ -82,7 +82,6 @@ function createGlobalSync() {
})
const children: Record<string, ReturnType<typeof createStore<State>>> = {}
- const permissionListeners: Set<(info: { directory: string; permission: Permission }) => void> = new Set()
function child(directory: string) {
if (!directory) console.error("No directory provided")
if (!children[directory]) {
@@ -330,7 +329,6 @@ function createGlobalSync() {
}
case "permission.updated": {
const permissions = store.permission[event.properties.sessionID]
- const isNew = !permissions || !permissions.find((p) => p.id === event.properties.id)
if (!permissions) {
setStore("permission", event.properties.sessionID, [event.properties])
} else {
@@ -347,11 +345,6 @@ function createGlobalSync() {
}),
)
}
- if (isNew) {
- for (const listener of permissionListeners) {
- listener({ directory, permission: event.properties })
- }
- }
break
}
case "permission.replied": {
@@ -439,12 +432,6 @@ function createGlobalSync() {
project: {
loadSessions,
},
- permission: {
- onUpdated(listener: (info: { directory: string; permission: Permission }) => void) {
- permissionListeners.add(listener)
- return () => permissionListeners.delete(listener)
- },
- },
}
}
diff --git a/packages/app/src/pages/layout.tsx b/packages/app/src/pages/layout.tsx
index 538a3b840..bd368bb6c 100644
--- a/packages/app/src/pages/layout.tsx
+++ b/packages/app/src/pages/layout.tsx
@@ -118,7 +118,13 @@ export default function Layout(props: ParentProps) {
})
onMount(() => {
- const unsub = globalSync.permission.onUpdated(({ directory, permission }) => {
+ const seenPermissions = new Set<string>()
+ const unsub = globalSDK.event.listen((e) => {
+ if (e.details?.type !== "permission.updated") return
+ const directory = e.name
+ const permission = e.details.properties
+ if (seenPermissions.has(permission.id)) return
+ seenPermissions.add(permission.id)
const currentDir = params.dir ? base64Decode(params.dir) : undefined
const currentSession = params.id
if (directory === currentDir && permission.sessionID === currentSession) return