After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 759304 - Changes to touchpad scroll methods
Changes to touchpad scroll methods
Status: RESOLVED FIXED
Product: mutter
Classification: Core
Component: general
3.19.x
Other Linux
: Normal normal
: ---
Assigned To: mutter-maint
mutter-maint
Depends on: 759305
Blocks:
 
 
Reported: 2015-12-10 15:03 UTC by Bastien Nocera
Modified: 2015-12-15 13:44 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
backends: Force 2-finger scroll by default if available (4.12 KB, patch)
2015-12-11 11:42 UTC, Bastien Nocera
none Details | Review
backends: Force 2-finger scroll by default if available (10.41 KB, patch)
2015-12-15 12:24 UTC, Bastien Nocera
none Details | Review
backends: Force 2-finger scroll by default if available (10.95 KB, patch)
2015-12-15 13:43 UTC, Bastien Nocera
committed Details | Review
backends: Fix cut'n'paste error in click method setting (1.05 KB, patch)
2015-12-15 13:43 UTC, Bastien Nocera
committed Details | Review

Description Bastien Nocera 2015-12-10 15:03:32 UTC
Following the re-design of the Mouse panel, we hit problems with the scroll methods controls which weren't very usable.

We'd like to change the defaults for the org.gnome.desktop.peripherals.touchpad schema, scroll-method.

When the touchpad is two-finger scrolling capable, always enable it, whatever the contents of the settings.

When the touchpad only supports edge scrolling (usually older devices, and usually smaller devices), allow disabling the edge scrolling with "disabled". Any other value would enable two-finger-scrolling.

Ideally, we'd change the scroll-method key, but it's easier to do it that way.
Comment 1 Bastien Nocera 2015-12-10 15:04:38 UTC
See https://bugzilla.gnome.org/show_bug.cgi?id=759305
Comment 2 Bastien Nocera 2015-12-11 11:42:15 UTC
Created attachment 317200 [details] [review]
backends: Force 2-finger scroll by default if available

When the touchpad is two-finger scrolling capable, always enable it,
whatever the contents of the settings.

When the touchpad only supports edge scrolling (usually older devices, and
usually smaller devices), allow disabling the edge scrolling with "disabled".
Any other value would enable two-finger-scrolling.

Ideally, we'd change the scroll-method key, but it's easier to do it that way.
Comment 3 Carlos Garnacho 2015-12-14 16:27:37 UTC
Comment on attachment 317200 [details] [review]
backends: Force 2-finger scroll by default if available

If that's the desired hardcoded behavior I guess it makes sense...

As you say, ideally the scroll-method setting would need changing. An alternative I can think of is adding a "default" option to the enum, which allows mutter to choose 2fg/edge scrolling, and g-c-c only ever sets default/disabled. That'd still leave the possibility of disabling scrolling on 2fg capable touchpads, but I'd trust it'd only be possible if you fiddle with dconf-editor manually.
Comment 4 Bastien Nocera 2015-12-15 12:24:30 UTC
Created attachment 317414 [details] [review]
backends: Force 2-finger scroll by default if available

When the touchpad is two-finger scrolling capable, always enable it.

When the touchpad only supports edge scrolling (usually older devices, and
usually smaller devices), allow disabling the edge scrolling.
Comment 5 Bastien Nocera 2015-12-15 12:27:17 UTC
Comment 3 has a version that changes the semantics of the scroll-method GSettings key, which I don't really like.

Comment 4 has a version which uses the new key in the patches in bug 759305. I believe that it's the version that Garnacho prefers (and so do I).

When we've chosen which way to go, I'll update the "Mouse & Touchpad" panel patch.
Comment 6 Carlos Garnacho 2015-12-15 12:51:47 UTC
Review of attachment 317414 [details] [review]:

Indeed, I think this approach is better for the long run. As said, the gsettings-desktop-schemas change is technically a break, but one contained to mutter/g-c-c/g-s-d. Sounds reasonable enough, better than adding non-obvious small print to the current setting.

I guess would be great to release gsettings-desktop-schemas with the patch and bump mutter dependency though...
Comment 7 Bastien Nocera 2015-12-15 13:43:03 UTC
Created attachment 317418 [details] [review]
backends: Force 2-finger scroll by default if available

When the touchpad is two-finger scrolling capable, always enable it.

When the touchpad only supports edge scrolling (usually older devices, and
usually smaller devices), allow disabling the edge scrolling.

This requires a newer gsettings-desktop-schemas as the scroll-method key
was removed, and the edge-scroll-enabled key added.
Comment 8 Bastien Nocera 2015-12-15 13:43:10 UTC
Created attachment 317419 [details] [review]
backends: Fix cut'n'paste error in click method setting

GDesktopTouchpadScrollMethod was used instead of GDesktopTouchpadClickMethod
which became visible now that the former has been removed from
gsettings-desktop-schemas.
Comment 9 Bastien Nocera 2015-12-15 13:44:00 UTC
Attachment 317418 [details] pushed as a27b259 - backends: Force 2-finger scroll by default if available
Attachment 317419 [details] pushed as 996aeae - backends: Fix cut'n'paste error in click method setting