From e9d8f093021dc416a5c790e2161d047426db2592 Mon Sep 17 00:00:00 2001 From: tslil clingman Date: Sun, 12 Feb 2023 11:42:31 +0100 Subject: [dwl, somebar] add gaps also allow dwl to match on empty titles --- dwl-0.4/dwl.c | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'dwl-0.4/dwl.c') diff --git a/dwl-0.4/dwl.c b/dwl-0.4/dwl.c index 5bcf768..3aa0415 100644 --- a/dwl-0.4/dwl.c +++ b/dwl-0.4/dwl.c @@ -462,6 +462,8 @@ applyrules(Client *c) if (!(title = client_get_title(c))) title = broken; + if (strnlen(title, 1) == 0) title="DWL_EMPTY_TITLE"; + for (r = rules; r < END(rules); r++) { if ((!r->title || strstr(title, r->title)) && (!r->id || strstr(appid, r->id))) { @@ -1816,7 +1818,7 @@ printstatus(void) urg |= c->tags; } if ((c = focustop(m))) { - printf("%s title %s\n", m->wlr_output->name, client_get_title(c)); + printf("%s title %s (%s)\n", m->wlr_output->name, client_get_title(c), client_get_appid(c)); printf("%s fullscreen %u\n", m->wlr_output->name, c->isfullscreen); printf("%s floating %u\n", m->wlr_output->name, c->isfloating); sel = c->tags; @@ -2326,7 +2328,7 @@ tagmon(const Arg *arg) void tile(Monitor *m) { - unsigned int i, n = 0, mw, my, ty; + unsigned int i, n = 0, mw, my, ty, r, h; Client *c; wl_list_for_each(c, &clients, link) @@ -2344,21 +2346,25 @@ tile(Monitor *m) if (!VISIBLEON(c, m) || c->isfloating || c->isfullscreen) continue; if (i < m->nmaster) { + r = MIN(n, m->nmaster) - i; + h = (m->w.height - my - gap * (r - 1)) / r; resize(c, (struct wlr_box){ .x = m->w.x + m->w.width - mw, .y = m->w.y + my, - .height = (m->w.height - my) / (MIN(n, m->nmaster) - i), - .width = mw + .width = mw - gap, + .height = h }, 0); - my += c->geom.height; + my += c->geom.height + gap; } else { + r = n - i; + h = (m->w.height - ty - gap * (r-1)) / r; resize(c, (struct wlr_box){ .x = m->w.x, .y = m->w.y + ty, - .width = m->w.width - mw, - .height = (m->w.height - ty) / (n - i) + .width = m->w.width - mw - gap, + .height = h }, 0); - ty += c->geom.height; + ty += c->geom.height + gap; } i++; } -- cgit v1.2.3