Skip to content

Commit 62e1ffe

Browse files
adamleithpclaude
andcommitted
feat(channels): dim the channel list, brighten unread and the open channel
Channel rows and their # sit at muted-foreground, brightening on hover, so the list reads quietly by default. Two rows lift out of it: - unread: font-bold + foreground (bold stays unread's alone) - the channel you're viewing: foreground, normal weight Both already sit at full contrast, so they skip the hover brighten. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019G63f4afY9vsbKsvK654Wj
1 parent 41af896 commit 62e1ffe

1 file changed

Lines changed: 32 additions & 5 deletions

File tree

packages/ui/src/features/canvas/components/ChannelsList.tsx

Lines changed: 32 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -356,11 +356,26 @@ function ChannelSection({
356356
}}
357357
className="w-full min-w-0 justify-start gap-2 data-selected:bg-fill-selected data-selected:text-gray-12"
358358
>
359-
<HashIcon size={14} className="shrink-0 text-gray-9" />
359+
<HashIcon
360+
size={14}
361+
weight={isUnread ? "bold" : undefined}
362+
className={cn(
363+
"shrink-0",
364+
isUnread || isActive
365+
? "text-foreground"
366+
: "text-muted-foreground group-hover/button:text-foreground",
367+
)}
368+
/>
360369
<span
361370
className={cn(
362-
"truncate text-[13px] text-gray-12 group-hover/chan:pr-8",
371+
"truncate text-[13px] group-hover/chan:pr-8",
372+
// Bold is unread's alone; full contrast is shared with the
373+
// channel you're in. Either way there's no hover brighten
374+
// left to do, so those rows skip it.
363375
isUnread ? "font-bold" : "font-medium",
376+
isUnread || isActive
377+
? "text-foreground"
378+
: "text-muted-foreground group-hover/button:text-foreground",
364379
menuOpen && "pr-8",
365380
)}
366381
>
@@ -580,11 +595,23 @@ function PersonalChannelRow() {
580595
onClick={() => void open()}
581596
className="w-full min-w-0 justify-start gap-2 data-selected:bg-fill-selected data-selected:text-gray-12"
582597
>
583-
<HashIcon size={14} className="shrink-0 text-gray-9" />
598+
<HashIcon
599+
size={14}
600+
weight={isUnread ? "bold" : undefined}
601+
className={cn(
602+
"shrink-0",
603+
isUnread || isActive
604+
? "text-foreground"
605+
: "text-muted-foreground group-hover/button:text-foreground",
606+
)}
607+
/>
584608
<span
585609
className={cn(
586-
"truncate text-[13px] text-gray-12",
610+
"truncate text-[13px]",
587611
isUnread ? "font-bold" : "font-medium",
612+
isUnread || isActive
613+
? "text-foreground"
614+
: "text-muted-foreground group-hover/button:text-foreground",
588615
)}
589616
>
590617
{PERSONAL_CHANNEL_NAME}
@@ -594,7 +621,7 @@ function PersonalChannelRow() {
594621
<LockSimpleIcon
595622
size={12}
596623
className={cn(
597-
"ml-auto shrink-0 text-gray-9 transition-opacity",
624+
"ml-auto shrink-0 text-chrome-foreground transition-opacity",
598625
newMenuOpen
599626
? "opacity-0"
600627
: "opacity-100 group-hover/chan:opacity-0",

0 commit comments

Comments
 (0)