diff options
author | iedowse <iedowse@FreeBSD.org> | 2001-07-08 20:23:59 +0000 |
---|---|---|
committer | iedowse <iedowse@FreeBSD.org> | 2001-07-08 20:23:59 +0000 |
commit | b4102478b4b5d9dcced92cc121e35f09d658dfb7 (patch) | |
tree | 78c345b2d8fc9d6dd6908fd624adccabcb6093a6 /sys/dev/fdc | |
parent | fb991ec59e228fda4c5428b2389b2c563a2f9db7 (diff) | |
download | FreeBSD-src-b4102478b4b5d9dcced92cc121e35f09d658dfb7.zip FreeBSD-src-b4102478b4b5d9dcced92cc121e35f09d658dfb7.tar.gz |
The state machine for 3-button emulation defers some button events
until a 20ms select(2) timeout occurs, but if there is a continuous
stream of movement events, button events can be delayed indefinitely
because the select never has to wait long enough for a timeout.
The delay and mouse event reordering that result are very noticable
and sometimes quite frustrating when dragging windows etc. in X.
Add a simple mechanism that avoids this re-ordering. While a button
event is deferred, we discard up to 3 movement events to allow for
mouse jitter. If more movement events occur, then we immediately
timeout the deferred button event and let the movement proceed.
This change only affects the 3-button emulation case.
Diffstat (limited to 'sys/dev/fdc')
0 files changed, 0 insertions, 0 deletions