dwmpatches

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

dwm-coolbar-1.0.diff (1437B)


      1 diff '--color=auto' -up dwm.bak/dwm.c dwm/dwm.c
      2 --- dwm.bak/dwm.c	2025-12-30 15:53:43.279974892 +0000
      3 +++ dwm/dwm.c	2025-12-30 15:57:18.375476286 +0000
      4 @@ -701,7 +701,7 @@ drawbar(Monitor *m)
      5  	int boxs = drw->fonts->h / 9;
      6  	int boxw = drw->fonts->h / 6 + 2;
      7  	unsigned int i, occ = 0, urg = 0;
      8 -	Client *c;
      9 +	Client *c, *current;
     10  
     11  	if (!m->showbar)
     12  		return;
     13 @@ -734,11 +734,27 @@ drawbar(Monitor *m)
     14  	x = drw_text(drw, x, 0, w, bh, lrpad / 2, m->ltsymbol, 0);
     15  
     16  	if ((w = m->ww - tw - x) > bh) {
     17 +		drw_rect(drw, x, 0, w, bh, 1, 1);
     18  		if (m->sel) {
     19 -			drw_setscheme(drw, scheme[m == selmon ? SchemeSel : SchemeNorm]);
     20 -			drw_text(drw, x, 0, w, bh, lrpad / 2, m->sel->name, 0);
     21 -			if (m->sel->isfloating)
     22 -				drw_rect(drw, x + boxs, boxs, boxw, boxw, m->sel->isfixed, 0);
     23 +			current = m->clients;
     24 +			while (current) {
     25 +				if (!ISVISIBLE(current))
     26 +					goto skip;
     27 +
     28 +				tw = TEXTW(current->name);
     29 +				drw_setscheme(drw, scheme[m == selmon ? ((m->sel == current) ? SchemeSel : SchemeNorm) : SchemeNorm]);
     30 +				drw_text(drw, x, 0, tw, bh, lrpad / 2, current->name, 0);
     31 +
     32 +				if (current->isfloating)
     33 +					drw_rect(drw, x + boxs, boxs, boxw, boxw, m->sel->isfixed, 0);
     34 +
     35 +				x += tw;
     36 +				if (x > m->mw - TEXTW(stext))
     37 +					break;
     38 +
     39 +skip:
     40 +				current = current->next;
     41 +			}
     42  		} else {
     43  			drw_setscheme(drw, scheme[SchemeNorm]);
     44  			drw_rect(drw, x, 0, w, bh, 1, 1);
     45 Common subdirectories: dwm.bak/.git and dwm/.git