summaryrefslogtreecommitdiff
path: root/client.c
diff options
context:
space:
mode:
Diffstat (limited to 'client.c')
-rw-r--r--client.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/client.c b/client.c
index e0ab719..3aae7e0 100644
--- a/client.c
+++ b/client.c
@@ -404,8 +404,6 @@ manage(Window w, XWindowAttributes *wa)
c->next = *l; /* *l == nil */
*l = c;
- XMapRaised(dpy, c->win);
- XMapRaised(dpy, c->title);
XGrabButton(dpy, Button1, Mod1Mask, c->win, False, ButtonPressMask,
GrabModeAsync, GrabModeSync, None, None);
XGrabButton(dpy, Button2, Mod1Mask, c->win, False, ButtonPressMask,
@@ -418,10 +416,17 @@ manage(Window w, XWindowAttributes *wa)
|| ((c->maxw == c->minw) && (c->maxh == c->minh));
arrange(NULL);
- if(c->tags[tsel])
+ /* mapping the window now prevents flicker */
+ if(c->tags[tsel]) {
+ XMapRaised(dpy, c->win);
+ XMapRaised(dpy, c->title);
focus(c);
- else
+ }
+ else {
ban_client(c);
+ XMapRaised(dpy, c->win);
+ XMapRaised(dpy, c->title);
+ }
}
void