commit fe6b2278832a8317fdfae3f2651285666e8762fd
parent 66c61c455349639ca5a00d9c634b3decdd13763d
Author: kzed@eris <unknown>
Date: Mon, 17 Aug 2009 17:31:41 +0200
added page on attachabove patch
Diffstat:
2 files changed, 50 insertions(+), 0 deletions(-)
diff --git a/dwm.suckless.org/patches/attachabove-5.6.1.diff b/dwm.suckless.org/patches/attachabove-5.6.1.diff
@@ -0,0 +1,40 @@
+diff -r e47a47bd3ed4 dwm.c
+--- a/dwm.c Tue Jul 21 10:57:54 2009 +0100
++++ b/dwm.c Mon Aug 17 15:03:36 2009 +0200
+@@ -153,6 +153,7 @@
+ static Bool applysizehints(Client *c, int *x, int *y, int *w, int *h, Bool interact);
+ static void arrange(void);
+ static void attach(Client *c);
++static void attachabove(Client *c);
+ static void attachstack(Client *c);
+ static void buttonpress(XEvent *e);
+ static void checkotherwm(void);
+@@ -394,6 +395,19 @@
+ attach(Client *c) {
+ c->next = c->mon->clients;
+ c->mon->clients = c;
++}
++
++void
++attachabove(Client *c) {
++ if(c->mon->sel == NULL || c->mon->sel == c->mon->clients || c->mon->sel->isfloating) {
++ attach(c);
++ return;
++ }
++
++ Client *at;
++ for (at = c->mon->clients; at->next != c->mon->sel; at = at->next);
++ c->next = at->next;
++ at->next = c;
+ }
+
+ void
+@@ -1098,7 +1112,7 @@
+ c->isfloating = trans != None || c->isfixed;
+ if(c->isfloating)
+ XRaiseWindow(dpy, c->win);
+- attach(c);
++ attachabove(c);
+ attachstack(c);
+ XMoveResizeWindow(dpy, c->win, c->x + 2 * sw, c->y, c->w, c->h); /* some windows require this */
+ XMapWindow(dpy, c->win);
diff --git a/dwm.suckless.org/patches/attachabove.md b/dwm.suckless.org/patches/attachabove.md
@@ -0,0 +1,10 @@
+# ATTACHABOVE
+
+## Description
+
+Make new clients get attached above the selected client (instead of always
+becoming the new master) - basically how xmonad does it.
+
+## Download
+
+ * [attachabove-5.6.1.diff](attachabove-5.6.1.diff) (1.1K) (20090817)