diff options
| -rwxr-xr-x | panel.py | 17 | 
1 files changed, 9 insertions, 8 deletions
@@ -180,7 +180,7 @@ class ModHLWMTags(ModHLWMBase):      def post_start(self):          self.refresh() -    def fmt_tag(self, sym, tag, tagstr): +    def fmt_tag(self, sym, tag, focused):          disp = Fmt.pad(tag)          match sym:              case '.': @@ -188,25 +188,26 @@ class ModHLWMTags(ModHLWMBase):              case '#':                  buf = Fmt.bg('#333333', Fmt.ul('#7b51ca', Fmt.bold(disp)))              case '!': -                if '#' in tagstr: -                    buf = Fmt.bg('#a03000', Fmt.ul('#000000', disp)) -                else: -                    buf = Fmt.bg('#a03000', Fmt.ul('#7b51ca', Fmt.bold(disp))) +                buf = Fmt.bg( +                    '#a03000', +                    Fmt.ul('#7b51ca', Fmt.bold(disp)) +                        if tag == focused +                        else Fmt.ul('#000000', disp))              case ':':                  buf = disp          return Fmt.clickable('', f'{id(self)} use {tag}', buf)      def refresh(self): -        tagstr = self.hc('tag_status') -        tags = tagstr.lstrip('\t').split('\t') +        tags = self.hc('tag_status').lstrip('\t').split('\t') +        focused = self.hc('attr', 'tags.focus.name')          self.out = Fmt.clickable(              4, f'{id(self)} use_index +1',              Fmt.clickable(                  5, f'{id(self)} use_index -1',                  ''.join( -                    self.fmt_tag(tag[0], tag[1:], tagstr) for tag in tags))) +                    self.fmt_tag(tag[0], tag[1:], focused) for tag in tags)))          self.repaint()      def process_cmd(self, cmd):  | 
