dwm

my fork of dwm
Index Commits Files Refs README LICENSE
commit 0a638a4cafb3dd754a596605bb55ac7977fba71e
parent 21553f9b4dc80a3afa0a76854dd2ae5ea5e1f4a1
Author: Anselm R. Garbe <garbeam@wmii.de>
Date:   Thu, 13 Jul 2006 12:00:20 +0200

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

Diffstat:
Mclient.c | 3+++
1 file changed, 3 insertions(+), 0 deletions(-)
diff --git a/client.c b/client.c
@@ -101,6 +101,7 @@ sel(void *aux)
     if(!c)
         c = stack;
     craise(c);
+    XWarpPointer(dpy, None, c->win, 0, 0, 0, 0, c->w / 2, c->h / 2);
     focus(c);
 }
 
@@ -235,6 +236,7 @@ focus(Client *c)
     draw_client(c);
     XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime);
     XFlush(dpy);
+    discard_events(EnterWindowMask);
 }
 
 void
@@ -279,6 +281,7 @@ manage(Window w, XWindowAttributes *wa)
     XGrabButton(dpy, Button3, Mod1Mask, c->win, False, ButtonPressMask,
             GrabModeAsync, GrabModeSync, None, None);
     arrange();
+    XWarpPointer(dpy, None, c->win, 0, 0, 0, 0, c->w / 2, c->h / 2);
     focus(c);
 }