From 0f284023050cca4a66479e36bd2fa37a1798bf83 Mon Sep 17 00:00:00 2001 From: bakkeby Date: Fri, 22 Jan 2021 11:28:55 +0100 Subject: [PATCH] Adding placemouse patch --- README.md | 5 +++++ config.def.h | 3 +++ dwm.c | 3 +++ patch/include.c | 3 +++ patch/include.h | 3 +++ patches.def.h | 5 +++++ 6 files changed, 22 insertions(+) diff --git a/README.md b/README.md index c250f6b..cc89b8a 100644 --- a/README.md +++ b/README.md @@ -15,6 +15,8 @@ Refer to [https://dwm.suckless.org/](https://dwm.suckless.org/) for details on t ### Changelog: +2021-01-22 - Added the placemouse patch + 2021-01-02 - Added the Layoutmenu patch 2020-10-26 - Added the \_NET\_CLIENT\_LIST\_STACKING patch @@ -448,6 +450,9 @@ Refer to [https://dwm.suckless.org/](https://dwm.suckless.org/) for details on t - [pertag](https://dwm.suckless.org/patches/pertag/) - adds nmaster, mfact, layouts and more per tag rather than per monitor + - [placemouse](https://github.com/bakkeby/patches/wiki/placemouse) + - lets the user change the position of a client in the stack using the mouse. + - [powerline](https://gitlab.com/udiboy1209-suckless/dwm/-/commit/071f5063e8ac4280666828179f92788d893eea40#4b1a539194be7467cefbda22f675a3b7c19ceca7) - adds drawing of powerline arrows (and diagonal lines) for both the status bar and the tags diff --git a/config.def.h b/config.def.h index 21074a5..4019465 100644 --- a/config.def.h +++ b/config.def.h @@ -1160,6 +1160,9 @@ static Button buttons[] = { { ClkStatusText, 0, Button2, spawn, {.v = termcmd } }, #endif // BAR_STATUSCMD_PATCH { ClkClientWin, MODKEY, Button1, movemouse, {0} }, + #if PLACEMOUSE_PATCH + { ClkClientWin, MODKEY|ControlMask, Button1, placemouse, {0} }, + #endif // PLACEMOUSE_PATCH { ClkClientWin, MODKEY, Button2, togglefloating, {0} }, { ClkClientWin, MODKEY, Button3, resizemouse, {0} }, #if DRAGCFACT_PATCH && CFACTS_PATCH diff --git a/dwm.c b/dwm.c index aac4581..43fe20d 100644 --- a/dwm.c +++ b/dwm.c @@ -338,6 +338,9 @@ struct Client { #if ISPERMANENT_PATCH int ispermanent; #endif // ISPERMANENT_PATCH + #if PLACEMOUSE_PATCH + int beingmoved; + #endif // PLACEMOUSE_PATCH #if SWALLOW_PATCH int isterminal, noswallow; pid_t pid; diff --git a/patch/include.c b/patch/include.c index 8e1d590..49590a7 100644 --- a/patch/include.c +++ b/patch/include.c @@ -183,6 +183,9 @@ #if PERTAG_PATCH #include "pertag.c" #endif +#if PLACEMOUSE_PATCH +#include "placemouse.c" +#endif #if PUSH_NO_MASTER_PATCH #include "push_no_master.c" #elif PUSH_PATCH diff --git a/patch/include.h b/patch/include.h index 5ebc442..8703af1 100644 --- a/patch/include.h +++ b/patch/include.h @@ -179,6 +179,9 @@ #if PERTAG_PATCH #include "pertag.h" #endif +#if PLACEMOUSE_PATCH +#include "placemouse.h" +#endif #if PUSH_NO_MASTER_PATCH #include "push_no_master.h" #elif PUSH_PATCH diff --git a/patches.def.h b/patches.def.h index 12a3670..39b58a8 100644 --- a/patches.def.h +++ b/patches.def.h @@ -721,6 +721,11 @@ */ #define PERTAGBAR_PATCH 0 +/* This patch lets you change the position of a client in the stack using the mouse. + * https://github.com/bakkeby/patches/wiki/placemouse + */ +#define PLACEMOUSE_PATCH 0 + /* This patch provides a way to move clients up and down inside the client list. * https://dwm.suckless.org/patches/push/ */