about summary refs log tree commit diff stats
path: root/dwm.c
diff options
context:
space:
mode:
authorAnselm R Garbe <garbeam@gmail.com>2008-08-18 18:23:39 +0100
committerAnselm R Garbe <garbeam@gmail.com>2008-08-18 18:23:39 +0100
commit02a8ca95cf22d9b1da50dffffefa31fb563c3852 (patch)
treea861799ee5eb1a9f9faec4295382c85b609c4aab /dwm.c
parent2ce50a9cada450b0538bb12f0424005652fc1355 (diff)
downloaddwm-02a8ca95cf22d9b1da50dffffefa31fb563c3852.tar.gz
applied Martin Hurton's movemouse() patch
Diffstat (limited to 'dwm.c')
-rw-r--r--dwm.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/dwm.c b/dwm.c
index dc14bfd..293f9cf 100644
--- a/dwm.c
+++ b/dwm.c
@@ -961,18 +961,15 @@ movemouse(const Arg *arg) {
 	if(!(c = sel))
 		return;
 	restack();
-	ocx = nx = c->x;
-	ocy = ny = c->y;
+	ocx = c->x;
+	ocy = c->y;
 	if(XGrabPointer(dpy, root, False, MOUSEMASK, GrabModeAsync, GrabModeAsync,
 	None, cursor[CurMove], CurrentTime) != GrabSuccess)
 		return;
 	XQueryPointer(dpy, root, &dummy, &dummy, &x, &y, &di, &di, &dui);
-	for(;;) {
+	do {
 		XMaskEvent(dpy, MOUSEMASK|ExposureMask|SubstructureRedirectMask, &ev);
 		switch (ev.type) {
-		case ButtonRelease:
-			XUngrabPointer(dpy, CurrentTime);
-			return;
 		case ConfigureRequest:
 		case Expose:
 		case MapRequest:
@@ -1000,6 +997,8 @@ movemouse(const Arg *arg) {
 			break;
 		}
 	}
+	while(ev.type != ButtonRelease);
+	XUngrabPointer(dpy, CurrentTime);
 }
 
 Client *