diff options
Diffstat (limited to 'patch/dwm-setborderpx-6.2.diff')
| -rw-r--r-- | patch/dwm-setborderpx-6.2.diff | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/patch/dwm-setborderpx-6.2.diff b/patch/dwm-setborderpx-6.2.diff deleted file mode 100644 index 6a82087..0000000 --- a/patch/dwm-setborderpx-6.2.diff +++ /dev/null @@ -1,90 +0,0 @@ -diff -up a/config.def.h b/config.def.h ---- a/config.def.h 2020-05-12 02:17:20.070933833 +0200 -+++ b/config.def.h 2020-05-13 03:27:51.018695798 +0200 -@@ -84,6 +84,9 @@ static Key keys[] = { - { MODKEY, XK_period, focusmon, {.i = +1 } }, - { MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } }, - { MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } }, -+ { MODKEY|ShiftMask, XK_minus, setborderpx, {.i = -1 } }, -+ { MODKEY|ShiftMask, XK_plus, setborderpx, {.i = +1 } }, -+ { MODKEY|ShiftMask, XK_numbersign, setborderpx, {.i = 0 } }, - TAGKEYS( XK_1, 0) - TAGKEYS( XK_2, 1) - TAGKEYS( XK_3, 2) -diff -up a/dwm.c b/dwm.c ---- a/dwm.c 2020-05-12 02:17:20.070933833 +0200 -+++ b/dwm.c 2020-05-14 00:17:35.047919771 +0200 -@@ -119,6 +119,7 @@ struct Monitor { - int by; /* bar geometry */ - int mx, my, mw, mh; /* screen size */ - int wx, wy, ww, wh; /* window area */ -+ unsigned int borderpx; - unsigned int seltags; - unsigned int sellt; - unsigned int tagset[2]; -@@ -196,6 +197,7 @@ static void run(void); - static void scan(void); - static int sendevent(Client *c, Atom proto); - static void sendmon(Client *c, Monitor *m); -+static void setborderpx(const Arg *arg); - static void setclientstate(Client *c, long state); - static void setfocus(Client *c); - static void setfullscreen(Client *c, int fullscreen); -@@ -638,6 +640,7 @@ createmon(void) - m->nmaster = nmaster; - m->showbar = showbar; - m->topbar = topbar; -+ m->borderpx = borderpx; - m->lt[0] = &layouts[0]; - m->lt[1] = &layouts[1 % LENGTH(layouts)]; - strncpy(m->ltsymbol, layouts[0].symbol, sizeof m->ltsymbol); -@@ -1047,7 +1050,7 @@ manage(Window w, XWindowAttributes *wa) - /* only fix client y-offset, if the client center might cover the bar */ - c->y = MAX(c->y, ((c->mon->by == c->mon->my) && (c->x + (c->w / 2) >= c->mon->wx) - && (c->x + (c->w / 2) < c->mon->wx + c->mon->ww)) ? bh : c->mon->my); -- c->bw = borderpx; -+ c->bw = c->mon->borderpx; - - wc.border_width = c->bw; - XConfigureWindow(dpy, w, CWBorderWidth, &wc); -@@ -1424,6 +1427,40 @@ sendmon(Client *c, Monitor *m) - } - - void -+setborderpx(const Arg *arg) -+{ -+ Client *c; -+ int prev_borderpx = selmon->borderpx; -+ -+ if (arg->i == 0) -+ selmon->borderpx = borderpx; -+ else if (selmon->borderpx + arg->i < 0) -+ selmon->borderpx = 0; -+ else -+ selmon->borderpx += arg->i; -+ -+ for (c = selmon->clients; c; c = c->next) -+ { -+ if (c->bw + arg->i < 0) -+ c->bw = selmon->borderpx = 0; -+ else -+ c->bw = selmon->borderpx; -+ if (c->isfloating || !selmon->lt[selmon->sellt]->arrange) -+ { -+ if (arg->i != 0 && prev_borderpx + arg->i >= 0) -+ resize(c, c->x, c->y, c->w-(arg->i*2), c->h-(arg->i*2), 0); -+ else if (arg->i != 0) -+ resizeclient(c, c->x, c->y, c->w, c->h); -+ else if (prev_borderpx > borderpx) -+ resize(c, c->x, c->y, c->w + 2*(prev_borderpx - borderpx), c->h + 2*(prev_borderpx - borderpx), 0); -+ else if (prev_borderpx < borderpx) -+ resize(c, c->x, c->y, c->w-2*(borderpx - prev_borderpx), c->h-2*(borderpx - prev_borderpx), 0); -+ } -+ } -+ arrange(selmon); -+} -+ -+void - setclientstate(Client *c, long state) - { - long data[] = { state, None }; |
