[PATCH xf86-input-synaptics 00/12] Clickpad support
Chase Douglas
chase.douglas at canonical.com
Sat Feb 11 07:42:59 PST 2012
On 02/11/2012 11:51 AM, Daniel Stone wrote:
> Hi,
>
> On 11 February 2012 01:25, Chase Douglas <chase.douglas at canonical.com> wrote:
>> On 02/11/2012 02:09 AM, Bryce Harrington wrote:
>>> With the Clickpad property turned on with one of these dell netbooks,
>>> when you touch the button surface with the second finger without pushing
>>> the button it immediately interrupts and stops the pointer movement. I
>>> gather this is by design but it is a behavioral change that some might
>>> find awkward.
>>
>> This is due to the previous patch set. The issue boils down to: when is
>> it acceptable to send touch events? Peter, Daniel, and I had a couple
>> long discussions about this on irc, and the result was that we can't
>> send touch events whenever the input module is emitting other events
>> derived from touches. For example, we can't emit touch events while
>> performing a two-finger scroll.
>>
>> This means we also can't emit touch events while moving the cursor. I
>> added a patch that ensures the cursor is only ever moved when one touch
>> is on the device so we can emit touch events when two touches are on the
>> device.
>
> The click case in particular is a difficult one to solve correctly. I
> guess you ultimately don't want to crush any movement which is a
> direct continuation of what came previously, but only new movement.
> You do need to stop at least some movement though, since otherwise it
> becomes near-impossible to click something accurately, as your finger
> will invariably wiggle a bit while doing the physical click.
I believe you are getting at a different issue. I will admit that I
don't attempt to solve the issue of pointer motion while trying to click
on a button pad in this patch series. It's a problem that should be
addressed, I'm just not sure how yet.
What Bryce was saying is when you go from one touch on the touchpad to
two, but before the button is pressed, the cursor freezes. As soon as
the button is pressed, the cursor unfreezes so you can click and drag
with two fingers. On irc, Bryce told me that he tends to leave one
finger on the buttonpad, move the pointer with another, and press the
button when he's got the cursor in the right location. That's not
possible anymore because we inhibit pointer motion when more than one
touch is on the touchpad.
-- Chase
More information about the xorg-devel
mailing list