commit 435220482521b2b8e0bc30a4cb5b272af05250b2
parent f4a3c0abe5812f1fd62fab3be390ac1ef6d841ed
Author: Jan Christoph Ebersbach <jceb@e-jc.de>
Date: Sat, 24 Mar 2012 13:51:52 +0100
update patches to dwm tip ad90e7fab364
Diffstat:
13 files changed, 68 insertions(+), 61 deletions(-)
diff --git a/dwm.suckless.org/patches/dwm-6.0-attachabove.diff b/dwm.suckless.org/patches/dwm-6.0-attachabove.diff
@@ -1,10 +1,11 @@
+Author: Jan Christoph Ebersbach <jceb@e-jc.de>
URL: http://dwm.suckless.org/patches/attachabove
attachabove makes new clients attach above the selected client (instead of
always becoming the new master) – basically how Xmonad does it.
-diff -r 6f54bd1ef439 dwm.c
---- a/dwm.c Wed Jan 04 13:30:12 2012 +0100
-+++ b/dwm.c Sun Feb 12 09:32:42 2012 +0100
+diff -r ad90e7fab364 dwm.c
+--- a/dwm.c Fri Feb 10 00:36:08 2012 +0000
++++ b/dwm.c Sat Mar 24 13:41:10 2012 +0100
@@ -160,6 +160,7 @@
static void arrange(Monitor *m);
static void arrangemon(Monitor *m);
@@ -42,7 +43,7 @@ diff -r 6f54bd1ef439 dwm.c
attachstack(c);
XMoveResizeWindow(dpy, c->win, c->x + 2 * sw, c->y, c->w, c->h); /* some windows require this */
setclientstate(c, NormalState);
-@@ -1480,7 +1494,7 @@
+@@ -1481,7 +1495,7 @@
detachstack(c);
c->mon = m;
c->tags = m->tagset[m->seltags]; /* assign tags of target monitor */
@@ -51,7 +52,7 @@ diff -r 6f54bd1ef439 dwm.c
attachstack(c);
focus(NULL);
arrange(NULL);
-@@ -1900,7 +1914,7 @@
+@@ -1903,7 +1917,7 @@
m->clients = c->next;
detachstack(c);
c->mon = mons;
diff --git a/dwm.suckless.org/patches/dwm-6.0-float_border_color2.diff b/dwm.suckless.org/patches/dwm-6.0-float_border_color2.diff
@@ -2,9 +2,9 @@ URL: http://dwm.suckless.org/patches/historical/float_border_color
float_border_color2 allows you to specify a different border color for floating
windows.
-diff -r 6f54bd1ef439 config.def.h
---- a/config.def.h Wed Jan 04 13:30:12 2012 +0100
-+++ b/config.def.h Sun Feb 12 09:32:30 2012 +0100
+diff -r ad90e7fab364 config.def.h
+--- a/config.def.h Fri Feb 10 00:36:08 2012 +0000
++++ b/config.def.h Sat Mar 24 13:41:08 2012 +0100
@@ -8,6 +8,8 @@
static const char selbordercolor[] = "#005577";
static const char selbgcolor[] = "#005577";
@@ -14,9 +14,9 @@ diff -r 6f54bd1ef439 config.def.h
static const unsigned int borderpx = 1; /* border pixel of windows */
static const unsigned int snap = 32; /* snap pixel */
static const Bool showbar = True; /* False means no bar */
-diff -r 6f54bd1ef439 dwm.c
---- a/dwm.c Wed Jan 04 13:30:12 2012 +0100
-+++ b/dwm.c Sun Feb 12 09:32:30 2012 +0100
+diff -r ad90e7fab364 dwm.c
+--- a/dwm.c Fri Feb 10 00:36:08 2012 +0000
++++ b/dwm.c Sat Mar 24 13:41:08 2012 +0100
@@ -57,7 +57,7 @@
/* enums */
@@ -47,7 +47,7 @@ diff -r 6f54bd1ef439 dwm.c
attach(c);
attachstack(c);
XMoveResizeWindow(dpy, c->win, c->x + 2 * sw, c->y, c->w, c->h); /* some windows require this */
-@@ -1615,9 +1620,11 @@
+@@ -1616,9 +1621,11 @@
dc.norm[ColBorder] = getcolor(normbordercolor);
dc.norm[ColBG] = getcolor(normbgcolor);
dc.norm[ColFG] = getcolor(normfgcolor);
@@ -60,17 +60,17 @@ diff -r 6f54bd1ef439 dwm.c
dc.gc = XCreateGC(dpy, root, 0, NULL);
XSetLineAttributes(dpy, dc.gc, 1, LineSolid, CapButt, JoinMiter);
@@ -1741,6 +1748,10 @@
+ if(!selmon->sel)
return;
selmon->sel->isfloating = !selmon->sel->isfloating || selmon->sel->isfixed;
- if(selmon->sel->isfloating)
++ if(selmon->sel->isfloating)
+ XSetWindowBorder(dpy, selmon->sel->win, dc.sel[ColBorderFloat]);
+ else
+ XSetWindowBorder(dpy, selmon->sel->win, dc.sel[ColBorder]);
-+ if(selmon->sel->isfloating)
+ if(selmon->sel->isfloating)
resize(selmon->sel, selmon->sel->x, selmon->sel->y,
selmon->sel->w, selmon->sel->h, False);
- arrange(selmon);
-@@ -1776,7 +1787,10 @@
+@@ -1777,7 +1788,10 @@
if(!c)
return;
grabbuttons(c, False);
diff --git a/dwm.suckless.org/patches/dwm-6.0-maximize_vert_horz.diff b/dwm.suckless.org/patches/dwm-6.0-maximize_vert_horz.diff
@@ -1,10 +1,11 @@
+Author: Jan Christoph Ebersbach <jceb@e-jc.de>
URL: http://dwm.suckless.org/patches/historical/moveresize
These patches provide helper functions for moving and resizing floating windows
using keybindings.
-diff -r 6f54bd1ef439 dwm.c
---- a/dwm.c Wed Jan 04 13:30:12 2012 +0100
-+++ b/dwm.c Sun Feb 12 09:32:28 2012 +0100
+diff -r ad90e7fab364 dwm.c
+--- a/dwm.c Fri Feb 10 00:36:08 2012 +0000
++++ b/dwm.c Sat Mar 24 13:41:07 2012 +0100
@@ -90,7 +90,7 @@
int basew, baseh, incw, inch, maxw, maxh, minw, minh;
int bw, oldbw;
@@ -23,9 +24,9 @@ diff -r 6f54bd1ef439 dwm.c
if(!c->isfloating)
c->isfloating = c->oldstate = trans != None || c->isfixed;
if(c->isfloating)
-diff -r 6f54bd1ef439 maximize.c
+diff -r ad90e7fab364 maximize.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ b/maximize.c Sun Feb 12 09:32:28 2012 +0100
++++ b/maximize.c Sat Mar 24 13:41:07 2012 +0100
@@ -0,0 +1,45 @@
+void
+maximize(int x, int y, int w, int h) {
diff --git a/dwm.suckless.org/patches/dwm-6.0-moveresize.diff b/dwm.suckless.org/patches/dwm-6.0-moveresize.diff
@@ -1,10 +1,11 @@
+Author: Jan Christoph Ebersbach <jceb@e-jc.de>
URL: http://dwm.suckless.org/patches/historical/moveresize
These patches provide helper functions for moving and resizing floating windows
using keybindings.
-diff -r 6f54bd1ef439 moveresize.c
+diff -r ad90e7fab364 moveresize.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ b/moveresize.c Sun Feb 12 09:32:20 2012 +0100
++++ b/moveresize.c Sat Mar 24 13:41:04 2012 +0100
@@ -0,0 +1,64 @@
+void
+moveresize(const Arg *arg) {
diff --git a/dwm.suckless.org/patches/dwm-6.0-pertag.diff b/dwm.suckless.org/patches/dwm-6.0-pertag.diff
@@ -1,9 +1,10 @@
+Author: Jan Christoph Ebersbach <jceb@e-jc.de>
URL: http://dwm.suckless.org/patches/pertag
This patch keeps layout, mwfact, barpos and nmaster per tag.
-diff -r 6f54bd1ef439 dwm.c
---- a/dwm.c Wed Jan 04 13:30:12 2012 +0100
-+++ b/dwm.c Sun Feb 12 09:32:34 2012 +0100
+diff -r ad90e7fab364 dwm.c
+--- a/dwm.c Fri Feb 10 00:36:08 2012 +0000
++++ b/dwm.c Sat Mar 24 13:41:09 2012 +0100
@@ -124,6 +124,7 @@
void (*arrange)(Monitor *);
} Layout;
@@ -78,7 +79,7 @@ diff -r 6f54bd1ef439 dwm.c
arrange(selmon);
}
-@@ -1555,10 +1585,13 @@
+@@ -1556,10 +1586,13 @@
void
setlayout(const Arg *arg) {
@@ -95,7 +96,7 @@ diff -r 6f54bd1ef439 dwm.c
strncpy(selmon->ltsymbol, selmon->lt[selmon->sellt]->symbol, sizeof selmon->ltsymbol);
if(selmon->sel)
arrange(selmon);
-@@ -1576,7 +1609,7 @@
+@@ -1577,7 +1610,7 @@
f = arg->f < 1.0 ? arg->f + selmon->mfact : arg->f - 1.0;
if(f < 0.1 || f > 0.9)
return;
@@ -104,7 +105,7 @@ diff -r 6f54bd1ef439 dwm.c
arrange(selmon);
}
-@@ -1729,7 +1762,7 @@
+@@ -1730,7 +1763,7 @@
void
togglebar(const Arg *arg) {
@@ -113,7 +114,7 @@ diff -r 6f54bd1ef439 dwm.c
updatebarpos(selmon);
XMoveResizeWindow(dpy, selmon->barwin, selmon->wx, selmon->by, selmon->ww, bh);
arrange(selmon);
-@@ -1763,9 +1796,29 @@
+@@ -1764,9 +1797,29 @@
void
toggleview(const Arg *arg) {
unsigned int newtagset = selmon->tagset[selmon->seltags] ^ (arg->ui & TAGMASK);
@@ -143,7 +144,7 @@ diff -r 6f54bd1ef439 dwm.c
focus(NULL);
arrange(selmon);
}
-@@ -2043,11 +2096,33 @@
+@@ -2046,11 +2099,33 @@
void
view(const Arg *arg) {
diff --git a/dwm.suckless.org/patches/dwm-6.0-push.diff b/dwm.suckless.org/patches/dwm-6.0-push.diff
@@ -1,9 +1,9 @@
URL: http://dwm.suckless.org/patches/push
pushup and pushdown provide a way to move clients inside the clients list.
-diff -r 6f54bd1ef439 push.c
+diff -r ad90e7fab364 push.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ b/push.c Sun Feb 12 09:32:46 2012 +0100
++++ b/push.c Sat Mar 24 13:41:11 2012 +0100
@@ -0,0 +1,58 @@
+static Client *
+prevtiled(Client *c) {
diff --git a/dwm.suckless.org/patches/dwm-6.0-save_floats.diff b/dwm.suckless.org/patches/dwm-6.0-save_floats.diff
@@ -3,9 +3,9 @@ This patch saves size and position of every floating window before it is forced
into tiled mode. If the window is made floating again, the old dimensions will
be restored.
-diff -r 6f54bd1ef439 dwm.c
---- a/dwm.c Wed Jan 04 13:30:12 2012 +0100
-+++ b/dwm.c Sun Feb 12 09:32:23 2012 +0100
+diff -r ad90e7fab364 dwm.c
+--- a/dwm.c Fri Feb 10 00:36:08 2012 +0000
++++ b/dwm.c Sat Mar 24 13:41:05 2012 +0100
@@ -86,6 +86,7 @@
char name[256];
float mina, maxa;
@@ -25,7 +25,7 @@ diff -r 6f54bd1ef439 dwm.c
XSelectInput(dpy, w, EnterWindowMask|FocusChangeMask|PropertyChangeMask|StructureNotifyMask);
grabbuttons(c, False);
if(!c->isfloating)
-@@ -1741,8 +1746,16 @@
+@@ -1742,8 +1747,16 @@
return;
selmon->sel->isfloating = !selmon->sel->isfloating || selmon->sel->isfixed;
if(selmon->sel->isfloating)
diff --git a/dwm.suckless.org/patches/dwm-6.0-single_tagset.diff b/dwm.suckless.org/patches/dwm-6.0-single_tagset.diff
@@ -15,9 +15,9 @@ Several deep changes needed to be made:
Please be aware that this patch probably breaks any other patch!
-diff -r 60b9b3056194 dwm.c
---- a/dwm.c Mon Mar 19 07:31:04 2012 +0100
-+++ b/dwm.c Mon Mar 19 07:32:30 2012 +0100
+diff -r ad90e7fab364 dwm.c
+--- a/dwm.c Fri Feb 10 00:36:08 2012 +0000
++++ b/dwm.c Sat Mar 24 13:41:03 2012 +0100
@@ -45,7 +45,7 @@
#define CLEANMASK(mask) (mask & ~(numlockmask|LockMask) & (ShiftMask|ControlMask|Mod1Mask|Mod2Mask|Mod3Mask|Mod4Mask|Mod5Mask))
#define INTERSECT(x,y,w,h,m) (MAX(0, MIN((x)+(w),(m)->wx+(m)->ww) - MAX((x),(m)->wx)) \
diff --git a/dwm.suckless.org/patches/dwm-6.0-single_window_no_border.diff b/dwm.suckless.org/patches/dwm-6.0-single_window_no_border.diff
@@ -1,10 +1,11 @@
+Author: Jan Christoph Ebersbach <jceb@e-jc.de>
URL: http://dwm.suckless.org/patches/noborder
This patch removes the border when there is just one window visible in tiled or
monocle layout.
-diff -r 6f54bd1ef439 dwm.c
---- a/dwm.c Wed Jan 04 13:30:12 2012 +0100
-+++ b/dwm.c Sun Feb 12 09:32:38 2012 +0100
+diff -r ad90e7fab364 dwm.c
+--- a/dwm.c Fri Feb 10 00:36:08 2012 +0000
++++ b/dwm.c Sat Mar 24 13:41:09 2012 +0100
@@ -1191,7 +1191,7 @@
void
@@ -34,7 +35,7 @@ diff -r 6f54bd1ef439 dwm.c
}
void
-@@ -1703,7 +1712,7 @@
+@@ -1704,7 +1713,7 @@
void
tile(Monitor *m) {
@@ -43,7 +44,7 @@ diff -r 6f54bd1ef439 dwm.c
Client *c;
for(n = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), n++);
-@@ -1714,17 +1723,36 @@
+@@ -1715,17 +1724,36 @@
mw = m->nmaster ? m->ww * m->mfact : 0;
else
mw = m->ww;
@@ -81,7 +82,7 @@ diff -r 6f54bd1ef439 dwm.c
}
void
-@@ -1740,9 +1768,15 @@
+@@ -1741,9 +1769,15 @@
if(!selmon->sel)
return;
selmon->sel->isfloating = !selmon->sel->isfloating || selmon->sel->isfixed;
diff --git a/dwm.suckless.org/patches/dwm-6.0-statusallmons.diff b/dwm.suckless.org/patches/dwm-6.0-statusallmons.diff
@@ -1,9 +1,9 @@
URL: http://dwm.suckless.org/patches/statusallmons
This patch draws and updates the statusbar on all monitors.
-diff -r 6f54bd1ef439 dwm.c
---- a/dwm.c Wed Jan 04 13:30:12 2012 +0100
-+++ b/dwm.c Sun Feb 12 09:32:49 2012 +0100
+diff -r ad90e7fab364 dwm.c
+--- a/dwm.c Fri Feb 10 00:36:08 2012 +0000
++++ b/dwm.c Sat Mar 24 13:41:12 2012 +0100
@@ -740,17 +740,13 @@
drawtext(m->ltsymbol, dc.norm, False);
dc.x += dc.w;
@@ -28,7 +28,7 @@ diff -r 6f54bd1ef439 dwm.c
if((dc.w = dc.x - x) > bh) {
dc.x = x;
if(m->sel) {
-@@ -2005,9 +2001,11 @@
+@@ -2008,9 +2004,11 @@
void
updatestatus(void) {
diff --git a/dwm.suckless.org/patches/dwm-6.0-swapfocus.diff b/dwm.suckless.org/patches/dwm-6.0-swapfocus.diff
@@ -3,9 +3,9 @@ This patch makes it possible to switch focus with one single shortcut (alt-s)
instead of having to think if you should use alt-j or alt-k for reaching the
last used window.
-diff -r 6f54bd1ef439 dwm.c
---- a/dwm.c Wed Jan 04 13:30:12 2012 +0100
-+++ b/dwm.c Sun Feb 12 09:32:52 2012 +0100
+diff -r ad90e7fab364 dwm.c
+--- a/dwm.c Fri Feb 10 00:36:08 2012 +0000
++++ b/dwm.c Sat Mar 24 13:41:13 2012 +0100
@@ -224,6 +224,7 @@
static void showhide(Client *c);
static void sigchld(int unused);
@@ -34,7 +34,7 @@ diff -r 6f54bd1ef439 dwm.c
unsigned long
getcolor(const char *colstr) {
Colormap cmap = DefaultColormap(dpy, screen);
-@@ -1775,6 +1782,7 @@
+@@ -1776,6 +1783,7 @@
unfocus(Client *c, Bool setfocus) {
if(!c)
return;
@@ -42,7 +42,7 @@ diff -r 6f54bd1ef439 dwm.c
grabbuttons(c, False);
XSetWindowBorder(dpy, c->win, dc.norm[ColBorder]);
if(setfocus)
-@@ -2116,6 +2124,7 @@
+@@ -2119,6 +2127,7 @@
void
zoom(const Arg *arg) {
Client *c = selmon->sel;
diff --git a/dwm.suckless.org/patches/dwm-6.0-tagall.diff b/dwm.suckless.org/patches/dwm-6.0-tagall.diff
@@ -1,9 +1,10 @@
+Author: Jan Christoph Ebersbach <jceb@e-jc.de>
URL: http://dwm.suckless.org/patches/historical/tagall
Shortcut to move all (floating) windows from one tag to another.
-diff -r 6f54bd1ef439 tagall.c
+diff -r ad90e7fab364 tagall.c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
-+++ b/tagall.c Sun Feb 12 09:32:25 2012 +0100
++++ b/tagall.c Sat Mar 24 13:41:06 2012 +0100
@@ -0,0 +1,24 @@
+void
+tagall(const Arg *arg) {
diff --git a/dwm.suckless.org/patches/dwm-6.0-zoomswap.diff b/dwm.suckless.org/patches/dwm-6.0-zoomswap.diff
@@ -1,9 +1,10 @@
+Author: Jan Christoph Ebersbach <jceb@e-jc.de>
URL: http://dwm.suckless.org/patches/zoomswap
This patch swaps the current window with the previous master when zooming.
-diff -r 6f54bd1ef439 dwm.c
---- a/dwm.c Wed Jan 04 13:30:12 2012 +0100
-+++ b/dwm.c Tue Feb 14 07:09:37 2012 +0100
+diff -r ad90e7fab364 dwm.c
+--- a/dwm.c Fri Feb 10 00:36:08 2012 +0000
++++ b/dwm.c Sat Mar 24 13:41:14 2012 +0100
@@ -253,6 +253,7 @@
static void zoom(const Arg *arg);
@@ -12,7 +13,7 @@ diff -r 6f54bd1ef439 dwm.c
static const char broken[] = "broken";
static char stext[256];
static int screen;
-@@ -2116,14 +2117,32 @@
+@@ -2119,14 +2120,32 @@
void
zoom(const Arg *arg) {
Client *c = selmon->sel;