applied Martin Hurton's movemouse() patch 02a8ca95
Anselm R Garbe · 2008-08-18 18:23 2 file(s) · +6 −6
LICENSE +1 −0
7 7
© 2007 Szabolcs Nagy <nszabolcs at gmail dot com>
8 8
© 2007 Christof Musik <christof at sendfax dot de>
9 9
© 2007-2008 Enno Gottox Boland <gottox at s01 dot de>
10 +
© 2008 Martin Hurton <martin dot hurton at gmail dot com>
10 11
11 12
Permission is hereby granted, free of charge, to any person obtaining a
12 13
copy of this software and associated documentation files (the "Software"),
dwm.c +5 −6
961 961
	if(!(c = sel))
962 962
		return;
963 963
	restack();
964 -
	ocx = nx = c->x;
965 -
	ocy = ny = c->y;
964 +
	ocx = c->x;
965 +
	ocy = c->y;
966 966
	if(XGrabPointer(dpy, root, False, MOUSEMASK, GrabModeAsync, GrabModeAsync,
967 967
	None, cursor[CurMove], CurrentTime) != GrabSuccess)
968 968
		return;
969 969
	XQueryPointer(dpy, root, &dummy, &dummy, &x, &y, &di, &di, &dui);
970 -
	for(;;) {
970 +
	do {
971 971
		XMaskEvent(dpy, MOUSEMASK|ExposureMask|SubstructureRedirectMask, &ev);
972 972
		switch (ev.type) {
973 -
		case ButtonRelease:
974 -
			XUngrabPointer(dpy, CurrentTime);
975 -
			return;
976 973
		case ConfigureRequest:
977 974
		case Expose:
978 975
		case MapRequest:
1000 997
			break;
1001 998
		}
1002 999
	}
1000 +
	while(ev.type != ButtonRelease);
1001 +
	XUngrabPointer(dpy, CurrentTime);
1003 1002
}
1004 1003
1005 1004
Client *