From 55837205484ea8aeef8c7c8e1ecf808bba1a2b56 Mon Sep 17 00:00:00 2001
From: urjitc <135136842+urjitc@users.noreply.github.com>
Date: Wed, 15 Apr 2026 22:46:56 +0000
Subject: [PATCH 1/2] Add PostHog Feedback button and align Share button
styling
---
.../workspace-canvas/WorkspaceHeader.tsx | 19 ++++++++++++++++---
1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/src/components/workspace-canvas/WorkspaceHeader.tsx b/src/components/workspace-canvas/WorkspaceHeader.tsx
index f0e616c7..64afe451 100644
--- a/src/components/workspace-canvas/WorkspaceHeader.tsx
+++ b/src/components/workspace-canvas/WorkspaceHeader.tsx
@@ -4,7 +4,7 @@ import type React from "react";
import { Fragment, useState, useRef, useEffect, useCallback, useMemo, useLayoutEffect } from "react";
import Link from "next/link";
import { usePathname } from "next/navigation";
-import { Search, X, ChevronRight, FolderOpen, Plus, Settings, Share2, Loader2, ExternalLink } from "lucide-react";
+import { Search, X, ChevronRight, FolderOpen, Plus, Settings, Share2, Loader2, ExternalLink, MessageSquareText } from "lucide-react";
import { cn } from "@/lib/utils";
import { Tooltip, TooltipContent, TooltipTrigger } from "@/components/ui/tooltip";
import { Kbd } from "@/components/ui/kbd";
@@ -1099,13 +1099,26 @@ export function WorkspaceHeader({
{/* Collaborator Avatars - show who's in the workspace */}
+ {/* Feedback button — PostHog survey targets this via CSS selector */}
+
+
+ {/* Share button — now with icon */}
{onOpenShare && (
)}
@@ -1130,7 +1143,7 @@ export function WorkspaceHeader({
- {/* New Button */}
+ {/* New Button - keeps bordered style as primary CTA */}
{addItem && (
From 6c664319591d3a030531db60e96e01d4de310f76 Mon Sep 17 00:00:00 2001
From: Urjit Chakraborty <135136842+urjitc@users.noreply.github.com>
Date: Wed, 15 Apr 2026 19:10:14 -0400
Subject: [PATCH 2/2] refactor(workspace-header): align toolbar controls and
text actions
Extract shared bordered toolbar tokens for Search and New so they stay
visually consistent. Style Feedback and Share as minimal text buttons
(borderless, color-only hover) with lighter padding. Keep controls in a
single gap-2 row: avatars, Feedback, Share, Search, New, then chat.
Made-with: Cursor
---
.../workspace-canvas/WorkspaceHeader.tsx | 48 +++++++++++--------
1 file changed, 28 insertions(+), 20 deletions(-)
diff --git a/src/components/workspace-canvas/WorkspaceHeader.tsx b/src/components/workspace-canvas/WorkspaceHeader.tsx
index 64afe451..08e7162e 100644
--- a/src/components/workspace-canvas/WorkspaceHeader.tsx
+++ b/src/components/workspace-canvas/WorkspaceHeader.tsx
@@ -67,6 +67,22 @@ const BREADCRUMB_DRAG_TARGET_CLASS =
"bg-blue-500/10 text-sidebar-foreground ring-1 ring-inset ring-blue-500/50";
const BREADCRUMB_MENU_ITEM_CLASS =
"flex items-center gap-1.5 rounded-md px-2 py-1.5 cursor-pointer";
+/** Shared shell for header toolbar controls — same border/hover as labeled actions; icon-only uses square hit target */
+const WORKSPACE_HEADER_TOOLBAR_BTN_BASE =
+ "h-8 rounded-md border border-sidebar-border text-muted-foreground hover:text-sidebar-foreground hover:bg-accent transition-colors pointer-events-auto cursor-pointer outline-none";
+/** Icon + label with border (primary toolbar CTA, e.g. New) */
+const WORKSPACE_HEADER_BORDERED_ACTION_CLASS = cn(
+ WORKSPACE_HEADER_TOOLBAR_BTN_BASE,
+ "inline-flex items-center gap-2 px-2 text-sm box-border whitespace-nowrap relative",
+);
+/** Text-only actions (Feedback, Share) — no border; hover shifts label/icon color only */
+const WORKSPACE_HEADER_TEXT_ACTION_CLASS =
+ "inline-flex h-8 items-center gap-1.5 rounded-md px-1 text-sm font-normal text-muted-foreground transition-colors hover:text-sidebar-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-sidebar-ring/50 pointer-events-auto cursor-pointer bg-transparent border-0 shadow-none";
+/** Icon-only (Search) — same visual family; tooltip + aria-label carry the name */
+const WORKSPACE_HEADER_TOOLBAR_ICON_ONLY_CLASS = cn(
+ WORKSPACE_HEADER_TOOLBAR_BTN_BASE,
+ "w-8 shrink-0 flex items-center justify-center",
+);
type BreadcrumbEntry =
| {
@@ -1100,27 +1116,24 @@ export function WorkspaceHeader({
{/* Feedback button — PostHog survey targets this via CSS selector */}
-
+
- {/* Share button — now with icon */}
{onOpenShare && (
-
+
)}
{/* Search - opens command palette */}
@@ -1128,10 +1141,7 @@ export function WorkspaceHeader({