aboutsummaryrefslogtreecommitdiff
path: root/src/libdraw
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2004-03-31 05:15:02 +0000
committerrsc <devnull@localhost>2004-03-31 05:15:02 +0000
commit732be70cc40fd8b07e66116c77478ee299f1f5b4 (patch)
tree9fbac649de78bb14a21383d70dc0519ed6bd625d /src/libdraw
parent1ed1c638a8f5c8d1d3c624800448f44cee8d1a09 (diff)
downloadplan9port-732be70cc40fd8b07e66116c77478ee299f1f5b4.tar.gz
plan9port-732be70cc40fd8b07e66116c77478ee299f1f5b4.tar.bz2
plan9port-732be70cc40fd8b07e66116c77478ee299f1f5b4.zip
Avoid bad mouse buffering.
Diffstat (limited to 'src/libdraw')
-rw-r--r--src/libdraw/x11-mouse.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libdraw/x11-mouse.c b/src/libdraw/x11-mouse.c
index d2d0126b..92a099b0 100644
--- a/src/libdraw/x11-mouse.c
+++ b/src/libdraw/x11-mouse.c
@@ -93,6 +93,13 @@ _ioproc(void *arg)
case ButtonPress:
case ButtonRelease:
case MotionNotify:
+ /* If the motion notifications are backing up, skip over some. */
+ if(xevent.type == MotionNotify){
+ while(XCheckWindowEvent(_x.mousecon, _x.drawable, MouseMask, &xevent)){
+ if(xevent.type != MotionNotify)
+ break;
+ }
+ }
if(_xtoplan9mouse(_x.mousecon, &xevent, &m) < 0)
continue;
send(mc->c, &m);