Touchpad gestures in Linux KDE with Libinput-gestures

This post is based on my Dell M3800 with Linux Neon.

KDE already does a good job with touchpad gestures (e.g., two fingers for scrolling, 3 finger tap for pasting, etc.) but it does not support 3 finger swype gestures like in MacOs, e.g., for displaying all the windows or for showing the desktop.

Today I tried this utility, Libinput-gestures, which works like magic! The utility comes with good default for typical gestures (including pinch) but I configured that to fit my needs (in particular, I wanted to mimic MacOs behavior for 3 finger swypes: up = display all windows, down = display all windows of the same class and for pinch out = show desktop.

The installation of Linput-gestures is really easy (just follow the instructions at its web page).

Remember that, first of all, your user must be in the input group, so first run

Then logout from your current session, and login again.

Then, in Ubuntu, it’s just a matter of running

and install the software like this (you need git):

You can already start the program like this

and if you want it to be started at login time, then run

The default gestures are in /etc/libinput-gestures.conf. If you want to create your own custom gestures then copy that file to ~/.config/libinput-gestures.conf and edit it.

These are the lines I changed in my configuration (remember that each time you modify the configuration you need to restart libinput-gestures, i.e., instead of start in the command line above, just use restart):

You only need to know the keyboard shortcuts of the actions you want to associate to mouse gestures. With that respect, you might want to have a look at the current shortcuts in KDE Settings (the interesting components are “KWin” and “Plasma”):

This is a video demoing the gestures:

Happy gestures! 🙂

Be Sociable, Share!

6 thoughts on “Touchpad gestures in Linux KDE with Libinput-gestures

  1. Axel

    I prefer having these actions executed when the mouse enters a screen corner. This is also possible to configure in KDE at desktop behaviour > active screen borders 😉

    Reply
    1. Lorenzo Bettini Post author

      That’s what I’ve been using for a long time as well… but in the long run, I found screen borders quite annoying: it’s really easy to end up there by mistake… that’s why I came to prefer touchpad gestures 🙂

      Reply
  2. Casey

    Thank you for the helpful post! — I am disappointed to find that the various gesture recognition layers (touchegg, libinput-gestures) only do “one-shot” gestures, so if I pinch in or out, it only sends a single event, which is useless e.g. for zooming in and out in GIMP by pinching. Are you aware of any way to do that?

    Touchegg recognizes that the pinch is ongoing, and sees many events itself (judging by its stdout), but only sends one final action to the window (and is buggy at that: in and out map to the same resultant action, etc). libinput-gestures doesn’t seem to pay attention to the pinch as it is happening, and just sends the final xdotool event.

    Reply
    1. Lorenzo Bettini Post author

      I’m glad you enjoyed the post 🙂
      That’s only my first experience with touchpad gestures so I haven’t tried any other solution. Have you tried asking libinput-gestures developers about that? I’ve also heard that wayland should bring some further support for gestures…

      Reply
        1. Casey

          Heard from the libinput folks — it’s not possible currently, and we’ll just have to wait for implementation by the desktop environment and/or GIMP. Oh well. 🙂

          Reply

Leave a Reply