From 33238f35a1c2a9386d9426e2e71d89cdc0821a77 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Johannes=20Schie=C3=9Fl?=
<150372753+johannesschiessl@users.noreply.github.com>
Date: Wed, 5 Aug 2026 10:20:05 +0200
Subject: [PATCH] Fix startup loading background
- Match the pre-render and desktop window backgrounds to the dark theme
- Use shared background and foreground theme tokens in the app shell
---
apps/desktop/electron/main.ts | 1 +
apps/web/index.html | 4 ++--
apps/web/src/components/TitleBar.tsx | 2 +-
apps/web/src/main.tsx | 4 +---
apps/web/src/styles.css | 2 +-
5 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/apps/desktop/electron/main.ts b/apps/desktop/electron/main.ts
index dcb1a9e..2ef26ad 100644
--- a/apps/desktop/electron/main.ts
+++ b/apps/desktop/electron/main.ts
@@ -92,6 +92,7 @@ function createWindow() {
win = new BrowserWindow({
autoHideMenuBar: true,
+ backgroundColor: "#0a0a0a",
icon: getAppIconPath(),
titleBarStyle: "hidden",
titleBarOverlay: {
diff --git a/apps/web/index.html b/apps/web/index.html
index a24f6d5..e0c762e 100644
--- a/apps/web/index.html
+++ b/apps/web/index.html
@@ -1,5 +1,5 @@
-
+
Showtime
-
+
diff --git a/apps/web/src/components/TitleBar.tsx b/apps/web/src/components/TitleBar.tsx
index 4b8e97c..751758d 100644
--- a/apps/web/src/components/TitleBar.tsx
+++ b/apps/web/src/components/TitleBar.tsx
@@ -60,7 +60,7 @@ export function TitleBar({
: undefined
}
className={cn(
- "title-bar-height title-bar-padding fixed inset-x-0 top-0 z-10 flex min-w-0 select-none items-center bg-[#0a0a0a] px-2 pb-0 sm:px-3",
+ "title-bar-height title-bar-padding fixed inset-x-0 top-0 z-10 flex min-w-0 select-none items-center bg-background px-2 pb-0 sm:px-3",
desktopHost && "drag-region",
stack === "below-content" && "z-0",
stack === "above-content" && "z-30",
diff --git a/apps/web/src/main.tsx b/apps/web/src/main.tsx
index 92d207a..6981b08 100644
--- a/apps/web/src/main.tsx
+++ b/apps/web/src/main.tsx
@@ -24,8 +24,6 @@ if (import.meta.hot) import.meta.hot.dispose(uninstallMobileViewport);
restorePwaConnectionHandoff();
void registerServiceWorker();
const pairing = await capturePairingFragment();
-document.documentElement.classList.add("dark");
-
ReactDOM.createRoot(document.getElementById("root")!).render(
{pairing.status === "failed" ? (
@@ -58,7 +56,7 @@ function SynchronizedApp() {
)}
{!revoked && (
diff --git a/apps/web/src/styles.css b/apps/web/src/styles.css
index 7a0798f..4f6a6a3 100644
--- a/apps/web/src/styles.css
+++ b/apps/web/src/styles.css
@@ -139,7 +139,7 @@
overscroll-behavior: none;
}
body {
- @apply m-0 h-full min-w-80 overflow-hidden bg-[#0a0a0a] text-[#fafafa];
+ @apply m-0 h-full min-w-80 overflow-hidden bg-background text-foreground;
position: relative;
overscroll-behavior: none;
-webkit-tap-highlight-color: transparent;