From 1abd3ee918e842c154aa425e7bfcafe59bdbf9ba Mon Sep 17 00:00:00 2001 From: Naiyuan Qing <145280634+NevilleQingNY@users.noreply.github.com> Date: Tue, 31 Mar 2026 11:01:54 +0800 Subject: [PATCH] chore(ui): switch shadcn menuColor from inverted-translucent to default Replace semi-transparent glassmorphism menus with solid popover backgrounds. Re-downloaded dropdown-menu, context-menu, select, combobox, menubar, and button via `npx shadcn add --overwrite`. Also removed `focus:**:text-accent-foreground` from DropdownMenuCheckboxItem to prevent color cascade into nested components. Co-Authored-By: Claude Opus 4.6 (1M context) --- apps/web/components.json | 2 +- apps/web/components/ui/button.tsx | 6 +++--- apps/web/components/ui/combobox.tsx | 5 +---- apps/web/components/ui/context-menu.tsx | 7 ++----- apps/web/components/ui/dropdown-menu.tsx | 12 +++--------- apps/web/components/ui/menubar.tsx | 10 ++-------- apps/web/components/ui/select.tsx | 5 +---- 7 files changed, 13 insertions(+), 34 deletions(-) diff --git a/apps/web/components.json b/apps/web/components.json index 661ed3de..c38ff545 100644 --- a/apps/web/components.json +++ b/apps/web/components.json @@ -19,7 +19,7 @@ "lib": "@/lib", "hooks": "@/hooks" }, - "menuColor": "inverted-translucent", + "menuColor": "default", "menuAccent": "subtle", "registries": {} } diff --git a/apps/web/components/ui/button.tsx b/apps/web/components/ui/button.tsx index a91c4b5d..8dfb5192 100644 --- a/apps/web/components/ui/button.tsx +++ b/apps/web/components/ui/button.tsx @@ -6,17 +6,17 @@ import { cva, type VariantProps } from "class-variance-authority" import { cn } from "@/lib/utils" const buttonVariants = cva( - "group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", + "group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", { variants: { variant: { default: "bg-primary text-primary-foreground [a]:hover:bg-primary/80", outline: - "border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50 dark:aria-expanded:bg-muted dark:aria-expanded:text-foreground", + "border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50", secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground", ghost: - "hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50 dark:aria-expanded:bg-muted dark:aria-expanded:text-foreground", + "hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50", destructive: "bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40", link: "text-primary underline-offset-4 hover:underline", diff --git a/apps/web/components/ui/combobox.tsx b/apps/web/components/ui/combobox.tsx index 76d81f76..39e2b937 100644 --- a/apps/web/components/ui/combobox.tsx +++ b/apps/web/components/ui/combobox.tsx @@ -110,10 +110,7 @@ function ComboboxContent({ diff --git a/apps/web/components/ui/context-menu.tsx b/apps/web/components/ui/context-menu.tsx index c81dcd51..9c0eb98f 100644 --- a/apps/web/components/ui/context-menu.tsx +++ b/apps/web/components/ui/context-menu.tsx @@ -52,10 +52,7 @@ function ContextMenuContent({ > @@ -148,7 +145,7 @@ function ContextMenuSubContent({ return ( diff --git a/apps/web/components/ui/dropdown-menu.tsx b/apps/web/components/ui/dropdown-menu.tsx index 863706d0..f157768d 100644 --- a/apps/web/components/ui/dropdown-menu.tsx +++ b/apps/web/components/ui/dropdown-menu.tsx @@ -41,10 +41,7 @@ function DropdownMenuContent({ > @@ -138,10 +135,7 @@ function DropdownMenuSubContent({ return ( ) @@ -257,10 +254,7 @@ function MenubarSubContent({ return ( ) diff --git a/apps/web/components/ui/select.tsx b/apps/web/components/ui/select.tsx index 2c095fb0..e8021f5f 100644 --- a/apps/web/components/ui/select.tsx +++ b/apps/web/components/ui/select.tsx @@ -83,10 +83,7 @@ function SelectContent({