summaryrefslogtreecommitdiff
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
parent2ce50a9cada450b0538bb12f0424005652fc1355 (diff)
applied Martin Hurton's movemouse() patch
-rw-r--r--LICENSE1
-rw-r--r--dwm.c11
2 files changed, 6 insertions, 6 deletions
diff --git a/LICENSE b/LICENSE
index c6316d1b..66c0f87b 100644
--- a/LICENSE
+++ b/LICENSE
@@ -7,6 +7,7 @@ MIT/X Consortium License
© 2007 Szabolcs Nagy <nszabolcs at gmail dot com>
© 2007 Christof Musik <christof at sendfax dot de>
© 2007-2008 Enno Gottox Boland <gottox at s01 dot de>
+© 2008 Martin Hurton <martin dot hurton at gmail dot com>
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
diff --git a/dwm.c b/dwm.c
index dc14bfd7..293f9cfb 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 *