commit 145403949df5569a3b660befd5a2bc98bd71ad06
parent d5fcf682802ab1a3c6fb8cb19e41acad829fc88e
Author: Rob Pilling <robpilling@gmail.com>
Date: Tue, 28 Jul 2020 18:43:02 +0100
[dwm][patch][alwaysontop] fix alwaysontop clients spanning monitors
Diffstat:
1 file changed, 13 insertions(+), 11 deletions(-)
diff --git a/dwm.suckless.org/patches/alwaysontop/alwaysontop-6.2.diff b/dwm.suckless.org/patches/alwaysontop/alwaysontop-6.2.diff
@@ -1,14 +1,14 @@
-From 05444e0cc72422b05000ddf748a572ee83bed9f4 Mon Sep 17 00:00:00 2001
+From 965f36e67825a790074c6860c52ccebb3791daa4 Mon Sep 17 00:00:00 2001
From: Rob Pilling <robpilling@gmail.com>
Date: Mon, 27 Jul 2020 20:11:08 +0100
Subject: [PATCH] alwaysontop
---
config.h | 1 +
- dwm.c | 41 +++++++++++++++++++++++++++++++++++++++--
- 2 files changed, 40 insertions(+), 2 deletions(-)
+ dwm.c | 43 +++++++++++++++++++++++++++++++++++++++++--
+ 2 files changed, 42 insertions(+), 2 deletions(-)
-diff --git a/config.def.h b/config.def.h
+diff --git a/config.h b/config.h
index 7283a2d..c10bd8b 100644
--- a/config.h
+++ b/config.h
@@ -21,7 +21,7 @@ index 7283a2d..c10bd8b 100644
{ MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } },
{ MODKEY, XK_comma, focusmon, {.i = -1 } },
diff --git a/dwm.c b/dwm.c
-index cc36b03..1b1b491 100644
+index cc36b03..cbd0dca 100644
--- a/dwm.c
+++ b/dwm.c
@@ -92,7 +92,7 @@ struct Client {
@@ -54,23 +54,25 @@ index cc36b03..1b1b491 100644
} else {
drw_setscheme(drw, scheme[SchemeNorm]);
drw_rect(drw, x, 0, w, bh, 1, 1);
-@@ -1430,6 +1434,15 @@ restack(Monitor *m)
+@@ -1430,6 +1434,17 @@ restack(Monitor *m)
return;
if (m->sel->isfloating || !m->lt[m->sellt]->arrange)
XRaiseWindow(dpy, m->sel->win);
+
+ /* raise the aot window */
-+ for(c = m->clients; c; c = c->next){
-+ if(c->isalwaysontop){
-+ XRaiseWindow(dpy, c->win);
-+ break;
++ for(Monitor *m_search = mons; m_search; m_search = m_search->next){
++ for(c = m_search->clients; c; c = c->next){
++ if(c->isalwaysontop){
++ XRaiseWindow(dpy, c->win);
++ break;
++ }
+ }
+ }
+
if (m->lt[m->sellt]->arrange) {
wc.stack_mode = Below;
wc.sibling = m->barwin;
-@@ -1803,6 +1816,30 @@ togglefloating(const Arg *arg)
+@@ -1803,6 +1818,30 @@ togglefloating(const Arg *arg)
arrange(selmon);
}