dwl

My patch set and modifications to dwl
git clone git://git.ethandl.dev/dwl
Log | Files | Refs | README | LICENSE

commit 5a16649e799bab33babb935371253695d9dccc5c
parent 02a09cb85414df8002c61bd072c5870ab4f6a485
Author: Stivvo <stivvo01@gmail.com>
Date:   Thu,  8 Oct 2020 21:04:53 +0200

Keep windows fullscreen after redraw

This fixes the bug that happens when changing workspace (or any time
arrange() is called) where there are fullscreen windows, which are still
fullscreen but leave the space for layer surfaces like waybar (which
should be hidden when going fullscreen)

Also as soon one fullscreen window is found hte function returns to
improve efficiency

Diffstat:
Mdwl.c | 8++++++++
1 file changed, 8 insertions(+), 0 deletions(-)

diff --git a/dwl.c b/dwl.c @@ -1405,6 +1405,10 @@ monocle(Monitor *m) wl_list_for_each(c, &clients, link) { if (!VISIBLEON(c, m) || c->isfloating) continue; + if (c->isfullscreen) { + resize(c, c->mon->m.x, c->mon->m.y, c->mon->m.width, c->mon->m.height, 0); + return; + } resize(c, m->w.x, m->w.y, m->w.width, m->w.height, 0); } } @@ -2254,6 +2258,10 @@ tile(Monitor *m) wl_list_for_each(c, &clients, link) { if (!VISIBLEON(c, m) || c->isfloating) continue; + if (c->isfullscreen) { + resize(c, c->mon->m.x, c->mon->m.y, c->mon->m.width, c->mon->m.height, 0); + return; + } if (i < m->nmaster) { h = (m->w.height - my) / (MIN(n, m->nmaster) - i); resize(c, m->w.x, m->w.y + my, mw, h, 0);