No subject
Mon Feb 28 21:14:33 PST 2011
"In Absolute mode, the TouchPad reports packets continuously at the specified
packet rate, either 40 or 80 packets per second, whenever the finger is on or
near the pad. (Specifically, the TouchPad begins sending packets when Z is 8
or more.) The TouchPad also begins sending packets whenever any button is
pressed or released. Once the TouchPad begins transmitting, it continues to
send packets for one second after Z falls below 8 and the buttons stop
changing. The TouchPad does this partly to allow host software to use the
packet stream as a time base for gesture decoding, and also to minimize the
impact if the system occasionally drops a packet."
So, this seems to be the intended behavior for Synaptics touchpads produced at
the time that document was printed, which dates back to 2001. What rests to be
assured is whether more recent hardware operates under the same assumption, or
if the evdev input handler within the Linux kernel somehow mangles this fact.
> These packets are recognized as "!insidearea", which resets
> priv->count_packet_finger and therefore doesn't schedule the edge_motion
> timer, effectively cancelling it.
>
> The only time this timer actual fires, then, is in this case that I am
> trying to fix - when it fires in between touchpad hardware samples because
> the touchpad generates samples slower than 13 ms apart.
Who dares to disagree that Synaptics code in X is a mess, raise your hands!
What? Nobody? :)
More information about the xorg-devel
mailing list