about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--config.arg.h4
-rw-r--r--config.default.h4
-rw-r--r--dwm.h6
-rw-r--r--main.c6
-rw-r--r--view.c24
5 files changed, 20 insertions, 24 deletions
diff --git a/config.arg.h b/config.arg.h
index 47f7cd9..e32753d 100644
--- a/config.arg.h
+++ b/config.arg.h
@@ -37,8 +37,8 @@ static Key key[] = { \
 	{ MODKEY,			XK_k,		focusprev,	{ 0 } }, \
 	{ MODKEY,			XK_Return,	zoom,		{ 0 } }, \
 	{ MODKEY,			XK_b,		togglestackpos,	{ 0 } }, \
-	{ MODKEY,			XK_g,		resizecol,	{ .i = 20 } }, \
-	{ MODKEY,			XK_s,		resizecol,	{ .i = -20 } }, \
+	{ MODKEY,			XK_g,		resizecol,	{ .i = 1 } }, \
+	{ MODKEY,			XK_s,		resizecol,	{ .i = -1 } }, \
 	{ MODKEY|ShiftMask,		XK_1,		tag,		{ .i = 0 } }, \
 	{ MODKEY|ShiftMask,		XK_2,		tag,		{ .i = 1 } }, \
 	{ MODKEY|ShiftMask,		XK_3,		tag,		{ .i = 2 } }, \
diff --git a/config.default.h b/config.default.h
index 8075264..e97fea8 100644
--- a/config.default.h
+++ b/config.default.h
@@ -31,8 +31,8 @@ static Key key[] = { \
 	{ MODKEY|ShiftMask,		XK_Tab,		focusprev,	{ 0 } }, \
 	{ MODKEY,			XK_Return,	zoom,		{ 0 } }, \
 	{ MODKEY,			XK_b,		togglestackpos,	{ 0 } }, \
-	{ MODKEY,			XK_g,		resizecol,	{ .i = 20 } }, \
-	{ MODKEY,			XK_s,		resizecol,	{ .i = -20 } }, \
+	{ MODKEY,			XK_g,		resizecol,	{ .i = 1 } }, \
+	{ MODKEY,			XK_s,		resizecol,	{ .i = -1 } }, \
 	{ MODKEY|ShiftMask,		XK_1,		tag,		{ .i = 0 } }, \
 	{ MODKEY|ShiftMask,		XK_2,		tag,		{ .i = 1 } }, \
 	{ MODKEY|ShiftMask,		XK_3,		tag,		{ .i = 2 } }, \
diff --git a/dwm.h b/dwm.h
index 45879f3..191474d 100644
--- a/dwm.h
+++ b/dwm.h
@@ -101,8 +101,8 @@ struct Client {
 extern const char *tags[];			/* all tags */
 extern char stext[1024];			/* status text */
 extern int bx, by, bw, bh, bmw;			/* bar geometry, bar mode label width */
-extern int master, screen, sx, sy, sw, sh;	/* screen geometry, master dimension*/
-extern unsigned int ntags, numlockmask;		/* number of tags, dynamic lock mask */
+extern int screen, sx, sy, sw, sh;		/* screen geometry */
+extern unsigned int master, ntags, numlockmask;	/* master percent, number of tags, dynamic lock mask */
 extern void (*handler[LASTEvent])(XEvent *);	/* event handler */
 extern void (*arrange)(Arg *);			/* arrange function, indicates mode  */
 extern Atom wmatom[WMLast], netatom[NetLast];
@@ -168,7 +168,7 @@ extern void dotile(Arg *arg);			/* arranges all windows, arg is ignored */
 extern void focusnext(Arg *arg);		/* focuses next visible client, arg is ignored  */
 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 dimension with arg's index value */
+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) */
diff --git a/main.c b/main.c
index 6de4f8a..53a7c3c 100644
--- a/main.c
+++ b/main.c
@@ -19,8 +19,8 @@
 
 char stext[1024];
 Bool *seltag;
-int bx, by, bw, bh, bmw, master, screen, sx, sy, sw, sh;
-unsigned int ntags, numlockmask;
+int bx, by, bw, bh, bmw, masterd, screen, sx, sy, sw, sh;
+unsigned int master, ntags, numlockmask;
 Atom wmatom[WMLast], netatom[NetLast];
 Bool running = True;
 Bool issel = True;
@@ -136,7 +136,7 @@ setup(void) {
 	sx = sy = 0;
 	sw = DisplayWidth(dpy, screen);
 	sh = DisplayHeight(dpy, screen);
-	master = ((stackpos == StackBottom ? sh - bh : sw) * MASTER) / 100;
+	master = MASTER;
 
 	bx = by = 0;
 	bw = sw;
diff --git a/view.c b/view.c
index 1bce54a..61144df 100644
--- a/view.c
+++ b/view.c
@@ -4,8 +4,6 @@
  */
 #include "dwm.h"
 
-#define MINDIM			100
-
 /* static */
 
 static Client *
@@ -106,6 +104,7 @@ dofloat(Arg *arg) {
 void
 dotile(Arg *arg) {
 	int i, n, stackw, stackh, tw, th;
+	unsigned int md = ((stackpos == StackBottom ? sh - bh : sw) * master) / 100;
 	Client *c;
 
 	for(n = 0, c = nexttiled(clients); c; c = nexttiled(c->next))
@@ -113,10 +112,10 @@ dotile(Arg *arg) {
 
 	if(stackpos == StackBottom) {
 		stackw = sw;
-		stackh = sh - bh - master;
+		stackh = sh - bh - md;
 	}
 	else {
-		stackw = sw - master;
+		stackw = sw - md;
 		stackh = sh - bh;
 	}
 
@@ -145,18 +144,18 @@ dotile(Arg *arg) {
 				switch(stackpos) {
 				case StackLeft:
 				case StackRight:
-					c->w = master - 2 * BORDERPX;
+					c->w = md - 2 * BORDERPX;
 					c->h = sh - bh - 2 * BORDERPX;
 					break;
 				case StackBottom:
 					c->w = sw - 2 * BORDERPX;
-					c->h = master - 2 * BORDERPX;
+					c->h = md - 2 * BORDERPX;
 					break;
 				}
 			}
 			else {  /* tile window */
 				if(stackpos == StackRight)
-					c->x += master;
+					c->x += md;
 				if(th > bh) {
 					switch(stackpos) {
 					case StackLeft:
@@ -166,7 +165,7 @@ dotile(Arg *arg) {
 							c->h = sh - c->y - 2 * BORDERPX;
 						break;
 					case StackBottom:
-						c->y = sy + master + (i - 1) * th + bh;
+						c->y = sy + md + (i - 1) * th + bh;
 						if(i + 1 == n)
 							c->h = sh - c->y - 2 * BORDERPX;
 						break;
@@ -176,7 +175,7 @@ dotile(Arg *arg) {
 				}
 				else { /* fallback if th < bh */
 					if(stackpos == StackBottom)
-						c->y += master;
+						c->y += md;
 					c->w = stackw - 2 * BORDERPX;
 					c->h = stackh - 2 * BORDERPX;
 				}
@@ -238,7 +237,6 @@ isvisible(Client *c) {
 
 void
 resizecol(Arg *arg) {
-	int s;
 	unsigned int n;
 	Client *c;
 
@@ -248,14 +246,13 @@ resizecol(Arg *arg) {
 	if(!sel || sel->isfloat || n < 2 || (arrange == dofloat))
 		return;
 
-	s = stackpos == StackBottom ? sh - bh : sw;
 	if(sel == getnext(clients)) {
-		if(master + arg->i > s - MINDIM || master + arg->i < MINDIM)
+		if(master + arg->i > 95 || master + arg->i < 5)
 			return;
 		master += arg->i;
 	}
 	else {
-		if(master - arg->i > s - MINDIM || master - arg->i < MINDIM)
+		if(master - arg->i > 95 || master - arg->i < 5)
 			return;
 		master -= arg->i;
 	}
@@ -321,7 +318,6 @@ togglestackpos(Arg *arg) {
 		stackpos = STACKPOS;
 	else
 		stackpos = StackBottom;
-	master = ((stackpos == StackBottom ? sh - bh : sw) * MASTER) / 100;
 	arrange(NULL);
 }
 
'#n449'>449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606