feat(desktop): properly integrate window controls on windows (#9835)

This commit is contained in:
Brendan Allan
2026-01-21 22:35:05 +08:00
committed by GitHub
parent 7ed448a7e8
commit d00b8df770
8 changed files with 373 additions and 23 deletions

View File

@@ -19,6 +19,7 @@ import { createSignal, Show, Accessor, JSX, createResource, onMount, onCleanup }
import { UPDATER_ENABLED } from "./updater"
import { createMenu } from "./menu"
import pkg from "../package.json"
import "./styles.css"
const root = document.getElementById("root")
if (import.meta.env.DEV && !(root instanceof HTMLElement)) {
@@ -359,7 +360,11 @@ type ServerReadyData = { url: string; password: string | null }
// Gate component that waits for the server to be ready
function ServerGate(props: { children: (data: Accessor<ServerReadyData>) => JSX.Element }) {
const [serverData] = createResource<ServerReadyData>(() => invoke("ensure_server_ready"))
const [serverData] = createResource<ServerReadyData>(() =>
invoke("ensure_server_ready").then((v) => {
return new Promise((res) => setTimeout(() => res(v), 2000))
}),
)
return (
// Not using suspense as not all components are compatible with it (undefined refs)
@@ -368,6 +373,7 @@ function ServerGate(props: { children: (data: Accessor<ServerReadyData>) => JSX.
fallback={
<div class="h-screen w-screen flex flex-col items-center justify-center bg-background-base">
<Splash class="w-16 h-20 opacity-50 animate-pulse" />
<div data-tauri-decorum-tb class="flex flex-row absolute top-0 right-0 z-10 h-10" />
</div>
}
>

View File

@@ -0,0 +1,7 @@
button.decorum-tb-btn,
button#decorum-tb-minimize,
button#decorum-tb-maximize,
button#decorum-tb-close,
div[data-tauri-decorum-tb] {
height: calc(var(--spacing) * 10) !important;
}