Distinguish between two-finger scrolling and pinch
Submitted by Talin
Assigned to Peter Hutterer @whot
Link to original bug (#102306)
Description
I've been trying to figure out for a long time why using a touchpad on linux is so frustrating and painful for me, while using the same exact hardware on Windows, or the touchpad on a MacBook air, is not nearly so bad. And I think it has to do with the way two-finger scrolling is detected and handled.
Because I've been using laptops for so long (my first "portable" was a KayPro in 1984), and because of the way I was taught to type in high school in the early 70s, I have a set of life-long habits about the way that I hold my hands over a keyboard, resting my wrists against the surface of the laptop below the keyboard. And in particular, I find it almost impossible to prevent my thumbs from inadvertently brushing against the trackpad every few seconds when I am using my index finger to position the pointer.
As a result, whenever I try to position the pointer to click on a window tab or button, I find that a large fraction of the time I end up accidentally scrolling or dragging the window instead of moving the pointer. And try as I might, I cannot seem to break these unconscious habits. (And as laptops feature larger and larger trackpads this problem has only gotten worse.)
(For the same reason, I always disable tap-to-click and only buy laptops that have physical, moving touchpad buttons.)
I've tried turning off two-finger scrolling entirely, but modern OS's are built such that they are almost unusable without it; without a mouse to accurately point, trying to use hidden scrollbars is onerous at best.
So the question is, why don't I have this same trouble on other operating systems? And I think the answer is because the other OS's are able to recognize a 'pinch' gesture as distinct from a two-finger scroll.
Typically what happens is that when I unconsciously let my thumb relax and hit the touch pad, my index finger is moving but my thumb is not. So the space between the two touch points is not constant. If this were a mobile device, this would be interpreted as a zoom gesture, but this is a laptop, and so the 'pinch' gesture is ignored, and instead is interpreted as a normal pointer-move event, rather than a two-finger scroll event.
Effectively this means that on Windows, the gesture is interpreted the way I intend it to regardless of whether my thumb is on the trackpad or not.
So my request would be to add a synclient option to enable pinch detection, and allow it to be mapped to a plain pointer move instead of a zoom or scroll.