Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@ export function AutomationDetailHeader({
</BreadcrumbList>
</Breadcrumb>

{/* Window-drag leaf standing in for the hidden TopBar. */}
<div className="drag h-full min-w-0 flex-1" />

<div className="flex items-center gap-1">
<Tooltip>
<TooltipTrigger asChild>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -295,6 +295,9 @@ function AutomationsPage() {
</Tabs>
</div>

{/* Window-drag leaf standing in for the hidden TopBar. */}
<div className="drag h-full min-w-0 flex-1" />

<div className="flex items-center gap-2">
<Button
asChild
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,10 @@ function DashboardLayout() {
const onV1WorkspaceRoute = currentWorkspaceMatch !== false;
const onV2WorkspaceRoute = v2WorkspaceMatch !== false;
const onNewWorkspaceRoute = matchRoute({ to: "/new-workspace" }) !== false;
const onDashboardViewRoute =
matchRoute({ to: "/automations", fuzzy: true }) !== false ||
matchRoute({ to: "/tasks", fuzzy: true }) !== false ||
matchRoute({ to: "/v2-workspaces", fuzzy: true }) !== false;
const versionMismatch =
(isV2CloudEnabled && onV1WorkspaceRoute) ||
(!isV2CloudEnabled && onV2WorkspaceRoute);
Expand Down Expand Up @@ -202,14 +206,16 @@ function DashboardLayout() {
// their header; collapsed rails host it via their headroom spacer plus the
// tab bar's leading inset. Only a fully closed sidebar keeps the TopBar,
// whose inset then keeps content clear of the macOS traffic lights. The
// new-workspace page brings its own drag strip, so it hides the TopBar
// whenever the expanded sidebar sits outside the column.
// new-workspace page brings its own drag strip, and the dashboard views
// (automations/tasks/workspaces) carry drag fillers in their own headers,
// so they hide the TopBar whenever the expanded sidebar sits outside the
// column — otherwise it renders as an empty strip above their headers.
const hideTopBar =
(onV2WorkspaceRoute &&
!versionMismatch &&
isV2CloudEnabled &&
isWorkspaceSidebarOpen) ||
(onNewWorkspaceRoute && sidebarOutsideColumn);
((onNewWorkspaceRoute || onDashboardViewRoute) && sidebarOutsideColumn);

return (
<div className="flex h-full w-full overflow-hidden">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@ export function TaskDetailHeader({
<HiArrowLeft className="w-4 h-4" />
</Button>
<span className="text-sm text-muted-foreground">{task.slug}</span>
{/* Window-drag leaf standing in for the hidden TopBar. */}
<div className="drag -my-4 min-w-0 flex-1 self-stretch" />
<div className="ml-auto flex items-center gap-1">
{task.externalUrl && (
<a
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,9 @@ export function TasksTopBar({
)}
</div>

{/* Window-drag leaf standing in for the hidden TopBar. */}
<div className="drag h-full min-w-0 flex-1" />

{/* Right side: create + view toggle + search */}
<div className="flex items-center gap-2">
{showTaskOnlyControls && (
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -200,6 +200,8 @@ function Header({
<span className="text-sm text-muted-foreground font-mono tabular-nums">
#{issueNumber}
</span>
{/* Window-drag leaf standing in for the hidden TopBar. */}
<div className="drag -my-4 min-w-0 flex-1 self-stretch" />
<div className="ml-auto flex items-center gap-1">
{url && (
<a
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -197,6 +197,8 @@ function Header({
<span className="text-sm text-muted-foreground font-mono tabular-nums">
#{prNumber}
</span>
{/* Window-drag leaf standing in for the hidden TopBar. */}
<div className="drag -my-4 min-w-0 flex-1 self-stretch" />
<div className="ml-auto flex items-center gap-1">
{url && (
<a
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,9 @@ export function V2WorkspacesHeader({
<div className="flex w-full flex-wrap items-center justify-between gap-3 px-6 py-4">
<h1 className="text-sm font-semibold tracking-tight">Workspaces</h1>

{/* Window-drag leaf standing in for the hidden TopBar. */}
<div className="drag -my-4 min-w-0 flex-1 self-stretch" />

<div className="flex flex-wrap items-center gap-2">
<InputGroup className="w-72">
<InputGroupAddon align="inline-start">
Expand Down
Loading