removed the stack position stuff
@@ -8,9 +8,7 @@ const char *tags[] = { "dev", "work", "net", "fnord", NULL };
#define DEFMODE dotile /* dofloat */ #define FLOATSYMBOL "><>" -#define STACKPOS StackRight /* StackLeft */ -#define BSTACKSYMBOL "===" -#define VSTACKSYMBOL "[]=" +#define TILESYMBOL "[]=" #define FONT "-*-terminus-medium-*-*-*-12-*-*-*-*-*-iso10646-*" #define NORMBGCOLOR "#333333"@@ -20,7 +18,7 @@ #define SELFGCOLOR "#eeeeee"
#define STATUSBGCOLOR "#222222" #define STATUSFGCOLOR "#9999cc" -#define MASTER 600 /* per mill */ +#define MASTER 600 /* per thousand */ #define MODKEY Mod1Mask #define KEYS \@@ -36,9 +34,8 @@ "-selbg '"SELBGCOLOR"' -selfg '"SELFGCOLOR"')\" && exec $exe" } }, \
{ MODKEY, XK_j, focusnext, { 0 } }, \ { MODKEY, XK_k, focusprev, { 0 } }, \ { MODKEY, XK_Return, zoom, { 0 } }, \ - { MODKEY, XK_b, togglestackpos, { 0 } }, \ - { MODKEY, XK_g, resizecol, { .i = 10 } }, \ - { MODKEY, XK_s, resizecol, { .i = -10 } }, \ + { MODKEY, XK_g, resizecol, { .i = 15 } }, \ + { MODKEY, XK_s, resizecol, { .i = -15 } }, \ { MODKEY|ShiftMask, XK_1, tag, { .i = 0 } }, \ { MODKEY|ShiftMask, XK_2, tag, { .i = 1 } }, \ { MODKEY|ShiftMask, XK_3, tag, { .i = 2 } }, \
@@ -8,9 +8,7 @@ const char *tags[] = { "1", "2", "3", "4", "5", NULL };
#define DEFMODE dotile /* dofloat */ #define FLOATSYMBOL "><>" -#define STACKPOS StackRight /* StackLeft */ -#define BSTACKSYMBOL "===" -#define VSTACKSYMBOL "[]=" +#define TILESYMBOL "[]=" #define FONT "fixed" #define NORMBGCOLOR "#333366"@@ -20,7 +18,7 @@ #define SELFGCOLOR "#eeeeee"
#define STATUSBGCOLOR "#dddddd" #define STATUSFGCOLOR "#222222" -#define MASTER 600 /* per mill */ +#define MASTER 600 /* per thousand */ #define MODKEY Mod1Mask #define KEYS \@@ -30,9 +28,8 @@ { MODKEY|ShiftMask, XK_Return, spawn, { .cmd = "exec xterm" } }, \
{ MODKEY, XK_Tab, focusnext, { 0 } }, \ { MODKEY|ShiftMask, XK_Tab, focusprev, { 0 } }, \ { MODKEY, XK_Return, zoom, { 0 } }, \ - { MODKEY, XK_b, togglestackpos, { 0 } }, \ - { MODKEY, XK_g, resizecol, { .i = 10 } }, \ - { MODKEY, XK_s, resizecol, { .i = -10 } }, \ + { MODKEY, XK_g, resizecol, { .i = 15 } }, \ + { MODKEY, XK_s, resizecol, { .i = -15 } }, \ { MODKEY|ShiftMask, XK_1, tag, { .i = 0 } }, \ { MODKEY|ShiftMask, XK_2, tag, { .i = 1 } }, \ { MODKEY|ShiftMask, XK_3, tag, { .i = 2 } }, \
@@ -104,9 +104,7 @@ dc.x += dc.w;
} dc.w = bmw; - drawtext(arrange == dofloat ? - FLOATSYMBOL : stackpos == StackBottom ? - BSTACKSYMBOL : VSTACKSYMBOL, dc.status, False); + drawtext(arrange == dofloat ? FLOATSYMBOL : TILESYMBOL, dc.status, False); x = dc.x + dc.w; dc.w = textw(stext);
@@ -40,8 +40,7 @@ click on a tag label to display all windows with that tag, click on the mode
label toggles between tiling and floating mode. .TP .B Button3 -click on a tag label adds/removes all windows with that tag to/from the view, -click on the mode label toggles the stack position (tiling mode). +click on a tag label adds/removes all windows with that tag to/from the view. .TP .B Mod1-Button1 click on a tag label applies that tag to the focused window.@@ -62,9 +61,6 @@ Focus previous window.
.TP .B Mod1-Return Zooms/cycles current window to/from master area (tiling mode), toggles maximization current window (floating mode). -.TP -.B Mod1-b -Toggle stack position (tiling mode only). .TP .B Mod1-g Grow current area (tiling mode only).
@@ -48,10 +48,6 @@ enum { CurNormal, CurResize, CurMove, CurLast }; /* cursor */
enum { ColFG, ColBG, ColLast }; /* color */ typedef enum { - StackLeft, StackBottom, StackRight -} StackPos; /* stack position*/ - -typedef enum { TopLeft, TopRight, BotLeft, BotRight } Corner; /* window corners */@@ -111,7 +107,6 @@ extern Client *clients, *sel, *stack; /* global client list and stack */
extern Cursor cursor[CurLast]; extern DC dc; /* global draw context */ extern Display *dpy; -extern StackPos stackpos; extern Window root, barwin; /* client.c */@@ -170,7 +165,6 @@ extern void focusprev(Arg *arg); /* focuses previous visible client, arg is ignored */
extern Bool isvisible(Client *c); /* returns True if client is visible */ extern void resizecol(Arg *arg); /* resizes the master percent with arg's index value */ extern void restack(void); /* restores z layers of all clients */ -extern void togglestackpos(Arg *arg); /* toggles stack position */ extern void togglemode(Arg *arg); /* toggles global arrange function (dotile/dofloat) */ extern void toggleview(Arg *arg); /* toggles the tag with arg's index (in)visible */ extern void view(Arg *arg); /* views the tag with arg's index */
@@ -123,12 +123,8 @@ }
return; } } - if(ev->x < x + bmw) { - if(ev->button == Button1) - togglemode(NULL); - else if(ev->button == Button3) - togglestackpos(NULL); - } + if((ev->x < x + bmw) && (ev->button == Button1)) + togglemode(NULL); } else if((c = getclient(ev->window))) { focus(c);
@@ -129,10 +129,7 @@ dc.status[ColBG] = getcolor(STATUSBGCOLOR);
dc.status[ColFG] = getcolor(STATUSFGCOLOR); setfont(FONT); - bmw = textw(VSTACKSYMBOL) > textw(BSTACKSYMBOL) ? - textw(VSTACKSYMBOL) : textw(BSTACKSYMBOL); - bmw = bmw > textw(FLOATSYMBOL) ? - bmw : textw(FLOATSYMBOL); + bmw = textw(TILESYMBOL) > textw(FLOATSYMBOL) ? textw(TILESYMBOL) : textw(FLOATSYMBOL); sx = sy = 0; sw = DisplayWidth(dpy, screen); sh = DisplayHeight(dpy, screen);
@@ -65,7 +65,6 @@
/* extern */ void (*arrange)(Arg *) = DEFMODE; -StackPos stackpos = STACKPOS; void detach(Client *c) {@@ -103,28 +102,19 @@ * SSMMM SSSSS MMMSS
*/ void dotile(Arg *arg) { - unsigned int i, n, md, stackw, stackh, tw, th; + unsigned int i, n, md, stackw, stackh, th; Client *c; for(n = 0, c = nexttiled(clients); c; c = nexttiled(c->next)) n++; - if(stackpos == StackBottom) { - md = ((sh - bh) * master) / 1000; - stackw = sw; - stackh = sh - bh - md; - } - else { - md = (sw * master) / 1000; - stackw = sw - md; - stackh = sh - bh; - } + md = (sw * master) / 1000; + stackw = sw - md; + stackh = sh - bh; - tw = stackw; + th = stackh; if(n > 1) - th = stackh / (n - 1); - else - th = stackh; + th /= (n - 1); for(i = 0, c = clients; c; c = c->next) { if(isvisible(c)) {@@ -140,43 +130,19 @@ c->w = sw - 2 * BORDERPX;
c->h = sh - 2 * BORDERPX - bh; } else if(i == 0) { /* master window */ - if(stackpos == StackLeft) - c->x += stackw; - switch(stackpos) { - case StackLeft: - case StackRight: - c->w = md - 2 * BORDERPX; - c->h = sh - bh - 2 * BORDERPX; - break; - case StackBottom: - c->w = sw - 2 * BORDERPX; - c->h = md - 2 * BORDERPX; - break; - } + c->w = md - 2 * BORDERPX; + c->h = sh - bh - 2 * BORDERPX; } else { /* tile window */ - if(stackpos == StackRight) - c->x += md; + c->x += md; if(th > bh) { - switch(stackpos) { - case StackLeft: - case StackRight: - c->y = sy + (i - 1) * th + bh; - if(i + 1 == n) - c->h = sh - c->y - 2 * BORDERPX; - break; - case StackBottom: - c->y = sy + md + (i - 1) * th + bh; - if(i + 1 == n) - c->h = sh - c->y - 2 * BORDERPX; - break; - } - c->w = tw - 2 * BORDERPX; + c->y = sy + (i - 1) * th + bh; + if(i + 1 == n) + c->h = sh - c->y - 2 * BORDERPX; + c->w = stackw - 2 * BORDERPX; c->h = th - 2 * BORDERPX; } else { /* fallback if th < bh */ - if(stackpos == StackBottom) - c->y += md; c->w = stackw - 2 * BORDERPX; c->h = stackh - 2 * BORDERPX; }@@ -308,17 +274,6 @@ for(i = 0; i < ntags && !seltag[i]; i++);
if(i == ntags) seltag[arg->i] = True; /* cannot toggle last view */ reorder(); - arrange(NULL); -} - -void -togglestackpos(Arg *arg) { - if(arrange == dofloat) - return; - if(stackpos == StackBottom) - stackpos = STACKPOS; - else - stackpos = StackBottom; arrange(NULL); }