Comment 67 for bug 365943

Revision history for this message
In , Chris Bagwell (chris-cnpbagwell) wrote :

As of this git commit, there is code to work around cursor jump on multi-touch transitions for majority cases:

http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics/commit/?id=a6ca4d2523904b7ce49edc29ba408979bdf0d45e

This works for both hardware that can report number of fingers and also for cases where it must be emulated from finger width.

As of this next git commit, the default behavior is to enable 2-finger emulation. So effectively, the above patch is working by default for all users.

http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics/commit/?id=ffa6dc2809734a6aaa690e9133d6761480603a68

Based on that, I think the intent of this bug report is addressed and you can consider closing it.

Outstanding issue: On my hardware, I must rely on emulation. If I touch opposite extremes of touchpads with two fingers then hardware gets confused and never reports a finger width big enough to trigger 2-finger logic to debounce cursor jumps. But this is an extreme corner case (I don't see it with typical usage) and may be unique to emulation-based hardware only. I've not be able to reproduce jump as long as 1 finger is fully on touchpad.

For this corner case, it may still be useful to add a check in code to see when current X/Y value is at extreme edge of touchpad and if so do some additional checks to try to guess when its because of a corner case (for example when previous X/Y were on opposite extreme of touchpad).