# HG changeset patch # User Anselm R. Garbe # 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) {