# HG changeset patch
# User Anselm R. Garbe <arg@10kloc.org>
# Date 1157439757 -7200
# Node ID ad2b6ce6e95be8b6f58a5ea9b3b302fcea905092
# Parent  c6ffcc2012297152049f6c71dcbb68630551959c
I really need column growing, now pushing upstream

diff -r c6ffcc201229 -r ad2b6ce6e95b config.arg.h
--- a/config.arg.h	Tue Sep 05 08:37:34 2006 +0200
+++ b/config.arg.h	Tue Sep 05 09:02:37 2006 +0200
@@ -34,6 +34,7 @@
 	{ MODKEY,			XK_k,		focusprev,	{ 0 } }, \
 	{ MODKEY,			XK_Return,	zoom,		{ 0 } }, \
 	{ MODKEY,			XK_m,		togglemax,	{ 0 } }, \
+	{ MODKEY,			XK_g,		growcol,	{ .i = 20 } }, \
 	{ MODKEY|ShiftMask,		XK_1,		tag,		{ .i = 0 } }, \
 	{ MODKEY|ShiftMask,		XK_2,		tag,		{ .i = 1 } }, \
 	{ MODKEY|ShiftMask,		XK_3,		tag,		{ .i = 2 } }, \
diff -r c6ffcc201229 -r ad2b6ce6e95b config.default.h
--- a/config.default.h	Tue Sep 05 08:37:34 2006 +0200
+++ b/config.default.h	Tue Sep 05 09:02:37 2006 +0200
@@ -29,6 +29,7 @@
 	{ MODKEY|ShiftMask,		XK_Tab,		focusprev,	{ 0 } }, \
 	{ MODKEY,			XK_Return,	zoom,		{ 0 } }, \
 	{ MODKEY,			XK_m,		togglemax,	{ 0 } }, \
+	{ MODKEY,			XK_g,		growcol,	{ .i = 20 } }, \
 	{ MODKEY|ShiftMask,		XK_1,		tag,		{ .i = 0 } }, \
 	{ MODKEY|ShiftMask,		XK_2,		tag,		{ .i = 1 } }, \
 	{ MODKEY|ShiftMask,		XK_3,		tag,		{ .i = 2 } }, \
diff -r c6ffcc201229 -r ad2b6ce6e95b dwm.1
--- a/dwm.1	Tue Sep 05 08:37:34 2006 +0200
+++ b/dwm.1	Tue Sep 05 09:02:37 2006 +0200
@@ -90,6 +90,12 @@
 Maximize current
 .BR window .
 .TP
+.B Mod1-g
+Grow current
+.BR column
+.RB ( tiling
+mode only).
+.TP
 .B Mod1-Shift-[1..n]
 Apply
 .B nth tag
diff -r c6ffcc201229 -r ad2b6ce6e95b dwm.h
--- a/dwm.h	Tue Sep 05 08:37:34 2006 +0200
+++ b/dwm.h	Tue Sep 05 09:02:37 2006 +0200
@@ -131,6 +131,7 @@
 extern void dotile(Arg *arg);
 extern void focusnext(Arg *arg);
 extern void focusprev(Arg *arg);
+extern void growcol(Arg *arg);
 extern Bool isvisible(Client *c);
 extern void restack();
 extern void togglemode(Arg *arg);
diff -r c6ffcc201229 -r ad2b6ce6e95b view.c
--- a/view.c	Tue Sep 05 08:37:34 2006 +0200
+++ b/view.c	Tue Sep 05 09:02:37 2006 +0200
@@ -169,6 +169,24 @@
 	}
 }
 
+void
+growcol(Arg *arg)
+{
+	if(!sel || (arrange != dotile))
+		return;
+	if(sel == getnext(clients)) {
+		if(mw + arg->i > sw - 100)
+			return;
+		mw += arg->i;
+	}
+	else {
+		if(mw - arg->i < 100)
+			return;
+		mw -= arg->i;
+	}
+	arrange(NULL);
+}
+
 Bool
 isvisible(Client *c)
 {