Bug 1350084 - Touchpad edge scrolling does not work
Summary: Touchpad edge scrolling does not work
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: mutter
Version: 24
Hardware: x86_64
OS: Linux
unspecified
urgent
Target Milestone: ---
Assignee: Florian Müllner
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-06-25 10:22 UTC by Martin Šťastný
Modified: 2017-02-21 19:15 UTC (History)
23 users (show)

Fixed In Version: mutter-3.22.3-1.fc25
Clone Of:
Environment:
Last Closed: 2017-02-21 19:15:27 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
GNOME Bugzilla 768245 0 Normal RESOLVED backends: Re-add support for edge scrolling with some touchpads 2020-01-28 15:27:52 UTC

Description Martin Šťastný 2016-06-25 10:22:38 UTC
Description of problem:
After upgrade to 24, I have been forced to start using libinput instead of synaptics. Additionally, I started using Wayland. Problem is, that edge scrolling does not work now. In "Mouse & Touchpad" I have just options to enable/disable touchpad, enable/disable natural scrolling and set touchpad speed. In dconf editor, there are more options including tap-to-click and edge-scrolling-enabled which is both set to true. Interesting thing is, that when I am sliding with my finger in the edge of touchpad, cursor is not moving, so it looks like that in some point it is recognized as scrolling event. Even more interesting thing is, that in output of libinput-debug-events there is no output when I am sliding on the edge. 

Version-Release number of selected component (if applicable):
libinput-1.3.2

How reproducible:
Even on clean (live) install on Fedora.

Steps to Reproduce:
1.
2.
3.

Actual results:
Edge scrolling does not work

Expected results:
Edge scrolling does work

Additional info:
Output of libinput-list-devices

Device:           AlpsPS/2 ALPS DualPoint TouchPad
Kernel:           /dev/input/event6
Group:            7
Seat:             seat0, default
Size:             80.00x43.75mm
Capabilities:     pointer 
Tap-to-click:     disabled
Tap-and-drag:     enabled
Tap drag lock:    disabled
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: enabled
Calibration:      n/a
Scroll methods:   *two-finger edge 
Click methods:    none
Disable-w-typing: enabled
Accel profiles:   none

Side note: tap-to-click is enabled and working. Side note 2: it will be very nice, if it will be possible to enable tap-drag-lock.

Comment 1 Germán Racca 2016-06-26 11:02:18 UTC
The very same thing happens to me. Waiting for a solution.

Comment 2 Martin Šťastný 2016-06-26 15:34:53 UTC
Ok, it looks like, that this is not bug but a feature! I did some research and if I am not wrong or I am not misunderstanding anything, great people who hacking on gnome-settings-daemon and gnome-control-center just decided, that if you have two finger scroll capable touchpad, it will be enabled by default *WITHOUT* option to disable it in favour of edge scrolling. They have created new gsettings key edge-scrolling-enabled (scroll-method is deprecated now) which purpose is only if you have non two finger scroll capable touchpad to disable it, but *NOT* enable it on capable one! I am very disappointed by this decision, I can't find polite words on this situation, it's just rubbish! 

Now it's clear, that this is not fault of libinput, because you are able to enable it (edge scroll) in Xorg with xinput command (which passes it directly do the driver), but on Wayland there is no way. Libinput supports it, so why the good heavens you are dropping it from control-center and settings-daemon?

Sources:
https://github.com/GNOME/gnome-control-center/commit/07c6c4d3f749893af17506ae036f59456efc9c15
https://bugzilla.gnome.org/show_bug.cgi?id=759304
https://bugzilla.gnome.org/show_bug.cgi?id=759307
https://github.com/GNOME/gnome-settings-daemon/commit/570cc8a2561728bdf4ec6c91064c618debc3e5d4
https://bugzilla.gnome.org/show_bug.cgi?id=759559

Comment 3 Martin Šťastný 2016-06-26 16:34:36 UTC
Upstream bug: https://bugzilla.gnome.org/show_bug.cgi?id=768071

Comment 4 Brandon Nielsen 2016-06-28 21:21:24 UTC
On my HP 8510w, libinput shows that my Synaptics TouchPad supports two-finger scrolling, however I've never seen any evidence that is actually the case. Enabling two-finger scrolling in Gnome does not result in functional two-finger scrolling. Even if two-finger scrolling worked on this TouchPad, I'd prefer edge scrolling due to its size.

Manually enabling edge scrolling (since the switch is hidden) with 'xinput set-prop 10 290 0, 1, 0' results in functional edge scrolling.

Comment 5 Martin Šťastný 2016-06-28 21:40:17 UTC
(In reply to Brandon Nielsen from comment #4)
> On my HP 8510w, libinput shows that my Synaptics TouchPad supports
> two-finger scrolling, however I've never seen any evidence that is actually
> the case. Enabling two-finger scrolling in Gnome does not result in
> functional two-finger scrolling. Even if two-finger scrolling worked on this
> TouchPad, I'd prefer edge scrolling due to its size.
> 
> Manually enabling edge scrolling (since the switch is hidden) with 'xinput
> set-prop 10 290 0, 1, 0' results in functional edge scrolling.

I think, that root cause of your problem is, that libinput badly recognizes your touchpad as two finger scroll capable which it isn't. My advice is to fill bug against libinput. When your touchpad is recognized as non two finger scroll capable, everything will work excellent for you.

This bug does have only secondary impact on you. If this bug did not exist, you will be able to manually switch to edge scroll in g-c-c in spite of supposed capabilities of your touchpad. But thank you for your commitment, because it clearly shows, how terribly wrong decision to remove this option from g-c-c and g-s-d was.

I am using same workaround as you, but it will not work in Wayland and is not persistent across reboots by itself.

Comment 6 Peter Hutterer 2016-06-29 03:23:19 UTC
(In reply to Martin Šťastný from comment #5)
> (In reply to Brandon Nielsen from comment #4)
> I think, that root cause of your problem is, that libinput badly recognizes
> your touchpad as two finger scroll capable which it isn't. My advice is to
> fill bug against libinput.

yes, please file a bug against libinput with an evemu recording attached that shows a two-finger scroll sequence. There are a few touchpads that claim to have 2fg support but their precision is so bad that we can't do 2fg scrolling on it.

Comment 7 Brandon Nielsen 2016-06-29 15:42:27 UTC
(In reply to Peter Hutterer from comment #6)
> (In reply to Martin Šťastný from comment #5)
> > (In reply to Brandon Nielsen from comment #4)
> > I think, that root cause of your problem is, that libinput badly recognizes
> > your touchpad as two finger scroll capable which it isn't. My advice is to
> > fill bug against libinput.
> 
> yes, please file a bug against libinput with an evemu recording attached
> that shows a two-finger scroll sequence. There are a few touchpads that
> claim to have 2fg support but their precision is so bad that we can't do 2fg
> scrolling on it.

Submitted as bug 1351285

Comment 8 Peter Hutterer 2016-08-24 23:40:36 UTC
fwiw gnome upstream has merged this back, see https://bugzilla.gnome.org/show_bug.cgi?id=768245, mutter commit 36cd7177f

so it's back to working in F25 but I don't know if it'll be backported to F24

Comment 9 Sylvia Sánchez 2017-02-13 21:43:22 UTC
I have no scrolling at all. No edge scrolling, no two fingers, nothing. 
My laptop is a Dell Latitude E6500 with Nvidia card and in Fedora 24 was working fine. After upgrading "lost" the scrolling but in DConf is set as true. And I can click on the option in Settings, but yet that I have no scrolling.

Comment 10 Rui Matos 2017-02-21 19:15:27 UTC
There was mutter bug which would prevent edge scrolling from being enabled if two finger scrolling was enabled even though two finger wasn't available in libinput. This should now be fixed in mutter-3.22.3-1.fc25 . Please re-open if it still doesn't work.


Note You need to log in before you can comment on or make changes to this bug.