Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save SebastianJarsve/497b2014774c849df0132d7118cbab65 to your computer and use it in GitHub Desktop.
Save SebastianJarsve/497b2014774c849df0132d7118cbab65 to your computer and use it in GitHub Desktop.
dwm patch which disables borders on non-floating clients in the monocle layout
From ebf49ca1785c9ed259d04d26d30a16e09554f382 Mon Sep 17 00:00:00 2001
From: Sebastian Jarsve <sebastianjarsve@gmail.com>
Date: Fri, 7 Jun 2019 08:08:13 +0200
Subject: [PATCH] remove borders from nonfloating clients in monocle layout
---
dwm.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/dwm.c b/dwm.c
index 4465af1..0cc755c 100644
--- a/dwm.c
+++ b/dwm.c
@@ -317,6 +317,10 @@ applysizehints(Client *c, int *x, int *y, int *w, int *h, int interact)
int baseismin;
Monitor *m = c->mon;
+ // return 1 if layout is monocle
+ if (&monocle == c->mon->lt[c->mon->sellt]->arrange)
+ return 1;
+
/* set minimum possible */
*w = MAX(1, *w);
*h = MAX(1, *h);
@@ -1282,6 +1286,11 @@ resizeclient(Client *c, int x, int y, int w, int h)
c->oldw = c->w; c->w = wc.width = w;
c->oldh = c->h; c->h = wc.height = h;
wc.border_width = c->bw;
+ if ((&monocle == c->mon->lt[c->mon->sellt]->arrange) && (!c->isfloating)) {
+ wc.border_width = 0;
+ c->w = wc.width += c->bw * 2;
+ c->h = wc.height += c->bw * 2;
+ }
XConfigureWindow(dpy, c->win, CWX|CWY|CWWidth|CWHeight|CWBorderWidth, &wc);
configure(c);
XSync(dpy, False);
--
2.17.1
@bpsuntrup
Copy link

Works great for me :) Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment