nix-config/assets/dwm-fix-monocle-transparency-background.patch

32 lines
972 B
Diff

diff --git a/dwm.c b/dwm.c
index 67c6b2b..59666f7 100644
--- a/dwm.c
+++ b/dwm.c
@@ -808,6 +808,8 @@ focus(Client *c)
XDeleteProperty(dpy, root, netatom[NetActiveWindow]);
}
selmon->sel = c;
+ if (selmon->lt[selmon->sellt]->arrange == monocle)
+ arrangemon(selmon);
drawbars();
}
@@ -1121,8 +1123,15 @@ monocle(Monitor *m)
n++;
if (n > 0) /* override layout symbol */
snprintf(m->ltsymbol, sizeof m->ltsymbol, "[%d]", n);
- for (c = nexttiled(m->clients); c; c = nexttiled(c->next))
- resize(c, m->wx, m->wy, m->ww - 2 * c->bw, m->wh - 2 * c->bw, 0);
+ for (c = m->stack; c && (!ISVISIBLE(c) || c->isfloating); c = c->snext);
+ if (c && !c->isfloating) {
+ XMoveWindow(dpy, c->win, m->wx, m->wy);
+ resize(c, m->wx, m->wy, m->ww - 2 * c->bw, m->wh - 2 * c->bw, 0);
+ c = c->snext;
+ }
+ for (; c; c = c->snext)
+ if (!c->isfloating && ISVISIBLE(c))
+ XMoveWindow(dpy, c->win, WIDTH(c) * -2, c->y);
}
void