diff options
| author | Brendan Allan <[email protected]> | 2026-04-23 18:57:04 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-04-23 18:57:04 +0800 |
| commit | 6002500bc0a65aab3da7310797b5498ac0dae18c (patch) | |
| tree | 55acc497734cf8703ddd6109efab5346c9a91b8c /packages/app/src/context/layout.tsx | |
| parent | 785f3589abb5b43d4e7d6d27e308188d961787de (diff) | |
| download | opencode-6002500bc0a65aab3da7310797b5498ac0dae18c.tar.gz opencode-6002500bc0a65aab3da7310797b5498ac0dae18c.zip | |
feat(project): add icon_url_override field to projects (#23955)
Diffstat (limited to 'packages/app/src/context/layout.tsx')
| -rw-r--r-- | packages/app/src/context/layout.tsx | 34 |
1 files changed, 2 insertions, 32 deletions
diff --git a/packages/app/src/context/layout.tsx b/packages/app/src/context/layout.tsx index 90e357bd3..97d9cacbb 100644 --- a/packages/app/src/context/layout.tsx +++ b/packages/app/src/context/layout.tsx @@ -391,37 +391,7 @@ export const { use: useLayout, provider: LayoutProvider } = createSimpleContext( ? globalSync.data.project.find((x) => x.id === projectID) : globalSync.data.project.find((x) => x.worktree === project.worktree) - const local = childStore.projectMeta - const localOverride = - local?.name !== undefined || - local?.commands?.start !== undefined || - local?.icon?.override !== undefined || - local?.icon?.color !== undefined - - const base = { - ...metadata, - ...project, - icon: { - url: metadata?.icon?.url, - override: metadata?.icon?.override ?? childStore.icon, - color: metadata?.icon?.color, - }, - } - - const isGlobal = projectID === "global" || (metadata?.id === undefined && localOverride) - if (!isGlobal) return base - - return { - ...base, - id: base.id ?? "global", - name: local?.name, - commands: local?.commands, - icon: { - url: base.icon?.url, - override: local?.icon?.override, - color: local?.icon?.color, - }, - } + return { ...metadata, ...project } } const roots = createMemo(() => { @@ -516,7 +486,7 @@ export const { use: useLayout, provider: LayoutProvider } = createSimpleContext( } for (const project of projects) { - if (project.icon?.color || project.icon.url) continue + if (project.icon?.color || project.icon?.override || project.icon?.url) continue const worktree = project.worktree const existing = colors[worktree] const color = existing ?? pickAvailableColor(used) |
