[PATCH 0/3] Input: synaptics - multitouch and multifinger support

Chase Douglas chase.douglas at canonical.com
Fri Oct 8 07:57:57 PDT 2010


Tobyn Bertram reverse engineered the multitouch protocol for Synaptics devices.
I've been able to take his work and produce a series of commits to enable MT
and multifinger (MF) support.

Unfortunately, there's a tricky issue with some Synaptics touchpads that have
integrated buttons. For example, the left and right buttons on the touchpad of
my Dell Mini 1012 consist of the lower ~20% of the touchpad surface. The
touchpad physically clicks under these areas.

The X synaptics input module now has a parameter to disable touches occuring
over the button area, but this solution still doesn't work perfectly. If you
click a button and drag with another finger near the clicking finger, the
touchpad gets confused.

Now that we have full MT support, we can try to handle this scenario better.
What I've found to work best is to make touches vanish if they occur over the
button area of the trackpad while any button is held. This works in conjunction
with the X synaptics driver to disable single touch control over the button
area. With full MT support, the touchpad doesn't seem to get confused when a
click and drag occurs with two fingers close to each other, and it enables MT
gestures and MF support across the entire trackpad when no buttons are held.

The first question is whether this seems appropriate to others, or if some
other method would work better. Secondarily, should the solution occur in the
kernel, like I have in the third patch of this series, or should it occur in
the X input module? Although we don't have this information today, we may be
able to query the touchpad in the future to know the area of the integrated
buttons. If that were possible, would the recommended location for the hack
change?

Thanks,

-- Chase


More information about the xorg-devel mailing list