From 8bae7fdbe415d80c0c7364527f458c73eb2e8fce Mon Sep 17 00:00:00 2001 From: spencrmartin Date: Wed, 24 Sep 2025 16:17:48 -0400 Subject: [PATCH] feat: Standardize bottom bar component styling and add responsive design - Add consistent text labels to all bottom bar components: - Action button: now shows 'Actions' text - Attach button: now shows 'Attach' text - Goosehints button: now shows 'Hints' text - All components now follow icon + text pattern - Standardize spacing across all bottom bar components: - Display components (Directory, Cost, Model, Mode): px-1 padding - Action buttons (Actions, Attach, Hints): px-0 padding - Consistent visual hierarchy based on component behavior - Add responsive design at 1050px breakpoint: - Under 1050px: Show icons only for compact mobile/tablet view - 1050px and above: Show icons + text for desktop view - Smooth transitions with proper icon spacing adjustments - Improve visual consistency: - Uniform hover states and transitions - Consistent icon sizing (w-4 h-4) and spacing (mr-1) - Professional appearance across all screen sizes Components updated: - ChatInput.tsx - Action, Attach, and Hints buttons - DirSwitcher.tsx - Directory display - CostTracker.tsx - Cost display - ModelsBottomBar.tsx - Model selector - BottomMenuModeSelection.tsx - Mode selector --- ui/desktop/src/components/ChatInput.tsx | 53 +++++++++---------- .../bottom_menu/BottomMenuModeSelection.tsx | 8 +-- .../components/bottom_menu/CostTracker.tsx | 12 ++--- .../components/bottom_menu/DirSwitcher.tsx | 6 +-- .../models/bottom_bar/ModelsBottomBar.tsx | 6 +-- 5 files changed, 42 insertions(+), 43 deletions(-) diff --git a/ui/desktop/src/components/ChatInput.tsx b/ui/desktop/src/components/ChatInput.tsx index 1f5bd29586..a79327fbaa 100644 --- a/ui/desktop/src/components/ChatInput.tsx +++ b/ui/desktop/src/components/ChatInput.tsx @@ -1665,7 +1665,7 @@ export default function ChatInput({ {/* Secondary actions and controls row below input */}
{/* Directory path */} - +
{/* Action button */} @@ -1676,9 +1676,10 @@ export default function ChatInput({ onClick={handleActionButtonClick} variant="ghost" size="sm" - className="flex items-center justify-center text-text-default/70 hover:text-text-default text-xs cursor-pointer transition-colors" + className="flex items-center text-text-default/70 hover:text-text-default text-xs cursor-pointer transition-colors px-0" > - + + Actions Quick Actions @@ -1693,9 +1694,10 @@ export default function ChatInput({ onClick={handleFileSelect} variant="ghost" size="sm" - className="flex items-center justify-center text-text-default/70 hover:text-text-default text-xs cursor-pointer transition-colors" + className="flex items-center text-text-default/70 hover:text-text-default text-xs cursor-pointer transition-colors px-0" > - + + Attach Attach file or directory @@ -1707,13 +1709,11 @@ export default function ChatInput({ {/* Cost Tracker */} {COST_TRACKING_ENABLED && ( <> -
- -
+ )} @@ -1731,21 +1731,20 @@ export default function ChatInput({
-
- - - - - Configure goosehints - -
+ + + + + Configure goosehints +
{
- - - {getValueByKey(gooseMode).toLowerCase()} - + {all_goose_modes.map((mode) => ( diff --git a/ui/desktop/src/components/bottom_menu/CostTracker.tsx b/ui/desktop/src/components/bottom_menu/CostTracker.tsx index 54cf6620e9..39f2c338e9 100644 --- a/ui/desktop/src/components/bottom_menu/CostTracker.tsx +++ b/ui/desktop/src/components/bottom_menu/CostTracker.tsx @@ -185,8 +185,8 @@ export function CostTracker({ inputTokens = 0, outputTokens = 0, sessionCosts }: if (isLoading) { return ( <> -
- ... +
+ ...
@@ -205,9 +205,9 @@ export function CostTracker({ inputTokens = 0, outputTokens = 0, sessionCosts }: <> -
+
- 0.0000 + 0.0000
@@ -234,7 +234,7 @@ export function CostTracker({ inputTokens = 0, outputTokens = 0, sessionCosts }:
- 0.0000 + 0.0000
{getUnavailableTooltip()} @@ -291,7 +291,7 @@ export function CostTracker({ inputTokens = 0, outputTokens = 0, sessionCosts }:
- {formatCost(totalCost)} + {formatCost(totalCost)}
{getTooltipContent()} diff --git a/ui/desktop/src/components/bottom_menu/DirSwitcher.tsx b/ui/desktop/src/components/bottom_menu/DirSwitcher.tsx index d5d0c82428..ab1944ffab 100644 --- a/ui/desktop/src/components/bottom_menu/DirSwitcher.tsx +++ b/ui/desktop/src/components/bottom_menu/DirSwitcher.tsx @@ -31,11 +31,11 @@ export const DirSwitcher: React.FC = ({ className = '' }) => { diff --git a/ui/desktop/src/components/settings/models/bottom_bar/ModelsBottomBar.tsx b/ui/desktop/src/components/settings/models/bottom_bar/ModelsBottomBar.tsx index 3dd8fc9ea2..01718fba61 100644 --- a/ui/desktop/src/components/settings/models/bottom_bar/ModelsBottomBar.tsx +++ b/ui/desktop/src/components/settings/models/bottom_bar/ModelsBottomBar.tsx @@ -228,10 +228,10 @@ export default function ModelsBottomBar({
- +
- - + + {displayModel} {isLeadWorkerActive && modelMode && ( ({modelMode})