GNOME Bugzilla – Bug 661963
touchpad: Don't enable two-finger scrolling based on width
Last modified: 2012-03-13 18:11:47 UTC
Couldn't figure out how to reopen a bug, so here's a new one. In Bug 625163 we enabled the two-finger scrolling checkbox in the UI based on the tablet having width. https://bugzilla.gnome.org/show_bug.cgi?id=625163 Good idea in principle, albeit the hardware gets in our way. In synaptics 1.4 two-finger emulation was enabled by default on devices that reported finger width but had to since revert this. The hardware doesn't really separate width and pressure, so a hard tap off a finger gives a high width, a wide finger gives a high pressure on light touches. We got spurious right-click presses when two-finger emulation was enabled. Now we have the control-center providing a checkbox for two-finger emulation but it doesn't enable emulation, which to the users appears as if two-finger scrolling is broken (https://bugzilla.redhat.com/show_bug.cgi?id=738123). Two possibilities: - disable the checkbox again for hardware that doesn't do two-fingers. it's not reliable and we're likely to see further bugs when the spurious right clicks take effect - add the code to enable two-finger emulation whenever two-finger emulation is selected on such a device (this would probably be g-s-d then). There's an argument to be made to display "emulating two-fingers" in the control-center somewhere to make the user aware of this. Any suggestions?
Since the behaviour of some hardware, as I was explained, seems to be unpredictable, I'd let user to choose what to use, in the following way: - let him choose if he wants to enable (in gnome-control-center) TapButton1, TapButton2 and TapButton3, each separately. The present case is just to enable/disable them all. Take a look at the output of synclient to see the difference after changing the option "Enable mouse clicks with touchpad" (files attached). In my oppinion, at least TapButton1 should be set to 1 by default, even at the login screen. - if he chooses to use two-finger scrolling, then enable it by setting VertTwoFingerScroll = 1 HorizTwoFingerScroll = 1 just as it is now the case, but: -- if the authors of the driver disable two-finger scrolling by giving EmulateTwoFingerMinZ too high value (!!! https://bugzilla.redhat.com/show_bug.cgi?id=738123), let gnome-control-center set it to, say, EmulateTwoFingerMinZ = 30 -- if the authors of the driver decide to disable two-finger scrolling by default, just by setting (as it would be appropriate, imo) VertTwoFingerScroll = 0 HorizTwoFingerScroll = 0 and having EmulateTwoFingerMinZ = fingerHigh set, then there should be no change in gnome-control-center regarding that issue. Peter, have I missed some big thing again?
Created attachment 199307 [details] synclient output with clicks, two-finger scrollling and horizontal scrolling enabled in control-center
Created attachment 199308 [details] synclient output with clicks, edge scrollling and horizontal scrolling enabled in control-center
Created attachment 199309 [details] synclient output with only two-finger scrollling enabled in control-center
Created attachment 199310 [details] synclient output with only edge scrollling enabled in control-center
(In reply to comment #0) > Couldn't figure out how to reopen a bug, so here's a new one. In Bug 625163 we > enabled the two-finger scrolling checkbox in the UI based on the tablet having > width. > > https://bugzilla.gnome.org/show_bug.cgi?id=625163 <snip> > Two possibilities: > - disable the checkbox again for hardware that doesn't do two-fingers. it's not > reliable and we're likely to see further bugs when the spurious right clicks > take effect > - add the code to enable two-finger emulation whenever two-finger emulation is > selected on such a device (this would probably be g-s-d then). There's an > argument to be made to display "emulating two-fingers" in the control-center > somewhere to make the user aware of this. > > Any suggestions? I'll take option 1) please.
Simply reverting 109b36919921d757b93b91e8082620078608967e would close this bug then, in particular the ((nitems >= 6 && data[5])) bit needs to be removed. Marking this bug blocking 625163, since closing this bug will reopen that one.
commit 1d21c6ea780a6af370756c468f5b2c0cce6b13e4 Author: Peter Hutterer <peter.hutterer@who-t.net> Date: Tue Mar 13 19:08:38 2012 +0100 mouse: Don't enable two-finger scrolling based on width Reverts part of 109b36919921d757b93b91e8082620078608967e Good idea in principle, albeit the hardware gets in our way. In synaptics 1.4 two-finger emulation was enabled by default on devices that reported finger width but had to since revert this. The hardware doesn't really separate width and pressure, so a hard tap off a finger gives a high width, a wide finger gives a high pressure on light touches. We got spurious right-click presses when two-finger emulation was enabled. Now we have the control-center providing a checkbox for two-finger emulation but it doesn't enable emulation, which to the users appears as if two-finger scrolling is broken (https://bugzilla.redhat.com/show_bug.cgi?id=738123). We now disable the checkbox again for hardware that doesn't do two-fingers. it's not reliable and we're likely to see further bugs when the spurious right clicks take effect https://bugzilla.gnome.org/show_bug.cgi?id=661963