From 707877cf07a6584cfc6d4afb252312ec242e5f59 Mon Sep 17 00:00:00 2001 From: = <=> Date: Sat, 16 Jan 2021 19:49:33 -0500 Subject: [PATCH] Added attachbelow patch --- .dwm.c.swp | Bin 16384 -> 0 bytes .gitignore | 1 + config.def.h | 1 + config.h | 16 ++++++++-------- dwm | Bin 67600 -> 67600 bytes dwm.1 | 3 +++ dwm.c | 43 +++++++++++++++++++++++++++++++++++++++---- 7 files changed, 52 insertions(+), 12 deletions(-) delete mode 100644 .dwm.c.swp diff --git a/.dwm.c.swp b/.dwm.c.swp deleted file mode 100644 index 57d7e212c0098b37acc99a1595ab71405956bb70..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16384 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", NULL }, /* no layout function means floating behavior */ - { "[M]", monocle }, { "|M|", centeredmaster }, { ">M>", centeredfloatingmaster }, + { "[M]", monocle }, + { "[]=", tile }, /* first entry is default */ + { "><>", NULL }, /* no layout function means floating behavior */ }; /* key definitions */ @@ -75,11 +75,11 @@ static Key keys[] = { { MODKEY, XK_Return, zoom, {0} }, { MODKEY, XK_Tab, view, {0} }, { MODKEY|ShiftMask, XK_c, killclient, {0} }, - { MODKEY, XK_t, setlayout, {.v = &layouts[0]} }, - { MODKEY, XK_f, setlayout, {.v = &layouts[1]} }, + { MODKEY, XK_t, setlayout, {.v = &layouts[3]} }, + { MODKEY, XK_f, setlayout, {.v = &layouts[4]} }, { MODKEY, XK_m, setlayout, {.v = &layouts[2]} }, - { MODKEY, XK_u, setlayout, {.v = &layouts[3]} }, - { MODKEY, XK_o, setlayout, {.v = &layouts[4]} }, + { MODKEY, XK_u, setlayout, {.v = &layouts[0]} }, + { MODKEY, XK_o, setlayout, {.v = &layouts[1]} }, { MODKEY, XK_space, setlayout, {0} }, { MODKEY|ShiftMask, XK_space, togglefloating, {0} }, { MODKEY, XK_0, view, {.ui = ~0 } }, diff --git a/dwm b/dwm index 7c18896d43000bc0923822f2d06276a01730e741..aaf82c8a84ac1e000810418d028022fde777e2e7 100755 GIT binary patch delta 11339 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Shz+C2J7W)fSmXoo}F>o<;HzT_vF5N!)ajH>al{;yk26IGv0qL*Or?qoW-w_~TTC#!8sduX<% zz_*wYXUce=eaxh=`!4x@6zKUD#|Gdk`%!1lF`_V%#(fmzJ5s>=sPJxk@Z!*hc6`*# zl$Twv$y@?|%{U(Yi(7G4H$G8eIPWXx9Mo_VY<0S>kyW@P)u>C>^*ZP%hrw0`4{iM(sCwTjiPw!u|_r z8n+MCv3btn`?myUr+BaVTsu zmS1URl&X>yy&g6Bp)ue@V}LRrZ&ao9^Zp3WVh)nmkbFQldcjiEDepuyKTn%;)i7|E zsWuEX>mNlP$n?Y@jSwy28-fsa;X=M496}FZ1o7JLPiqehkWSKf2Zn^q8>_*aa!oVV zN<7Cff93)GYJ3$rof3-LMSKl8CPW(dEcakU`1&b_ck)xTu&ATYGLDM%7AX5z{;s&2 zDvJgs7J;4}?Tmqt`L@V+;FKaY-8DcN~A8=l8MYeKYW=e&Dz2-6aTTB#? z3BEZ+kNPiRWxd`!024}{#f7hM;d4f1TEKWNea<`p?@e+l3amd9@3YnXP?L%0Dmjre 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 G;{N~|2V{%@ diff --git a/dwm.1 b/dwm.1 index 6687011..fd56812 100644 --- a/dwm.1 +++ b/dwm.1 @@ -28,6 +28,9 @@ color. The tags of the focused window are indicated with a filled square in the top left corner. The tags which are applied to one or more windows are indicated with an empty square in the top left corner. .P +The attach below patch makes newly spawned windows attach after the currently +selected window +.P dwm draws a small border around windows to indicate the focus state. .SH OPTIONS .TP diff --git a/dwm.c b/dwm.c index dd9d45a..bf5e321 100644 --- a/dwm.c +++ b/dwm.c @@ -151,6 +151,8 @@ static int applysizehints(Client *c, int *x, int *y, int *w, int *h, int interac static void arrange(Monitor *m); static void arrangemon(Monitor *m); static void attach(Client *c); +static void attachBelow(Client *c); +static void toggleAttachBelow(); static void attachstack(Client *c); static void buttonpress(XEvent *e); static void checkotherwm(void); @@ -417,6 +419,26 @@ attach(Client *c) c->next = c->mon->clients; c->mon->clients = c; } +void +attachBelow(Client *c) +{ + //If there is nothing on the monitor or the selected client is floating, attach as normal + if(c->mon->sel == NULL || c->mon->sel == c || c->mon->sel->isfloating) { + attach(c); + return; + } + + //Set the new client's next property to the same as the currently selected clients next + c->next = c->mon->sel->next; + //Set the currently selected clients next property to the new client + c->mon->sel->next = c; + +} + +void toggleAttachBelow() +{ + attachbelow = !attachbelow; +} void attachstack(Client *c) @@ -1091,6 +1113,9 @@ hidewin(Client *c) { XSelectInput(dpy, root, ra.your_event_mask); XSelectInput(dpy, w, ca.your_event_mask); XUngrabServer(dpy); + + focus(c->snext); + arrange(c->mon); } void @@ -1191,7 +1216,10 @@ manage(Window w, XWindowAttributes *wa) c->isfloating = c->oldstate = trans != None || c->isfixed; if (c->isfloating) XRaiseWindow(dpy, c->win); - attach(c); + if( attachbelow ) + attachBelow(c); + else + attach(c); attachstack(c); XChangeProperty(dpy, root, netatom[NetClientList], XA_WINDOW, 32, PropModeAppend, (unsigned char *) &(c->win), 1); @@ -1561,7 +1589,10 @@ sendmon(Client *c, Monitor *m) detachstack(c); c->mon = m; c->tags = m->tagset[m->seltags]; /* assign tags of target monitor */ - attach(c); + if( attachbelow ) + attachBelow(c); + else + attach(c); attachstack(c); focus(NULL); arrange(NULL); @@ -1889,7 +1920,8 @@ void togglewin(const Arg *arg) { Client *c = (Client*)arg->v; - + if (!c) + return; if (c == selmon->sel) { hidewin(c); focus(NULL); @@ -2054,7 +2086,10 @@ updategeom(void) m->clients = c->next; detachstack(c); c->mon = mons; - attach(c); + if( attachbelow ) + attachBelow(c); + else + attach(c); attachstack(c); } if (m == selmon)