summaryrefslogtreecommitdiffhomepage
path: root/patch
diff options
context:
space:
mode:
authorbakkeby <[email protected]>2021-08-07 12:31:43 +0200
committerbakkeby <[email protected]>2021-08-07 12:31:43 +0200
commitc2e4fed9182c84c713b24e6f3c60754c950bcf9b (patch)
tree01e4ea33d3525389942814a9cb4fb5cb9db15c56 /patch
parentf8ae6714db02a42856c07066f689136999f6ad77 (diff)
downloaddwm-flexipatch-c2e4fed9182c84c713b24e6f3c60754c950bcf9b.tar.gz
dwm-flexipatch-c2e4fed9182c84c713b24e6f3c60754c950bcf9b.zip
swallow: new window to respect border of parent terminal
Diffstat (limited to 'patch')
-rw-r--r--patch/swallow.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/patch/swallow.c b/patch/swallow.c
index 824ca83..955d748 100644
--- a/patch/swallow.c
+++ b/patch/swallow.c
@@ -12,6 +12,7 @@ int
swallow(Client *p, Client *c)
{
Client *s;
+ XWindowChanges wc;
if (c->noswallow > 0 || c->isterminal)
return 0;
@@ -41,7 +42,14 @@ swallow(Client *p, Client *c)
#if BAR_EWMHTAGS_PATCH
setfloatinghint(s);
#endif // BAR_EWMHTAGS_PATCH
+
+ wc.border_width = p->bw;
+ XConfigureWindow(dpy, p->win, CWBorderWidth, &wc);
XMoveResizeWindow(dpy, p->win, s->x, s->y, s->w, s->h);
+ #if !BAR_FLEXWINTITLE_PATCH
+ XSetWindowBorder(dpy, p->win, scheme[SchemeNorm][ColBorder].pixel);
+ #endif // BAR_FLEXWINTITLE_PATCH
+
arrange(p->mon);
configure(p);
updateclientlist();
@@ -52,6 +60,7 @@ swallow(Client *p, Client *c)
void
unswallow(Client *c)
{
+ XWindowChanges wc;
c->win = c->swallowing->win;
free(c->swallowing);
@@ -64,7 +73,14 @@ unswallow(Client *c)
updatetitle(c);
arrange(c->mon);
XMapWindow(dpy, c->win);
+
+ wc.border_width = c->bw;
+ XConfigureWindow(dpy, c->win, CWBorderWidth, &wc);
XMoveResizeWindow(dpy, c->win, c->x, c->y, c->w, c->h);
+ #if !BAR_FLEXWINTITLE_PATCH
+ XSetWindowBorder(dpy, c->win, scheme[SchemeNorm][ColBorder].pixel);
+ #endif // BAR_FLEXWINTITLE_PATCH
+
#if BAR_EWMHTAGS_PATCH
setfloatinghint(c);
#endif // BAR_EWMHTAGS_PATCH