diff options
Diffstat (limited to 'packages/app/src')
| -rw-r--r-- | packages/app/src/app.tsx | 9 | ||||
| -rw-r--r-- | packages/app/src/components/titlebar.tsx | 4 |
2 files changed, 10 insertions, 3 deletions
diff --git a/packages/app/src/app.tsx b/packages/app/src/app.tsx index 52a1dac6a..2790e7d3c 100644 --- a/packages/app/src/app.tsx +++ b/packages/app/src/app.tsx @@ -62,6 +62,9 @@ declare global { deepLinks?: string[] wsl?: boolean } + api?: { + setTitlebar?: (theme: { mode: "light" | "dark" }) => Promise<void> + } } } @@ -115,7 +118,11 @@ export function AppBaseProviders(props: ParentProps) { return ( <MetaProvider> <Font /> - <ThemeProvider> + <ThemeProvider + onThemeApplied={(_, mode) => { + void window.api?.setTitlebar?.({ mode }) + }} + > <LanguageProvider> <UiI18nBridge> <ErrorBoundary fallback={(error) => <ErrorPage error={error} />}> diff --git a/packages/app/src/components/titlebar.tsx b/packages/app/src/components/titlebar.tsx index b45f81150..3e2374f43 100644 --- a/packages/app/src/components/titlebar.tsx +++ b/packages/app/src/components/titlebar.tsx @@ -1,4 +1,4 @@ -import { createEffect, createMemo, Show, untrack } from "solid-js" +import { createEffect, createMemo, onCleanup, Show, untrack } from "solid-js" import { createStore } from "solid-js/store" import { useLocation, useNavigate, useParams } from "@solidjs/router" import { IconButton } from "@opencode-ai/ui/icon-button" @@ -282,7 +282,7 @@ export function Titlebar() { > <div id="opencode-titlebar-right" class="flex items-center gap-1 shrink-0 justify-end" /> <Show when={windows()}> - <div class="w-6 shrink-0" /> + {!tauriApi() && <div class="w-36 shrink-0" />} <div data-tauri-decorum-tb class="flex flex-row" /> </Show> </div> |
