dwm
dynamic window manager
git clone https://9o.is/git/dwm.git
commit 242270fe2c781c1c4c72bd8e975731cd91abde55 parent 7bac5fda8600ce6c3023b54e5429f542b1077205 Author: Jul <jul@9o.is> Date: Sun, 1 Feb 2026 13:28:23 -0500 move client counter to the right of tags Diffstat:
| M | dwm.c | | | 14 | ++++++++------ |
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/dwm.c b/dwm.c @@ -64,7 +64,7 @@ enum { NetSupported, NetWMName, NetWMState, NetWMCheck, NetWMFullscreen, NetActiveWindow, NetWMWindowType, NetWMWindowTypeDialog, NetClientList, NetClientInfo, NetLast }; /* EWMH atoms */ enum { WMProtocols, WMDelete, WMState, WMTakeFocus, WMLast }; /* default atoms */ -enum { ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, +enum { ClkTagBar, ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkCounter, ClkClientWin, ClkRootWin, ClkLast }; /* clicks */ typedef union { @@ -444,6 +444,7 @@ buttonpress(XEvent *e) x = TEXTWNP(stext); x += TEXTW(selmon->ltsymbol); + x += TEXTW(" "); // client counter for (i = 0; i < LENGTH(tags); i++) { if (!(occ & 1 << i || m->tagset[m->seltags] & 1 << i)) continue; @@ -465,6 +466,8 @@ buttonpress(XEvent *e) click = ClkTagBar; arg.ui = 1 << i; } + else if (ev->x < (x += TEXTW(" "))) + click = ClkCounter; else if (ev->x < x + TEXTW(selmon->ltsymbol)) click = ClkLtSymbol; else @@ -780,10 +783,6 @@ drawbar(Monitor *m) x += w; } - w = TEXTW(cs); - drw_text(drw, x, 0, w, bh, lrpad / 2, cs, 0); - x += w; - for (i = 0; i < LENGTH(tags); i++) { if(!(occ & 1 << i || m->tagset[m->seltags] & 1 << i)) continue; @@ -793,8 +792,11 @@ drawbar(Monitor *m) x += w; } - w = TEXTW(m->ltsymbol); drw_setscheme(drw, scheme[SchemeNorm]); + w = TEXTW(cs); + x = drw_text(drw, x, 0, w, bh, lrpad / 2, cs, 0); + + w = TEXTW(m->ltsymbol); x = drw_text(drw, x, 0, w, bh, lrpad / 2, m->ltsymbol, 0); drw_map(drw, m->barwin, 0, 0, m->ww, bh);