touchpad: multitap state transitions use the same timing used for taps
Multitap sequences (more than 2 taps) had a 180ms timer set only on press, not on release. New taps within those 180ms could either trigger multitap+drag or another multitap (for N+1 taps), resetting the timer on press once again. If no new tap appears within those 180ms, the sequence was considered complete. This behavior differed from regular taps: for the very first tap of a sequence the timer was set both on touch and on release. The multitap timing caused misdetection of triple-tap-and-drag sequences as the timer was hit frequently. Some of those were correctly detected, others as tripletap only. Changing the timer to be set on press **and** release gives us a more lenient timeout. 180ms for tap-and-drag and 180ms for the next tap down after release. This was also the behavior for the xorg synaptics driver. Note that quadruple-tap-and-drag didn't suffer from this because the timeout resulted in double-tap + double-tap-and-drag. Which has the same user-visible effect.
Loading
Please register or sign in to comment