From 5ffeb2af7312c2b73884938aefe6db871fadb069 Mon Sep 17 00:00:00 2001 From: BitHeaven-Official Date: Wed, 8 Mar 2023 11:24:10 +0500 Subject: [PATCH] Add gaplessgid layout --- config.def.h | 3 +++ config.h | 6 ++++++ dwm | Bin 79200 -> 79320 bytes dwm.o | Bin 70960 -> 72152 bytes layouts.c | 36 ++++++++++++++++++++++++++++++++++++ 5 files changed, 45 insertions(+) diff --git a/config.def.h b/config.def.h index a8ee16e..7c8274a 100644 --- a/config.def.h +++ b/config.def.h @@ -9,6 +9,7 @@ static const unsigned int gappx = 15; static const unsigned int snap = 32; /* snap pixel */ static const int showbar = 1; /* 0 means no bar */ static const int showextrabar = 1; /* 0 means no bar */ +// TODO: FIX THAT SHIT static const int topbar = 1; /* 0 means bottom bar */ static const char statussep = ';'; static const int horizpadbar = 8; @@ -72,6 +73,7 @@ static const Layout layouts[] = { { "><>", NULL }, /* no layout function means floating behavior */ { "[M]", monocle }, { "HHH", grid }, + { "###", gaplessgrid }, }; /* key definitions */ @@ -128,6 +130,7 @@ static Key keys[] = { { SUPERKEY, XK_f, setlayout, {.v = &layouts[1]} }, { SUPERKEY, XK_m, setlayout, {.v = &layouts[2]} }, { SUPERKEY, XK_g, setlayout, {.v = &layouts[3]} }, + { SUPERKEY|ShiftMask, XK_g, setlayout, {.v = &layouts[4]} }, /* { SUPERKEY, XK_space, setlayout, {0} }, */ { SUPERKEY|ShiftMask, XK_space, togglefloating, {0} }, { SUPERKEY, XK_0, view, {.ui = ~0 } }, diff --git a/config.h b/config.h index 122ef86..7c8274a 100644 --- a/config.h +++ b/config.h @@ -9,6 +9,7 @@ static const unsigned int gappx = 15; static const unsigned int snap = 32; /* snap pixel */ static const int showbar = 1; /* 0 means no bar */ static const int showextrabar = 1; /* 0 means no bar */ +// TODO: FIX THAT SHIT static const int topbar = 1; /* 0 means bottom bar */ static const char statussep = ';'; static const int horizpadbar = 8; @@ -65,11 +66,14 @@ static const int nmaster = 1; /* number of clients in master area */ static const int resizehints = 1; /* 1 means respect size hints in tiled resizals */ static const int lockfullscreen = 1; /* 1 will force focus on the fullscreen window */ +#include "layouts.c" static const Layout layouts[] = { /* symbol arrange function */ { "[]=", tile }, /* first entry is default */ { "><>", NULL }, /* no layout function means floating behavior */ { "[M]", monocle }, + { "HHH", grid }, + { "###", gaplessgrid }, }; /* key definitions */ @@ -125,6 +129,8 @@ static Key keys[] = { { SUPERKEY, XK_t, setlayout, {.v = &layouts[0]} }, { SUPERKEY, XK_f, setlayout, {.v = &layouts[1]} }, { SUPERKEY, XK_m, setlayout, {.v = &layouts[2]} }, + { SUPERKEY, XK_g, setlayout, {.v = &layouts[3]} }, + { SUPERKEY|ShiftMask, XK_g, setlayout, {.v = &layouts[4]} }, /* { SUPERKEY, XK_space, setlayout, {0} }, */ { SUPERKEY|ShiftMask, XK_space, togglefloating, {0} }, { SUPERKEY, XK_0, view, {.ui = ~0 } }, diff --git a/dwm b/dwm index 8afaceb2ef57324890980a08e0b951a92d7daaf9..54e625f6cc7fc59ca022e171e52ab2cfb52777e4 100755 GIT binary patch delta 24142 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 delta 22791 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 diff --git a/dwm.o b/dwm.o index 81fea489d7650191d36bd6838cf1631c4a20a806..bd37b13f5dc9b9017223a87c3d3190c851b278fe 100644 GIT binary patch delta 26313 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 diff --git a/layouts.c b/layouts.c index d26acf3..06fc554 100644 --- a/layouts.c +++ b/layouts.c @@ -25,3 +25,39 @@ grid(Monitor *m) { i++; } } + +void +gaplessgrid(Monitor *m) { + unsigned int n, cols, rows, cn, rn, i, cx, cy, cw, ch; + Client *c; + + for(n = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), n++) ; + if(n == 0) + return; + + /* grid dimensions */ + for(cols = 0; cols <= n/2; cols++) + if(cols*cols >= n) + break; + if(n == 5) /* set layout against the general calculation: not 1:2:2, but 2:3 */ + cols = 2; + rows = n/cols; + + /* window geometries */ + cw = cols ? m->ww / cols : m->ww; + cn = 0; /* current column number */ + rn = 0; /* current row number */ + for(i = 0, c = nexttiled(m->clients); c; i++, c = nexttiled(c->next)) { + if(i/rows + 1 > cols - n%cols) + rows = n/cols + 1; + ch = rows ? m->wh / rows : m->wh; + cx = m->wx + cn*cw; + cy = m->wy + rn*ch; + resize(c, cx, cy, cw - 2 * c->bw, ch - 2 * c->bw, False); + rn++; + if(rn >= rows) { + rn = 0; + cn++; + } + } +}