diff options
author | ZachIR <zachir@librem.one> | 2022-08-31 17:50:25 -0500 |
---|---|---|
committer | ZachIR <zachir@librem.one> | 2022-08-31 17:50:25 -0500 |
commit | 7e96775d12cd982725cec146529b212f8fe94bad (patch) | |
tree | e1233ddb742fbce0dc47176d07300ad1540b29bb /patches/dwl-push.diff | |
parent | 226051974060746d02d787ac1ef70b6267ee51b4 (diff) |
add patches I have applied
Diffstat (limited to 'patches/dwl-push.diff')
-rw-r--r-- | patches/dwl-push.diff | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/patches/dwl-push.diff b/patches/dwl-push.diff new file mode 100644 index 0000000..06a1532 --- /dev/null +++ b/patches/dwl-push.diff @@ -0,0 +1,129 @@ +From dcb7a4d91075a9d918d082eb948c61d26eb0bc02 Mon Sep 17 00:00:00 2001 +From: "Devin J. Pohly" <djpohly@gmail.com> +Date: Thu, 4 Mar 2021 00:45:50 -0600 +Subject: [PATCH 1/2] port dwm "push" patch to dwl + +--- + Makefile | 2 ++ + dwl.c | 2 ++ + push.c | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 67 insertions(+) + create mode 100644 push.c + +diff --git a/Makefile b/Makefile +index a0d1cc37..1701b63e 100644 +--- a/Makefile ++++ b/Makefile +@@ -49,6 +49,8 @@ config.h: | config.def.h + + dwl.o: config.h client.h xdg-shell-protocol.h wlr-layer-shell-unstable-v1-protocol.h idle-protocol.h + ++dwl.o: push.c ++ + dwl: xdg-shell-protocol.o wlr-layer-shell-unstable-v1-protocol.o idle-protocol.o + + clean: +diff --git a/dwl.c b/dwl.c +index 72f1046b..4cfd7d07 100644 +--- a/dwl.c ++++ b/dwl.c +@@ -369,7 +369,9 @@ static Atom netatom[NetLast]; + #endif + + /* configuration, allows nested code to access above variables */ ++#include "push.h" + #include "config.h" ++#include "push.c" + + /* attempt to encapsulate suck into one file */ + #include "client.h" +diff --git a/push.c b/push.c +new file mode 100644 +index 00000000..26ed462f +--- /dev/null ++++ b/push.c +@@ -0,0 +1,63 @@ ++static Client * ++nexttiled(Client *sel) { ++ Client *c; ++ wl_list_for_each(c, &sel->link, link) { ++ if (&c->link == &clients) ++ break; /* don't wrap */ ++ if (!c->isfloating && VISIBLEON(c, selmon)) ++ return c; ++ } ++ return NULL; ++} ++ ++static Client * ++prevtiled(Client *sel) { ++ Client *c; ++ wl_list_for_each_reverse(c, &sel->link, link) { ++ if (&c->link == &clients) ++ break; /* don't wrap */ ++ if (!c->isfloating && VISIBLEON(c, selmon)) ++ return c; ++ } ++ return NULL; ++} ++ ++static void ++pushup(const Arg *arg) { ++ Client *sel = selclient(); ++ Client *c; ++ ++ if(!sel || sel->isfloating) ++ return; ++ if((c = prevtiled(sel))) { ++ /* attach before c */ ++ wl_list_remove(&sel->link); ++ wl_list_insert(c->link.prev, &sel->link); ++ } else { ++ /* move to the end */ ++ wl_list_remove(&sel->link); ++ wl_list_insert(clients.prev, &sel->link); ++ } ++ focusclient(sel, 1); ++ arrange(selmon); ++} ++ ++static void ++pushdown(const Arg *arg) { ++ Client *sel = selclient(); ++ Client *c; ++ ++ if(!sel || sel->isfloating) ++ return; ++ if((c = nexttiled(sel))) { ++ /* attach after c */ ++ wl_list_remove(&sel->link); ++ wl_list_insert(&c->link, &sel->link); ++ } else { ++ /* move to the front */ ++ wl_list_remove(&sel->link); ++ wl_list_insert(&clients, &sel->link); ++ } ++ focusclient(sel, 1); ++ arrange(selmon); ++} + +From 156a13d9f9f9d8df16b184f5ec0c84e6e5b94df6 Mon Sep 17 00:00:00 2001 +From: "Devin J. Pohly" <djpohly@gmail.com> +Date: Thu, 4 Mar 2021 13:52:58 -0600 +Subject: [PATCH 2/2] add missing header + +--- + push.h | 4 ++++ + 1 file changed, 4 insertions(+) + create mode 100644 push.h + +diff --git a/push.h b/push.h +new file mode 100644 +index 00000000..59c0f80e +--- /dev/null ++++ b/push.h +@@ -0,0 +1,4 @@ ++static Client *nexttiled(Client *sel); ++static Client *prevtiled(Client *sel); ++static void pushdown(const Arg *arg); ++static void pushup(const Arg *arg); |