wmii

git clone git://oldgit.suckless.org/wmii/
Log | Files | Refs | README | LICENSE

commit bfa0c759f4fbddaaa5ce2f06454aedb865cb18bd
parent e01ca2506a5ab3b58e49abbc989ceaa4214365c4
Author: Anselm R. Garbe <garbeam@wmii.de>
Date:   Tue, 30 May 2006 19:13:33 +0200

some more changes, still unfinished (/me has to run now)


Diffstat:
cmd/wm/area.c | 27+++++++++++++++++++++++++++
cmd/wm/rule.c | 2+-
2 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/cmd/wm/area.c b/cmd/wm/area.c @@ -235,9 +235,29 @@ place_client(Area *a, Client *c) free(rects); } +static unsigned int +ncol_of_view(View *v) +{ + unsigned int i, n; + regmatch_t tmpregm; + + for(i = 0; i < vrule.size; i++) { + Rule *r = vrule.data[i]; + if(!regexec(&r->regex, v->name, 1, &tmpregm, 0)) { + if(sscanf(r->values, "%u", &n) == 1) { + fprintf(stderr, "r->values=%s n=%d\n", r->values, n); + return n; + } + fprintf(stderr, "r->values=%s n=%d\n", r->values, n); + } + } + return 0; +} + void attach_to_area(Area *a, Client *c) { + View *v = a->view; unsigned int h = 0, aidx = idx_of_area(a); Frame *f; @@ -248,6 +268,13 @@ attach_to_area(Area *a, Client *c) scale_column(a, a->rect.height - h); } + if(aidx) { /* column */ + unsigned int nc = ncol_of_view(v); + fprintf(stderr, "nc=%d v->area.size=%d\n", nc, v->area.size); + if(nc && nc > v->area.size - 1) + a = create_area(v, v->sel); + } + f = create_frame(a, c); if(aidx) { /* column */ diff --git a/cmd/wm/rule.c b/cmd/wm/rule.c @@ -38,7 +38,7 @@ update_rules(RuleVector *rule, const char *data) free(rul); } - for(p = def.rules; *p; p++) + for(p = (char *)data; *p; p++) switch(mode) { case IGNORE: if(*p == '/') {