From c83ce409fbfc987d5b50dab4e3b3aa238eff6767 Mon Sep 17 00:00:00 2001 From: wochap Date: Fri, 8 Mar 2024 10:50:26 -0500 Subject: [PATCH] regenerate patch file with --- movestack-diff.patch | 66 ++++++++++++++++++++++++++++++++++++++++++++ movestack.patch | 14 ++++++++++ 2 files changed, 80 insertions(+) create mode 100644 movestack-diff.patch diff --git a/movestack-diff.patch b/movestack-diff.patch new file mode 100644 index 0000000..dd84e4e --- /dev/null +++ b/movestack-diff.patch @@ -0,0 +1,66 @@ +diff --git a/config.def.h b/config.def.h +index db0babc..778a0dc 100644 +--- a/config.def.h ++++ b/config.def.h +@@ -122,6 +122,8 @@ static const Key keys[] = { + { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_Return, spawn, {.v = termcmd} }, + { MODKEY, XKB_KEY_j, focusstack, {.i = +1} }, + { MODKEY, XKB_KEY_k, focusstack, {.i = -1} }, ++ { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_J, movestack, {.i = +1} }, ++ { MODKEY|WLR_MODIFIER_SHIFT, XKB_KEY_K, movestack, {.i = -1} }, + { MODKEY, XKB_KEY_i, incnmaster, {.i = +1} }, + { MODKEY, XKB_KEY_d, incnmaster, {.i = -1} }, + { MODKEY, XKB_KEY_h, setmfact, {.f = -0.05} }, +diff --git a/dwl.c b/dwl.c +index ef27a1d..69b9756 100644 +--- a/dwl.c ++++ b/dwl.c +@@ -279,6 +279,7 @@ static void maplayersurfacenotify(struct wl_listener *listener, void *data); + static void mapnotify(struct wl_listener *listener, void *data); + static void maximizenotify(struct wl_listener *listener, void *data); + static void monocle(Monitor *m); ++static void movestack(const Arg *arg); + static void motionabsolute(struct wl_listener *listener, void *data); + static void motionnotify(uint32_t time); + static void motionrelative(struct wl_listener *listener, void *data); +@@ -1603,6 +1604,40 @@ monocle(Monitor *m) + wlr_scene_node_raise_to_top(&c->scene->node); + } + ++void ++movestack(const Arg *arg) ++{ ++ Client *c, *sel = focustop(selmon); ++ ++ if (!sel) { ++ return; ++ } ++ ++ if (wl_list_length(&clients) <= 1) { ++ return; ++ } ++ ++ if (arg->i > 0) { ++ wl_list_for_each(c, &sel->link, link) { ++ if (VISIBLEON(c, selmon) || &c->link == &clients) { ++ break; /* found it */ ++ } ++ } ++ } else { ++ wl_list_for_each_reverse(c, &sel->link, link) { ++ if (VISIBLEON(c, selmon) || &c->link == &clients) { ++ break; /* found it */ ++ } ++ } ++ /* backup one client */ ++ c = wl_container_of(c->link.prev, c, link); ++ } ++ ++ wl_list_remove(&sel->link); ++ wl_list_insert(&c->link, &sel->link); ++ arrange(selmon); ++} ++ + void + motionabsolute(struct wl_listener *listener, void *data) + { diff --git a/movestack.patch b/movestack.patch index dd84e4e..796316f 100644 --- a/movestack.patch +++ b/movestack.patch @@ -1,3 +1,14 @@ +From b051f50233033b399db324b29ab24227257ac141 Mon Sep 17 00:00:00 2001 +From: wochap +Date: Tue, 5 Mar 2024 23:31:51 -0500 +Subject: [PATCH] apply NikitaIvanovV movestack patch + +source: https://github.com/djpohly/dwl/wiki/movestack +--- + config.def.h | 2 ++ + dwl.c | 35 +++++++++++++++++++++++++++++++++++ + 2 files changed, 37 insertions(+) + diff --git a/config.def.h b/config.def.h index db0babc..778a0dc 100644 --- a/config.def.h @@ -64,3 +75,6 @@ index ef27a1d..69b9756 100644 void motionabsolute(struct wl_listener *listener, void *data) { +-- +2.42.0 + -- 2.48.1