From 8ddf9ff393a729a4dde4e236a4674b955dce95fc Mon Sep 17 00:00:00 2001 From: Christopher Hight Date: Fri, 21 Aug 2026 13:30:02 -0700 Subject: [PATCH] Update chevrons are updated for better UI --- .../components/dashboard/SettingsButton.jsx | 58 ++++++++++--------- 1 file changed, 32 insertions(+), 26 deletions(-) diff --git a/client/src/components/dashboard/SettingsButton.jsx b/client/src/components/dashboard/SettingsButton.jsx index 8038b94..f574901 100644 --- a/client/src/components/dashboard/SettingsButton.jsx +++ b/client/src/components/dashboard/SettingsButton.jsx @@ -183,7 +183,7 @@ export function SettingsButton() { {/**/} - + @@ -192,32 +192,36 @@ export function SettingsButton() { - + {/* LEFT GLASS CRESCENT */} {canScrollLeft && ( tabsRef.current.scrollBy({left: -200, behavior: 'smooth'})} - // The Glass Look hugging the left pill edge bg={{base: "rgba(255, 255, 255, 0.7)", _dark: "rgba(30, 30, 30, 0.8)"}} - backdropFilter="blur(8px)" + backdropFilter="blur(1px)" borderTopLeftRadius="full" borderBottomLeftRadius="full" - // Fades the inner edge so it blends into the track - boxShadow={{ - base: "10px 0 15px -5px rgba(255,255,255,0.8)", - _dark: "10px 0 15px -5px rgba(30,30,30,0.9)" - }} + + // THE MAGIC: Bites a transparent circle out of the flat right side! + WebkitMaskImage="radial-gradient(circle at 100% 50%, transparent 30px, black 19px)" + maskImage="radial-gradient(circle at 100% 50%, transparent 30px, black 35px)" + color={{base: "gray.600", _dark: "gray.300"}} - _hover={{color: {base: "blue.500", _dark: "blue.300"}}} + transition="background-color 0.2s" + _hover={{ + color: {base: "blue.500", _dark: "blue.300"}, + bg: {base: "rgba(255, 255, 255, 0.9)", _dark: "rgba(40, 40, 40, 0.95)"} + }} > - + {/* Shifted slightly left to optically center it in the crescent mass */} + )} tabsRef.current.scrollBy({left: 200, behavior: 'smooth'})} - // The Glass Look hugging the right pill edge bg={{base: "rgba(255, 255, 255, 0.7)", _dark: "rgba(30, 30, 30, 0.8)"}} - backdropFilter="blur(8px)" + backdropFilter="blur(1px)" borderTopRightRadius="full" borderBottomRightRadius="full" - boxShadow={{ - base: "-10px 0 15px -5px rgba(255,255,255,0.8)", - _dark: "-10px 0 15px -5px rgba(30,30,30,0.9)" - }} + + // THE MAGIC: Bites a transparent circle out of the flat left side! + WebkitMaskImage="radial-gradient(circle at 0% 50%, transparent 30px, black 19px)" + maskImage="radial-gradient(circle at 0% 50%, transparent 30px, black 35px)" + color={{base: "gray.600", _dark: "gray.300"}} - _hover={{color: {base: "blue.500", _dark: "blue.300"}}} + transition="background-color 0.2s" + _hover={{ + color: {base: "blue.500", _dark: "blue.300"}, + bg: {base: "rgba(255, 255, 255, 0.9)", _dark: "rgba(40, 40, 40, 0.95)"} + }} > - + {/* Shifted slightly right to optically center it in the crescent mass */} + )} @@ -330,7 +336,7 @@ export function SettingsButton() { onClick={() => handleAddWidget(widget.id, sizeKey)} color={{base: "blue.600", _dark: "blue.300"}} > - {/* 🚨 THE ABBREVIATION ICON: Always visible */} + {/* THE ABBREVIATION ICON: Always visible */} - {/* 🚨 THE EXPANDED TEXT: Only visible on hover */} + {/* THE EXPANDED TEXT: Only visible on hover */} Add Widget ))}