wmii

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

commit 50af165f42bea6ae6185418f3fd8d63ec44c02fa
parent 8deb1bf6245b53493f413b40b47afaa52af61340
Author: Kris Maglione <bsdaemon@wmii.de>
Date:   Tue, 20 Jun 2006 05:34:11 -0400

Fixed toggling between float/managed areas


Diffstat:
cmd/wm/area.c | 5+++--
cmd/wm/fs.c | 13+++++++------
cmd/wm/view.c | 4+---
3 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/cmd/wm/area.c b/cmd/wm/area.c @@ -86,13 +86,12 @@ select_area(Area *a, char *arg) static char Ebadvalue[] = "bad value"; v = a->view; - v->revert = a; f = a->sel; if(!strncmp(arg, "toggle", 7)) { if(a != v->area) new = v->area; - else if(v->revert && v->revert != v->area) + else if(v->revert) new = v->revert; else new = v->area->next; @@ -130,6 +129,8 @@ select_area(Area *a, char *arg) if(new->sel) focus_client(new->sel->client, True); v->sel = new; + if(a != v->area) + v->revert = a; draw_clients(); return nil; } diff --git a/cmd/wm/fs.c b/cmd/wm/fs.c @@ -53,9 +53,9 @@ enum { /* Dirs */ /* Files */ FsFBar, FsFBorder, FsFCNorm, FsFCSel, FsFCctl, FsFCindex, FsFColRules, FsFCtags, - FsFEvent, FsFFont, FsFKeys, FsFRctl, FsFTname, - FsFTagRules, FsFTctl, FsFTindex, FsFprops, - RsFFont, FsFgrabmod + FsFEvent, FsFFont, FsFKeys, FsFRctl, + FsFTagRules, FsFTctl, FsFTindex, FsFTname, + FsFgrabmod, FsFprops, RsFFont }; /* Error messages */ @@ -292,7 +292,7 @@ write_event(char *buf) { fi = f->fid->aux; slen = fi->buf ? strlen(fi->buf) : 0; fi->buf = realloc(fi->buf, slen + len + 1); - fi->buf[slen] = '\0'; /* shut up valgring */ + fi->buf[slen] = '\0'; /* shut up valgrind */ strcat(fi->buf, buf); } while((aux = pending_event_reads)) { @@ -811,10 +811,11 @@ fs_clunk(Req *r) { FileId *f = r->fid->aux; switch(f->tab.type) { + case FsFColRules: + update_rules(&f->rule->rule, f->rule->string); + break; case FsFTagRules: update_rules(&f->rule->rule, f->rule->string); - /* no break */ - case FsFColRules: for(c=client; c; c=c->next) apply_rules(c); update_views(); diff --git a/cmd/wm/view.c b/cmd/wm/view.c @@ -417,9 +417,7 @@ message_view(View *v, char *message) { } if(!strncmp(message, "select ", 7)) { message += 7; - if(v->sel->sel) - return select_area(v->sel, message); - return Ebadvalue; + return select_area(v->sel, message); } return Ebadvalue; }