From 694e64b6b517cb966c2eccbdee5b82938bc01b14 Mon Sep 17 00:00:00 2001 From: Otavio Salvador Date: Fri, 25 Sep 2026 19:20:24 -0300 Subject: [PATCH] fix(web): make the empty workspace draggable on desktop The no-projects hero and the failed-draft state never rendered a WorkspacePageHeader, so on Windows and Linux (hidden title bar) the main pane had no drag region. With the sidebar collapsed, the window could not be moved at all. Render the shared header in Electron on both screens, like every other workspace page. Fixes #13711 --- apps/web/src/components/NoProjectsHero.tsx | 4 ++++ apps/web/src/routes/_chat.index.tsx | 1 + 2 files changed, 5 insertions(+) diff --git a/apps/web/src/components/NoProjectsHero.tsx b/apps/web/src/components/NoProjectsHero.tsx index de125d384eb1..2da1c0aadb8c 100644 --- a/apps/web/src/components/NoProjectsHero.tsx +++ b/apps/web/src/components/NoProjectsHero.tsx @@ -2,9 +2,11 @@ import { PlusIcon } from "lucide-react"; import { useCallback } from "react"; import { openCommandPalette } from "../commandPaletteBus"; +import { isElectron } from "../env"; import { Button } from "./ui/button"; import { Empty, EmptyDescription, EmptyHeader, EmptyTitle } from "./ui/empty"; import { SidebarInset } from "./ui/sidebar"; +import { WorkspacePageHeader } from "./WorkspacePageHeader"; export function NoProjectsHero() { const openAddProject = useCallback(() => openCommandPalette({ open: "add-project" }), []); @@ -12,6 +14,8 @@ export function NoProjectsHero() { return (
+ {/* The desktop window only moves where CSS opts in, so keep a titlebar strip. */} + {isElectron ? : null}
diff --git a/apps/web/src/routes/_chat.index.tsx b/apps/web/src/routes/_chat.index.tsx index 28cbbaedb768..61e9e7a2e3a2 100644 --- a/apps/web/src/routes/_chat.index.tsx +++ b/apps/web/src/routes/_chat.index.tsx @@ -91,6 +91,7 @@ function IndexDraftLanding() { function DraftStartError({ onRetry }: { readonly onRetry: () => void }) { return ( + {isElectron ? : null} Couldn’t start a new thread