fix(app): prevent pane flicker across worktrees

This commit is contained in:
Brendan Allan 2026-07-28 16:25:04 +08:00
commit 368f2c8433
No known key found for this signature in database
GPG key ID: 41E835AEA046A32E
6 changed files with 118 additions and 68 deletions

View file

@ -1,6 +1,7 @@
import type { Message, Session, Part, SnapshotFileDiff, SessionStatus, Provider } from "@opencode-ai/sdk/v2"
import { createSimpleContext } from "@opencode-ai/ui/context"
import { PreloadMultiFileDiffResult } from "@pierre/diffs/ssr"
import type { Accessor } from "solid-js"
export type NormalizedProviderListResponse = {
all: Map<string, Provider>
@ -45,7 +46,7 @@ export const { use: useData, provider: DataProvider } = createSimpleContext({
name: "Data",
init: (props: {
data: Data
directory: string
directory: string | Accessor<string>
onNavigateToSession?: NavigateToSessionFn
onSessionHref?: SessionHrefFn
}) => {
@ -54,7 +55,7 @@ export const { use: useData, provider: DataProvider } = createSimpleContext({
return props.data
},
get directory() {
return props.directory
return typeof props.directory === "function" ? props.directory() : props.directory
},
navigateToSession: props.onNavigateToSession,
sessionHref: props.onSessionHref,