commit 4be90199ae8ac6c2a8c4547b6c685e4296d19058
parent aa50f6e1797deb086a19ca436bbc4d03dcdf7da4
Author: Anselm R. Garbe <garbeam@wmii.de>
Date: Thu, 13 Apr 2006 14:09:28 +0200
removed 'retag' command
Diffstat:
4 files changed, 10 insertions(+), 21 deletions(-)
diff --git a/cmd/wm/fs.c b/cmd/wm/fs.c
@@ -1168,8 +1168,6 @@ xwrite(IXPConn *c, Fcall *fcall)
case FsDroot:
if(!strncmp(buf, "quit", 5))
srv.running = 0;
- else if(!strncmp(buf, "retag", 6))
- reapply_rules();
else if(!strncmp(buf, "view ", 5))
select_view(&buf[5]);
else
diff --git a/cmd/wm/rule.c b/cmd/wm/rule.c
@@ -61,6 +61,7 @@ permit_tags(const char *tags)
void
update_rules()
{
+ unsigned int i;
int mode = IGNORE;
char *p, *r = nil, *t = nil, regex[256], tags[256];
@@ -120,6 +121,9 @@ update_rules()
}
break;
}
+ for(i = 0; i < client.size; i++)
+ apply_rules(client.data[i]);
+ update_views();
}
@@ -134,11 +138,9 @@ match(Client *c, const char *prop)
if(r->is_valid && !regexec(&r->regex, prop, 1, &tmpregm, 0)) {
if(!strncmp(r->tags, "~", 2))
c->floating = True;
- else if(!strncmp(r->tags, "!", 2)) {
- if(view.size) {
- if(c->view.size) {
- if(c->view.size == 1 && !strncmp(c->view.data[0]->name,"nil",4))
- continue;
+ else if(!c->view.size || !strncmp(c->tags, "nil", 4)) {
+ if(strncmp(r->tags, "!", 2)) {
+ if(view.size) {
c->tags[0] = 0;
unsigned int j;
for(j = 0; j < c->view.size; j++) {
@@ -148,11 +150,11 @@ match(Client *c, const char *prop)
}
}
else
- cext_strlcpy(c->tags, view.data[sel]->name, sizeof(c->tags));
+ cext_strlcpy(c->tags, "nil", sizeof(c->tags));
}
+ else
+ cext_strlcpy(c->tags, r->tags, sizeof(c->tags));
}
- else
- cext_strlcpy(c->tags, r->tags, sizeof(c->tags));
}
}
}
@@ -169,12 +171,3 @@ Fallback:
if(!strlen(c->tags) || (!view.size && !strncmp(c->tags, "*", 2)))
cext_strlcpy(c->tags, "nil", sizeof(c->tags));
}
-
-void
-reapply_rules()
-{
- unsigned int i;
- for(i = 0; i < client.size; i++)
- apply_rules(client.data[i]);
- update_views();
-}
diff --git a/cmd/wm/wm.h b/cmd/wm/wm.h
@@ -266,7 +266,6 @@ void ungrab_mouse(Window w, unsigned long mod, unsigned int button);
/* rule.c */
void update_rules();
void apply_rules(Client *c);
-void reapply_rules();
Bool permit_tags(const char *tags);
/* view.c */
diff --git a/rc/wmiirc b/rc/wmiirc
@@ -41,7 +41,6 @@ wmiir write /def/rules <<EOF
/XMMS.*/ -> ~
/Gimp.*/ -> ~
EOF
-xwrite /ctl retag
# MISC
xsetroot -solid '#0b1014'