URI: 
       revival of mfact and setmfact - dwm - dynamic window manager
  HTML git clone https://git.parazyd.org/dwm
   DIR Log
   DIR Files
   DIR Refs
   DIR README
   DIR LICENSE
       ---
   DIR commit a355782a7795c8c26a05e8bda1505ff46d5d0289
   DIR parent 20cd3360876f551c0f3b4c9c5a827a64b829e6ef
  HTML Author: Anselm R Garbe <garbeam@gmail.com>
       Date:   Mon, 24 Mar 2008 14:23:28 +0000
       
       revival of mfact and setmfact
       Diffstat:
         M config.def.h                        |       5 ++++-
         M dwm.1                               |       6 ++++++
         M dwm.c                               |      21 +++++++++++++++++++++
       
       3 files changed, 31 insertions(+), 1 deletion(-)
       ---
   DIR diff --git a/config.def.h b/config.def.h
       @@ -20,7 +20,8 @@ Rule rules[] = {
        
        /* geometries, s{x,y,w,h} and bh are already initualized here */
        /*   func name  bx  by  bw  wx  wy  ww     wh  mx  my       mw  mh     tx  ty     tw  th  mox moy mow moh */
       -DEFGEOM(single,  0,  0, sw,  0, bh, sw, sh-bh, wx, wy, 0.55*sw, wh, mx+mw, wy, ww-mw, wh,  wx, wy, ww, wh)
       +double mfact = 0.55;
       +DEFGEOM(single,  0,  0, sw,  0, bh, sw, sh-bh, wx, wy, mfact*sw, wh, mx+mw, wy, ww-mw, wh,  wx, wy, ww, wh)
        DEFGEOM(dual,    0,  0,1280, 0, bh, ww, wh-bh, wx, wy, 1280,800-bh,  1280,  0, ww-mw, sh,  mx, my, mw, mh)
        
        Geom geoms[] = {
       @@ -51,6 +52,8 @@ Key keys[] = {
                { MODKEY,                        XK_j,                focusnext,        NULL },
                { MODKEY,                        XK_k,                focusprev,        NULL },
                { MODKEY,                        XK_r,                reapply,        NULL },
       +        { MODKEY,                        XK_h,                setmfact,        "-0.05" },
       +        { MODKEY,                        XK_l,                setmfact,        "+0.05" },
                { MODKEY,                        XK_Return,        zoom,                NULL },
                { MODKEY,                        XK_Tab,                viewprevtag,        NULL },
                { MODKEY|ShiftMask,                XK_c,                killclient,        NULL },
   DIR diff --git a/dwm.1 b/dwm.1
       @@ -69,6 +69,12 @@ Focus next window.
        .B Mod1\-k
        Focus previous window.
        .TP
       +.B Mod1\-h
       +Decrease master area size.
       +.TP
       +.B Mod1\-l
       +Increase master area size.
       +.TP
        .B Mod1\-Return
        Zooms/cycles focused window to/from master area (tiled layouts only).
        .TP
   DIR diff --git a/dwm.c b/dwm.c
       @@ -178,6 +178,7 @@ void scan(void);
        void setclientstate(Client *c, long state);
        void setgeom(const char *arg);
        void setlayout(const char *arg);
       +void setmfact(const char *arg);
        void setup(void);
        void spawn(const char *arg);
        void tag(const char *arg);
       @@ -1463,6 +1464,26 @@ setlayout(const char *arg) {
        }
        
        void
       +setmfact(const char *arg) {
       +        double delta;
       +
       +        if(!arg)
       +                return;
       +        delta = strtod(arg, NULL);
       +        if(arg[0] == '-' || arg[0] == '+') {
       +                if(mfact + delta < 0.1 || mfact + delta > 0.9)
       +                        return;
       +                mfact += delta;
       +        }
       +        else {
       +                if(delta < 0.1 || delta > 0.9)
       +                        return;
       +                mfact = delta;
       +        }
       +        arrange();
       +}
       +
       +void
        setup(void) {
                unsigned int i, w;
                XSetWindowAttributes wa;