English
Ask Your Question
3

How to enable touchpad edge scrolling

asked 2016-06-22 23:14:32 +0000

estebanknobl gravatar image

updated 2016-06-26 14:45:43 +0000

Hello, folks.

I'm having problems with edge scrolling on Fedora 24. I cannot seem to find a way to enable it. Tap-to-ckick and two-finger scrolling works just fine. It is a fresh install running Gnome.

Can anyone help me?

Best regards, Esteban

edit retag flag offensive close merge delete

Comments

gracias por tu ayuda ahora sí ya puedo usar el scroll del touchpad en mi fedora 24

dextre ( 2016-07-16 01:51:01 +0000 )edit

file:///home/jsd16/Im%C3%A1genes/Captura%20de%20pantalla%20de%202016-07-16%2010-02-08.png hello again when i did your solution in the section touchpad desapear but all work, i just test all the solution here showed and the only one it works is yours. well

sorry but how can I get it a litlle slower the velocity of touchpad. thank you

dextre ( 2016-07-16 15:07:52 +0000 )edit

5 answers

Sort by » oldest newest most voted
6

answered 2016-06-26 16:40:33 +0000

happymaster23 gravatar image

updated 2016-06-27 14:07:38 +0000

Cause of this behaviour

After some research, whole situation is quite clear for me:

  1. Synaptics and evdev support was dropped from gnome-control-center and gnome-settings-daemon. If you want use these drivers, you can configure it only through Xorg config files.
  2. Only supported driver is libinput, which can be configured through gnome-control-center or through gsettings with very limited options. Under Xorg, you can configure all libinput options through xinput command. Under Wayland, there is no such way.
  3. Not working edge scrolling is not bug, but a feature. Libinput supports it perfectly, but folks who hack gnome-control-center and gnome-settings-daemon 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!

So, if you want to use edge scrolling, you have those two options:

  1. Use synaptics/evdev and configure it through Xorg config files. ( https://ask.fedoraproject.org/en/ques... )
  2. Use libinput and workaround it through xinput ( https://ask.fedoraproject.org/en/ques... ). You can't make it easily permanent (through Xorg config file), because it looks like, that all config options from Xorg are overwritten by gnome-settings-daemon.

I am very angry about that, it's just rubbish. And it's even worse, because under Wayland you CANT'T workaround this (and not only this, locked drags for example too). Because of that, I filled bugs both in Redhat bugzilla and upstream bugzilla. Please support resolving this bug there!

Links to bugzilla:
https://bugzilla.redhat.com/show_bug....
https://bugzilla.gnome.org/show_bug.c...

Sources:
https://github.com/GNOME/gnome-contro...
https://bugzilla.gnome.org/show_bug.c...
https://bugzilla.gnome.org/show_bug.c...
https://github.com/GNOME/gnome-settin...
https://bugzilla.gnome.org/show_bug.c...


Libinput on X11 workaround

There is a workaround for libinpunt on X11:

  1. Determine ID of your touchpad:

    xinput list
  2. Create desktop file in ~/.local/share/applications named edge-scroll-workaround.deskop

    vim ~/.local/share/applications/edge-scroll-workaround.desktop
  3. Place here this code:

        [Desktop Entry]
        Name=Edge scroll workaround
        Exec=/usr/bin/xinput set-prop **ID OF TOUCHPAD** "libinput Scroll Method Enabled" 0, 1, 0
        Type=Application
    
  4. In Tweak Tool (available in gnome-tweak-tool package) go to Startup Applications, click on + and in list find Edge scroll workaround.

  5. Logout/login or restart and that's it.

edit flag offensive delete link more

Comments

1

Great research, Martin! Today I also came to the same conclusion. I'm supporting you in both bug reports.

skytux ( 2016-06-26 18:04:10 +0000 )edit

Thank you for your research. As you say, is quite clear. As for my workaround, not only synaptics is being deprecated, but it won't work on wayland. So we need a better way to do this.

estebanknobl ( 2016-06-27 13:04:31 +0000 )edit

You should be able to tell g-s-d to not touch deal with your mouse by making it inactive through: dconf write /org/gnome/settings-daemon/plugins/mouse/active false

At that point, the tips mentioned here should work: https://wiki.archlinux.org/index.php/... but with edge scrolling substituted.

galan ( 2016-06-27 21:18:55 +0000 )edit

Disabling g-s-d for mouse does not work for me, settings from Xorg config is still overwritten. Fiddling with xinitrc is maybe possible way, but creating separate .desktop file and making it run on login looks clearer for me, because in future it will not break anything and it will be quite clear how to decommission it.

happymaster23 ( 2016-06-28 08:52:21 +0000 )edit

Any more news in this? I upgraded to Gnome 3.20 and having the same problem... Running a xinput bash at the moment :(

PatriqDesigns ( 2017-01-18 15:55:08 +0000 )edit
0

answered 2016-06-24 02:51:43 +0000

whot gravatar image

updated 2016-06-24 02:52:42 +0000

If you're using gnome there is a toggle in the config panel to enable it. That toggle flips the gsettings which should then apply to the driver. Without the UI you can achieve the same using this command

gsettings set org.gnome.desktop.peripherals.touchpad edge-scrolling-enabled true

This is the recommended method, though for other desktop environments you'll have to figure out their way of doing so.

edit flag offensive delete link more

Comments

So that's where that setting went. It used to be under settings-daemon which is what you will find all over with a Google search.

And that is still the wrong setting, that one doesn't exist.

gsettings set org.gnome.desktop.peripherals.touchpad scroll-method "edge-scrolling" is the correct command. I just tested it.

Samuel Sieb ( 2016-06-24 05:55:00 +0000 )edit

Thank you for your replies. I looked on Dconf editor and found that edge-scrolling-enabled is set to "true". However, it doesn't seems to work.

estebanknobl ( 2016-06-24 21:19:27 +0000 )edit

You actually found that property? That's very strange, because I don't have that one. Try the one I suggested in the comment you replied to.

Samuel Sieb ( 2016-06-26 05:14:47 +0000 )edit

I tried the one you suggested, Samuel. And did not worked. It's strange indeed, being a fresh install.

estebanknobl ( 2016-06-26 12:25:34 +0000 )edit
0

answered 2016-06-23 05:16:35 +0000

Samuel Sieb gravatar image

Run synclient VertEdgeScroll=1 HorizEdgeScroll=1 VertTwoFingerScroll=0 HorizTwoFingerScroll=0 in a terminal.

You could put that in a script that runs at desktop startup. Or you could possibly add the options to the first section in /usr/share/X11/xorg.conf.d/50-synaptics.conf. I don't want to restart my X server right now to test it.

edit flag offensive delete link more

Comments

this won't work on F23 and later where we use xorg-x11-drv-libinput by default. You can uninstall that driver and fall back onto synaptics but it's not something we recommend doing.

whot ( 2016-06-24 02:54:12 +0000 )edit

I did test it on my F23 laptop and it worked. Maybe because it was upgraded from earlier versions, it didn't get converted to libinput?

Samuel Sieb ( 2016-06-24 05:55:55 +0000 )edit

@whot I recently upgraded to F24 and edge scrolling stopped working, but there are no configurations in Control Center. Now, after reading your comment, I installed xorg-x11-drv-libinput and some configurations appear in Control Center, but edge scrolling still doesn't work, only 2 finger scroll. Do you know how to configure edge scrolling? Thanks!!

skytux ( 2016-06-25 07:43:00 +0000 )edit

Nevermind, I found a workaround. I'm posting here as an answer.

skytux ( 2016-06-25 10:24:21 +0000 )edit
0

answered 2016-06-26 02:53:38 +0000

estebanknobl gravatar image

updated 2016-06-26 03:14:45 +0000

This is what worked for me.

I created "touchpad.conf" on /etc/X11/xorg.conf.d/

sudo nano /etc/X11/xorg.conf.d/touchpad.conf

And I put this inside:

Section  "InputClass"
      Identifier  "touchpad catchall"
      Driver  "synaptics"
      MatchIsTouchpad  "on"

      ####################################
      ## The lines that you need to add ##
      # Enable left mouse button by tapping
      Option  "TapButton1"  "1"
      # Enable vertical scrolling
      Option  "VertEdgeScroll"  "1"
      # Enable right mouse button by tapping lower right corner
      Option "RBCornerButton" "3"
      # Enable scroll middle button by tapping upper right corner
      Option "RTCornerButton" "2"
      # Velocity
      Option "MinSpeed" "1"
      Option "MaxSpeed" "1"
      ####################################

      MatchDevicePath  "/dev/input/event*"
EndSection

You should test how much velocity works for you. I like it fast. Also, you could check what other options you might want to set. I found this article very helpful.

I hope it helps.

Best regards, Esteban

edit flag offensive delete link more

Comments

I expect this will stop working if you switch to libinput. Synaptics is deprecated now.

Samuel Sieb ( 2016-06-26 05:16:04 +0000 )edit

I know is deprecated, but for some reason ibinput doesen't work In my laptop. I'll send my feedback to the team developing libinput.

estebanknobl ( 2016-06-26 12:23:18 +0000 )edit

how to reduce the speed? what values should i put if i need only 75% of what u set?

shafeequemhd ( 2016-11-17 13:13:43 +0000 )edit
0

answered 2016-06-25 10:32:35 +0000

skytux gravatar image

updated 2016-06-25 10:35:20 +0000

Yesterday I upgraded to Fedora 24 and my edge scrolling stopped working. So I installed libinput:

$ dnf install xorg-x11-drv-libinput

and then I enabled edge scrolling with the following commands. First identify the id of your touchpad:

$ xinput list 
...
⎜   ↳ SynPS/2 Synaptics TouchPad                id=12   [slave  pointer  (2)]
...

Then list its properties:

$ xinput list-props 12
...
    libinput Scroll Method Enabled (287):   1, 0, 0
...

And finally enable edge scrolling (this was kinda trial and error):

$ xinput set-prop 12 "libinput Scroll Method Enabled" 0, 1, 0

HTH.

edit flag offensive delete link more

Comments

1

And is there similar solution for Wayland? Situations looks like that guys from Red Hat simply decided, that infrastructure around libinput is perfect enough. But it isn't. I filled a bug https://bugzilla.redhat.com/show_bug....

happymaster23 ( 2016-06-25 16:30:27 +0000 )edit

I tried to make it permanent, so I created /etc/X11/xorg.conf.d/90-libinput.conf with Section "InputClass" Identifier "libinput touchpad catchall" MatchIsTouchpad "on" MatchDevicePath "/dev/input/event*" Driver "libinput" Option "ScrollMethod" "edge" EndSection But it does not work. Any advices what I am doing wrong?

happymaster23 ( 2016-06-25 17:38:56 +0000 )edit

See below.

Try gsettings set org.gnome.desktop.peripherals.touchpad scroll-method "edge-scrolling".

Samuel Sieb ( 2016-06-26 05:16:46 +0000 )edit

@happymaster23 I'm going to make a test...

skytux ( 2016-06-26 05:52:29 +0000 )edit

@Samuel Sieb that command doesn't work in F24, you are using the wrong key.

skytux ( 2016-06-26 05:54:09 +0000 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

[hide preview]

Use your votes!

  • Use the 30 daily voting points that you get!
  • Up-vote well framed questions that provide enough information to enable people provide answers.
  • Thank your helpers by up-voting their comments and answers. If a question you asked has been answered, accept the best answer by clicking on the checkbox on the left side of the answer.
  • Down-voting might cost you karma, but you should consider doing so for incorrect or clearly detrimental questions and answers.

Question Tools

Follow
4 followers

Stats

Asked: 2016-06-22 23:13:30 +0000

Seen: 6,179 times

Last updated: Jun 27 '16