Dwm did not redraw borders when swallowing so it messed up swallowing when in fullscreen
@@ -502,7 +502,13 @@ swallow(Client *p, Client *c)
p->win = c->win;
c->win = w;
updatetitle(p);
+
+ XWindowChanges wc;
+ wc.border_width = p->bw;
+ XConfigureWindow(dpy, p->win, CWBorderWidth, &wc);
XMoveResizeWindow(dpy, p->win, p->x, p->y, p->w, p->h);
+ XSetWindowBorder(dpy, p->win, scheme[SchemeNorm][ColBorder].pixel);
+
arrange(p->mon);
configure(p);
updateclientlist();
@@ -521,7 +527,13 @@ unswallow(Client *c)
updatetitle(c);
arrange(c->mon);
XMapWindow(dpy, c->win);
+
+ XWindowChanges wc;
+ wc.border_width = c->bw;
+ XConfigureWindow(dpy, c->win, CWBorderWidth, &wc);
XMoveResizeWindow(dpy, c->win, c->x, c->y, c->w, c->h);
+ XSetWindowBorder(dpy, c->win, scheme[SchemeNorm][ColBorder].pixel);
+
setclientstate(c, NormalState);
focus(NULL);
arrange(c->mon);
