On 05/14/2012 07:10 PM, Peter Hutterer wrote: > On Mon, May 14, 2012 at 10:20:01AM -0700, Chase Douglas wrote: >> If a touch is physically active when the device is enabled, then all >> events for that touch must be ignored. In particular, we cannot close >> the touch or we will decrement touch count counters below zero. If these >> counters go below zero memory corruption can occur. >> >> Note that a device is disabled and enabled every time the user types on >> the keyboard if synclient is used to disable the trackpad while typing. >> This is a very common option. >> >> Signed-off-by: Chase Douglas <[email protected]> > > merged, but I don't think it's enough. the current behaviour when the device > is disabled is pretty bad: if the device is enabled with a finger on the > pad, it won't react to that finger, but if it was _disabled_ one finger on > the pad and re-enabled with one finger it will jump to some position.
Single touch motion is not related to touch handling in any way, IIRC, so this is likely a long-standing issue. > plus, if I disable the device with two fingers on the pad and re-enable it > with no fingers on the pad, I get the errors below whenever I release the > second finger (no errors for the first finger). > > [187400.101] [dix] SynPS/2 Synaptics TouchPad: unable to find touch point 0 > [187400.101] [dix] SynPS/2 Synaptics TouchPad: unable to find touch point 1 > > a simliar error comes in other cases but this one was the only one I've been > able to narrow down. I'm hoping that the patch I just sent to end touches in the server when the device is disabled fixes this issue. I don't have a non-semi-mt synaptics trackpad (or any other evdev MT protocol B devices), so I can't verify. -- Chase _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
