about summary refs log tree commit diff stats
path: root/dwm.c
diff options
context:
space:
mode:
authorAnselm R. Garbe <garbeam@gmail.com>2007-12-08 20:11:56 +0100
committerAnselm R. Garbe <garbeam@gmail.com>2007-12-08 20:11:56 +0100
commitd66ad1457e6b1e3fc18c01767fdb499acaef3c8e (patch)
tree1b8f5d8ccda22f343d402159211b1b900e6f95e8 /dwm.c
parent8497f9f78195d386c7b50bc5105641a5c3f78554 (diff)
downloaddwm-d66ad1457e6b1e3fc18c01767fdb499acaef3c8e.tar.gz
implemented reapply for re-applying the tagging rules during runtime, Mod-r
Diffstat (limited to 'dwm.c')
-rw-r--r--dwm.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/dwm.c b/dwm.c
index 53e5cb2..0af37d6 100644
--- a/dwm.c
+++ b/dwm.c
@@ -161,6 +161,7 @@ void movemouse(Client *c);
 Client *nexttiled(Client *c);
 void propertynotify(XEvent *e);
 void quit(const char *arg);
+void reapply(const char *arg);
 void resize(Client *c, int x, int y, int w, int h, Bool sizehints);
 void resizemouse(Client *c);
 void restack(void);
@@ -1159,6 +1160,17 @@ quit(const char *arg) {
 	readin = running = False;
 }
 
+void
+reapply(const char *arg) {
+	static Bool zerotags[LENGTH(tags)] = { 0 };
+	Client *c;
+
+	for(c = clients; c; c = c->next) {
+		memcpy(c->tags, zerotags, sizeof zerotags);
+		applyrules(c);
+	}
+	arrange();
+}
 
 void
 resize(Client *c, int x, int y, int w, int h, Bool sizehints) {