about summary refs log tree commit diff stats
path: root/client.c
diff options
context:
space:
mode:
authorAnselm R. Garbe <arg@suckless.org>2007-02-14 14:01:12 +0100
committerAnselm R. Garbe <arg@suckless.org>2007-02-14 14:01:12 +0100
commit3ce8c9f33844a995e79329978db9d2cd3981e032 (patch)
tree58c918da4f17a1d81440cc97f6e031fd3938a58a /client.c
parent0d095ae2ff0e8d703e4a8c9a20cd061c4bdcc6e2 (diff)
downloaddwm-3ce8c9f33844a995e79329978db9d2cd3981e032.tar.gz
added ban() which takes care than a banned window is not banned again... (this reduces the overall ConfigureNotify's to clients)
Diffstat (limited to 'client.c')
-rw-r--r--client.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/client.c b/client.c
index 486efe9..3505e76 100644
--- a/client.c
+++ b/client.c
@@ -68,6 +68,14 @@ xerrordummy(Display *dsply, XErrorEvent *ee) {
 /* extern */
 
 void
+ban(Client *c) {
+	if(!c || c->isbanned)
+		return;
+	c->isbanned = True;
+	XMoveWindow(dpy, c->win, c->x + 2 * sw, c->y);
+}
+
+void
 configure(Client *c) {
 	XConfigureEvent ce;
 
@@ -190,7 +198,7 @@ manage(Window w, XWindowAttributes *wa) {
 	c->next = clients;
 	c->snext = stack;
 	stack = clients = c;
-	XMoveWindow(dpy, c->win, c->x + 2 * sw, c->y);
+	ban(c);
 	XMapWindow(dpy, c->win);
 	setclientstate(c, NormalState);
 	if(isvisible(c))