From f33b260afa13d89063d452f36eae44b6b403b340 Mon Sep 17 00:00:00 2001 From: emozilla Date: Fri, 21 Aug 2026 12:44:24 -0400 Subject: [PATCH] fix(desktop): boot overlays stay opaque under window glass MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The full-screen boot surfaces (connecting, onboarding, boot failure, root crash fallback) paint their backdrop with --ui-chat-surface-background, which the glass field turns transparent so can be the one painter (0483133842). That was harmless while glass shipped off; once it shipped on by default (be3166607e) every boot overlay became a window onto the shell behind it. These overlays mask the whole app, so they declare data-glass-opaque — the existing contract for surfaces that paint over siblings — which pins the token back to opaque chrome under glass and changes nothing when glass is off. --- .../src/components/boot-failure-overlay.tsx | 14 ++++++++++++-- apps/desktop/src/components/error-boundary.tsx | 7 ++++++- .../src/components/gateway-connecting-overlay.tsx | 4 ++++ apps/desktop/src/components/onboarding/index.tsx | 4 ++++ 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/apps/desktop/src/components/boot-failure-overlay.tsx b/apps/desktop/src/components/boot-failure-overlay.tsx index f07366f289..e479ce5bb9 100644 --- a/apps/desktop/src/components/boot-failure-overlay.tsx +++ b/apps/desktop/src/components/boot-failure-overlay.tsx @@ -284,7 +284,12 @@ export function BootFailureOverlay() { if (view === 'connect') { return ( -
+
{/* Subtle back affordance (projects/overlay idiom): muted → foreground on hover, no divider. */} @@ -307,7 +312,12 @@ export function BootFailureOverlay() { } return ( -
+
diff --git a/apps/desktop/src/components/error-boundary.tsx b/apps/desktop/src/components/error-boundary.tsx index 6ec1e4ca20..2d6593b629 100644 --- a/apps/desktop/src/components/error-boundary.tsx +++ b/apps/desktop/src/components/error-boundary.tsx @@ -143,7 +143,12 @@ function RootErrorFallback({ error, reset }: ErrorBoundaryFallbackProps) { const { t } = useI18n() return ( -
+