added pointer warps on kb-driven/manage-driven focus

This commit is contained in:
Anselm R. Garbe 2006-07-13 12:00:20 +02:00
parent 21553f9b4d
commit 0a638a4caf

View file

@ -101,6 +101,7 @@ sel(void *aux)
if(!c) if(!c)
c = stack; c = stack;
craise(c); craise(c);
XWarpPointer(dpy, None, c->win, 0, 0, 0, 0, c->w / 2, c->h / 2);
focus(c); focus(c);
} }
@ -235,6 +236,7 @@ focus(Client *c)
draw_client(c); draw_client(c);
XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime); XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime);
XFlush(dpy); XFlush(dpy);
discard_events(EnterWindowMask);
} }
void void
@ -279,6 +281,7 @@ manage(Window w, XWindowAttributes *wa)
XGrabButton(dpy, Button3, Mod1Mask, c->win, False, ButtonPressMask, XGrabButton(dpy, Button3, Mod1Mask, c->win, False, ButtonPressMask,
GrabModeAsync, GrabModeSync, None, None); GrabModeAsync, GrabModeSync, None, None);
arrange(); arrange();
XWarpPointer(dpy, None, c->win, 0, 0, 0, 0, c->w / 2, c->h / 2);
focus(c); focus(c);
} }