@@ -6,6 +6,7 @@ import { computed, h, ref, useTemplateRef } from 'vue'
66import { deriveSidebarCapacity , docksSplitGroupsWithCapacity , getGroupMembersGrouped } from ' ../../state/dock-settings'
77import { sharedStateToRef } from ' ../../state/docks'
88import { setDocksSidebarOverflowPanel , setFloatingTooltip , useDocksSidebarOverflowPanel } from ' ../../state/floating-tooltip'
9+ import { accentActiveStyle , accentTextStyle } from ' ../../utils/accent-color'
910import DockGroupPopover from ' ./DockGroupPopover.vue'
1011import DockIcon from ' ./DockIcon.vue'
1112
@@ -125,13 +126,22 @@ watchDebounced(
125126
126127// Highlight the button when the hidden selection lives here, or while open.
127128const moreButtonActive = computed (() => selectedInOverflow .value || isOverflowPanelVisible .value )
129+
130+ // Accent styling, mirroring DockGroupPopover: falls back to the default
131+ // Uno classes below when the group sets no `accentColor`.
132+ const anchorStyle = computed (() => accentTextStyle (props .group .accentColor ))
133+ function memberStyle(memberId : string ) {
134+ return props .selectedId === memberId ? accentActiveStyle (props .group .accentColor ) : undefined
135+ }
136+ const moreButtonStyle = computed (() => (moreButtonActive .value ? accentActiveStyle (props .group .accentColor ) : undefined ))
128137 </script >
129138
130139<template >
131140 <div ref =" sidebar" class =" vite-devtools-group-sidebar flex flex-col flex-none w-12 h-full border-r border-base of-y-hidden of-x-hidden select-none py1.5 items-center gap-0.5" >
132141 <!-- Group anchor -->
133142 <div
134143 class =" flex items-center justify-center w-8 h-8 op60"
144+ :style =" anchorStyle"
135145 @pointerenter =" showTooltip($event, group.title)"
136146 @pointerleave =" hideTooltip"
137147 >
@@ -148,7 +158,8 @@ const moreButtonActive = computed(() => selectedInOverflow.value || isOverflowPa
148158 :key =" member.id"
149159 :aria-label =" member.title"
150160 class =" relative flex items-center justify-center w-8 h-8 rounded-lg transition"
151- :class =" selectedId === member.id ? 'text-primary bg-active' : 'op60 hover:op100 hover:bg-active'"
161+ :class =" selectedId === member.id ? (group.accentColor ? '' : 'text-primary bg-active') : 'op60 hover:op100 hover:bg-active'"
162+ :style =" memberStyle(member.id)"
152163 @pointerenter =" showTooltip($event, member.title)"
153164 @pointerleave =" hideTooltip"
154165 @pointerdown =" hideTooltip"
@@ -170,7 +181,8 @@ const moreButtonActive = computed(() => selectedInOverflow.value || isOverflowPa
170181 ref =" moreButton"
171182 aria-label =" Show more"
172183 class =" relative flex items-center justify-center w-8 h-8 rounded-lg transition mt-auto flex-none"
173- :class =" moreButtonActive ? 'text-primary bg-active' : 'op60 hover:op100 hover:bg-active'"
184+ :class =" moreButtonActive ? (group.accentColor ? '' : 'text-primary bg-active') : 'op60 hover:op100 hover:bg-active'"
185+ :style =" moreButtonStyle"
174186 @pointerenter =" showTooltip($event, 'Show more')"
175187 @pointerleave =" hideTooltip"
176188 @pointerdown =" hideTooltip"
0 commit comments