Skip to content
This repository was archived by the owner on Apr 1, 2026. It is now read-only.

Commit 3a9c215

Browse files
committed
fix(desktop): reactivity issue on route change
1 parent 7283bfa commit 3a9c215

4 files changed

Lines changed: 10 additions & 8 deletions

File tree

packages/desktop/src/context/session.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export const { use: useSession, provider: SessionProvider } = createSimpleContex
1515
const params = useParams()
1616
const sync = useSync()
1717
const name = createMemo(
18-
() => `${base64Encode(sync.data.project.worktree)}/session${params.id ? "/" + params.id : ""}`,
18+
() => `___${base64Encode(sync.data.project.worktree)}/session${params.id ? "/" + params.id : ""}`,
1919
)
2020

2121
const [store, setStore] = makePersisted(

packages/desktop/src/index.tsx

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import { LayoutProvider } from "./context/layout"
1212
import { GlobalSDKProvider } from "./context/global-sdk"
1313
import { SessionProvider } from "./context/session"
1414
import { base64Encode } from "./utils"
15-
import { createMemo } from "solid-js"
15+
import { createMemo, Show } from "solid-js"
1616

1717
const host = import.meta.env.VITE_OPENCODE_SERVER_HOST ?? "127.0.0.1"
1818
const port = import.meta.env.VITE_OPENCODE_SERVER_PORT ?? "4096"
@@ -51,10 +51,12 @@ render(
5151
<Route path="/" component={() => <Navigate href="session" />} />
5252
<Route
5353
path="/session/:id?"
54-
component={() => (
55-
<SessionProvider>
56-
<Session />
57-
</SessionProvider>
54+
component={(p) => (
55+
<Show when={p.params.id || true} keyed>
56+
<SessionProvider>
57+
<Session />
58+
</SessionProvider>
59+
</Show>
5860
)}
5961
/>
6062
</Route>

packages/desktop/src/pages/directory-layout.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { createMemo, Show, type ParentProps } from "solid-js"
1+
import { createMemo, type ParentProps } from "solid-js"
22
import { useParams } from "@solidjs/router"
33
import { SDKProvider } from "@/context/sdk"
44
import { SyncProvider } from "@/context/sync"

packages/desktop/src/pages/layout.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ export default function Layout(props: ParentProps) {
122122
?.replace(" hr.", "h")}
123123
</span>
124124
</div>
125-
<div class="hidden flex justify-between items-center self-stretch">
125+
<div class="hidden _flex justify-between items-center self-stretch">
126126
<span class="text-12-regular text-text-weak">{`${session.summary?.files || "No"} file${session.summary?.files !== 1 ? "s" : ""} changed`}</span>
127127
<Show when={session.summary}>
128128
{(summary) => <DiffChanges changes={summary()} />}

0 commit comments

Comments
 (0)