dwm-staticstatus-20211010-a786211.diff - sites - public wiki contents of suckle… | |
git clone git://git.suckless.org/sites | |
Log | |
Files | |
Refs | |
--- | |
dwm-staticstatus-20211010-a786211.diff (2445B) | |
--- | |
1 diff --git a/config.def.h b/config.def.h | |
2 index a2ac963..e485712 100644 | |
3 --- a/config.def.h | |
4 +++ b/config.def.h | |
5 @@ -18,6 +18,9 @@ static const char *colors[][3] = { | |
6 [SchemeSel] = { col_gray4, col_cyan, col_cyan }, | |
7 }; | |
8 | |
9 +/* staticstatus */ | |
10 +static const int statmonval = 0; | |
11 + | |
12 /* tagging */ | |
13 static const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "… | |
14 | |
15 diff --git a/dwm.c b/dwm.c | |
16 index 5e4d494..e5fa599 100644 | |
17 --- a/dwm.c | |
18 +++ b/dwm.c | |
19 @@ -266,7 +266,7 @@ static Cur *cursor[CurLast]; | |
20 static Clr **scheme; | |
21 static Display *dpy; | |
22 static Drw *drw; | |
23 -static Monitor *mons, *selmon; | |
24 +static Monitor *mons, *selmon, *statmon; | |
25 static Window root, wmcheckwin; | |
26 | |
27 /* configuration, allows nested code to access above variables */ | |
28 @@ -440,7 +440,7 @@ buttonpress(XEvent *e) | |
29 arg.ui = 1 << i; | |
30 } else if (ev->x < x + blw) | |
31 click = ClkLtSymbol; | |
32 - else if (ev->x > selmon->ww - (int)TEXTW(stext)) | |
33 + else if (m == statmon && ev->x > selmon->ww - (int)TEXT… | |
34 click = ClkStatusText; | |
35 else | |
36 click = ClkWinTitle; | |
37 @@ -703,7 +703,7 @@ drawbar(Monitor *m) | |
38 Client *c; | |
39 | |
40 /* draw status first so it can be overdrawn by tags later */ | |
41 - if (m == selmon) { /* status is only drawn on selected monitor … | |
42 + if (m == statmon) { /* status is only drawn on user-defined sta… | |
43 drw_setscheme(drw, scheme[SchemeNorm]); | |
44 tw = TEXTW(stext) - lrpad + 2; /* 2px right padding */ | |
45 drw_text(drw, m->ww - tw, 0, tw, bh, 0, stext, 0); | |
46 @@ -1879,7 +1879,7 @@ updategeom(void) | |
47 else | |
48 mons = createmon(); | |
49 } | |
50 - for (i = 0, m = mons; i < nn && m; m = m->next,… | |
51 + for (i = 0, m = mons; i < nn && m; m = m->next,… | |
52 if (i >= n | |
53 || unique[i].x_org != m->mx || unique[i… | |
54 || unique[i].width != m->mw || unique[i… | |
55 @@ -1892,6 +1892,10 @@ updategeom(void) | |
56 m->mh = m->wh = unique[i].heigh… | |
57 updatebarpos(m); | |
58 } | |
59 + if(i == statmonval) | |
60 + statmon = m; | |
61 + } | |
62 + | |
63 } else { /* less monitors available nn < n */ | |
64 for (i = nn; i < n; i++) { | |
65 for (m = mons; m && m->next; m = m->nex… | |
66 @@ -1905,6 +1909,8 @@ updategeom(void) | |
67 } | |
68 if (m == selmon) | |
69 selmon = mons; | |
70 + if (m == statmon) | |
71 + statmon = mons; | |
72 cleanupmon(m); | |
73 } | |
74 } | |
75 @@ -1992,7 +1998,7 @@ updatestatus(void) | |
76 { | |
77 if (!gettextprop(root, XA_WM_NAME, stext, sizeof(stext))) | |
78 strcpy(stext, "dwm-"VERSION); | |
79 - drawbar(selmon); | |
80 + drawbar(statmon); | |
81 } | |
82 | |
83 void |