[wiki] [sites] [dwm][patch][alwaysontop] fix alwaysontop clients spanning monitors || Rob Pilling

From: <git_AT_suckless.org>
Date: Tue, 28 Jul 2020 19:43:08 +0200

commit 145403949df5569a3b660befd5a2bc98bd71ad06
Author: Rob Pilling <robpilling_AT_gmail.com>
Date: Tue Jul 28 18:43:02 2020 +0100

    [dwm][patch][alwaysontop] fix alwaysontop clients spanning monitors

diff --git a/dwm.suckless.org/patches/alwaysontop/alwaysontop-6.2.diff b/dwm.suckless.org/patches/alwaysontop/alwaysontop-6.2.diff
index 8c092ec5..21b1be1d 100644
--- a/dwm.suckless.org/patches/alwaysontop/alwaysontop-6.2.diff
+++ b/dwm.suckless.org/patches/alwaysontop/alwaysontop-6.2.diff
_AT_@ -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_AT_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
_AT_@ -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
 _AT_@ -92,7 +92,7 @@ struct Client {
_AT_@ -54,23 +54,25 @@ index cc36b03..1b1b491 100644
                  } else {
                          drw_setscheme(drw, scheme[SchemeNorm]);
                          drw_rect(drw, x, 0, w, bh, 1, 1);
-_AT_@ -1430,6 +1434,15 @@ restack(Monitor *m)
+_AT_@ -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;
-_AT_@ -1803,6 +1816,30 @@ togglefloating(const Arg *arg)
+_AT_@ -1803,6 +1818,30 @@ togglefloating(const Arg *arg)
          arrange(selmon);
  }
  
Received on Tue Jul 28 2020 - 19:43:08 CEST

This archive was generated by hypermail 2.3.0 : Tue Jul 28 2020 - 19:48:50 CEST