tile.c
changeset 943 d0b93818f723
parent 941 8c93b982f22e
child 946 b938876de936
equal deleted inserted replaced
942:f8295dc3d5e4 943:d0b93818f723
     2 #include "dwm.h"
     2 #include "dwm.h"
     3 #include <stdio.h>
     3 #include <stdio.h>
     4 
     4 
     5 /* static */
     5 /* static */
     6 
     6 
     7 static double master = MASTER;
     7 static double mwfact = MWFACT;
     8 
     8 
     9 /* extern */
     9 /* extern */
    10 
    10 
    11 void
    11 void
    12 incmaster(const char *arg) {
    12 addtomwfact(const char *arg) {
    13 	double delta;
    13 	double delta;
    14 
    14 
    15 	if(lt->arrange != tile)
    15 	if(lt->arrange != tile)
    16 		return;
    16 		return;
    17 
    17 
    18 	/* arg handling, manipulate master */
    18 	/* arg handling, manipulate mwfact */
    19 	if(arg && (1 == sscanf(arg, "%lf", &delta))) {
    19 	if(arg && (1 == sscanf(arg, "%lf", &delta))) {
    20 		if(delta + master > 0.1 && delta + master < 0.9)
    20 		if(delta + mwfact > 0.1 && delta + mwfact < 0.9)
    21 			master += delta;
    21 			mwfact += delta;
    22 	}
    22 	}
    23 
       
    24 	lt->arrange();
    23 	lt->arrange();
    25 }
    24 }
    26 
    25 
    27 void
    26 void
    28 tile(void) {
    27 tile(void) {
    31 
    30 
    32 	for(n = 0, c = nexttiled(clients); c; c = nexttiled(c->next))
    31 	for(n = 0, c = nexttiled(clients); c; c = nexttiled(c->next))
    33 		n++;
    32 		n++;
    34 
    33 
    35 	/* window geoms */
    34 	/* window geoms */
    36 	mw = (n == 1) ? waw : master * waw;
    35 	mw = (n == 1) ? waw : mwfact * waw;
    37 	th = (n > 1) ? wah / (n - 1) : 0;
    36 	th = (n > 1) ? wah / (n - 1) : 0;
    38 	if(n > 1 && th < bh)
    37 	if(n > 1 && th < bh)
    39 		th = wah;
    38 		th = wah;
    40 
    39 
    41 	nx = wax;
    40 	nx = wax;