commit e3f502e39ed5f78a045d14d914aa8d09b5e9fcc2
Author: Alex Cole <[email protected]>
Date:   Sat Nov 7 10:24:54 2020 +1300

    [dwm][patch][floatrules] Added support for multiple monitors

diff --git 
a/dwm.suckless.org/patches/floatrules/dwm-floatrules-20201107-61bb8b2.diff 
b/dwm.suckless.org/patches/floatrules/dwm-floatrules-20201107-61bb8b2.diff
new file mode 100644
index 00000000..d1d4640b
--- /dev/null
+++ b/dwm.suckless.org/patches/floatrules/dwm-floatrules-20201107-61bb8b2.diff
@@ -0,0 +1,64 @@
+diff -u dwm/config.def.h dwmnew/config.def.h
+--- dwm/config.def.h   2020-03-01 19:10:06.676821764 +1300
++++ dwmnew/config.def.h        2020-03-01 19:29:26.276901430 +1300
+@@ -26,9 +26,9 @@
+        *      WM_CLASS(STRING) = instance, class
+        *      WM_NAME(STRING) = title
+        */
+-      /* class      instance    title       tags mask     isfloating   
monitor */
+-      { "Gimp",     NULL,       NULL,       0,            1,           -1 },
+-      { "Firefox",  NULL,       NULL,       1 << 8,       0,           -1 },
++      /* class      instance    title       tags mask     isfloating   
monitor    float x,y,w,h         floatborderpx*/
++      { "Gimp",     NULL,       NULL,       0,            1,           -1,    
    50,50,500,500,        5 },
++      { "Firefox",  NULL,       NULL,       1 << 8,       0,           -1,    
    50,50,500,500,        5 },
+ };
+ 
+ /* layout(s) */
+Only in dwmnew: config.h
+Only in dwmnew: drw.o
+diff -u dwm/dwm.c dwmnew/dwm.c
+--- dwm/dwm.c  2020-03-01 19:10:06.680155097 +1300
++++ dwmnew/dwm.c       2020-03-01 19:28:26.793564016 +1300
+@@ -93,6 +93,7 @@
+       int bw, oldbw;
+       unsigned int tags;
+       int isfixed, isfloating, isurgent, neverfocus, oldstate, isfullscreen;
++      int floatborderpx;
+       Client *next;
+       Client *snext;
+       Monitor *mon;
+@@ -139,6 +140,8 @@
+       unsigned int tags;
+       int isfloating;
+       int monitor;
++      int floatx, floaty, floatw, floath;
++      int floatborderpx;
+ } Rule;
+ 
+ /* function declarations */
+@@ -299,6 +302,13 @@
+               {
+                       c->isfloating = r->isfloating;
+                       c->tags |= r->tags;
++                      c->floatborderpx = r->floatborderpx;
++                      if (r->isfloating) {
++                              c->x = c->mon->mx + r->floatx;
++                              c->y = r->floaty;
++                              c->w = r->floatw;
++                              c->h = r->floath;
++                      }
+                       for (m = mons; m && m->num != r->monitor; m = m->next);
+                       if (m)
+                               c->mon = m;
+@@ -1281,7 +1291,10 @@
+       c->oldy = c->y; c->y = wc.y = y;
+       c->oldw = c->w; c->w = wc.width = w;
+       c->oldh = c->h; c->h = wc.height = h;
+-      wc.border_width = c->bw;
++      if (c->isfloating)
++              wc.border_width = c->floatborderpx;
++      else
++              wc.border_width = c->bw;
+       XConfigureWindow(dpy, c->win, CWX|CWY|CWWidth|CWHeight|CWBorderWidth, 
&wc);
+       configure(c);
+       XSync(dpy, False);
diff --git a/dwm.suckless.org/patches/floatrules/index.md 
b/dwm.suckless.org/patches/floatrules/index.md
index 2e053d5c..6178e4c8 100644
--- a/dwm.suckless.org/patches/floatrules/index.md
+++ b/dwm.suckless.org/patches/floatrules/index.md
@@ -14,11 +14,17 @@ Please note that this patch needs `rm config.h` to be added 
to the `Makefile`.
 Screenshots:
 ![floatrules screenshot](floatrules.png)
 
+Updates
+-------
+* 2020-11-07: Added support for multiple monitors
+
 Download
 --------
+
+* [dwm-floatrules-20201107-61bb8b2.diff](dwm-floatrules-20201107-61bb8b2.diff) 
(multiple monitors version)
 * [dwm-floatrules-6.2.diff](dwm-floatrules-6.2.diff) (2020-03-01)
 
 Author
 ------
-* Alex Cole
+* Alex Cole (original and 2020-11-07 update)
 * Jakub Profota (fix 2020-03-22)


Reply via email to