Adding gestures to X11 session on Gnome and customizations

Adding Gesture Support In X11 Session On GNOME And Customizations

The GNOME desktop environment, version 40 onwards, offers a gesture support on Laptops which have touchpads. These gestures include a three finger horizontal swipe to change workspaces and a three finger vertical swipe to open either the search menu or the application grid. However, these gestures are only available to you on the Wayland session, and as you know, not many distributions have implemented a Wayland session yet.

Also, these gestures are not customizable which I think is a bummer and there could be a large amount of shortcuts and optimizations which we could’ve applied to our system if customizing gestures was an option. The GNOME developers so far have not implemented these features in the Desktop Environment.

In this tutorial, I will show you how can you enable the Gesture support in an X11 session and also learn how to customize the gestures as per our need. So, let’s get started.

Adding Gesture support to X11 session

First of all, we have to add your user to the ‘input’ group. To do that, just type the following commands in your terminal:

sudo usermod -aG input $USER
Adding User To The Input Group
Adding User To The Input Group

If you are using an immutable Linux distribution, such as Fedora Silverblue, type the following commands instead:

# group 'input' needs to be in /etc/group first
grep -E '^input:' /usr/lib/group | sudo tee -a /etc/group
sudo usermod -aG input $USER

Now, visit the GitHub release page of gnome-x11-gestures-daemon and download the latest zip file. Once the download is finished, type the following commands to extract the archive:

mkdir x11.gestures && cd x11.gestures
unzip ~/Downloads /gnome-x11-gestures-daemon.v0.2.1.zip
Extract The Downloaded Archive
Extract The Downloaded Archive

Make sure that you enter the correct version number of the downloaded zip file in the above command. Finally, type the following commands to install this daemon:

sh install.sh --restart
Installing Gestures Support On X11
Installing Gesture Support On X11

Now, restart your system, and gestures should be working on the next reboot.

Customizing Gestures

If you want to customize the gestures which are given as a default in the GNOME desktop environment, just add the ‘Gesture Improvements‘ extension to your device. To do that, you can either use the Gnome Extensions application or you can just visit the Gnome Extensions website and enable it from there (you would need a Browser Extension first).

Add Gesture Improvements Extension To Your GNOME Desktop
Add Gesture Improvements Extension To Your GNOME Desktop

Also Read : Top Gnome extensions to use for better usability

You might also need the extension manager application on your device if you want to edit the gestures, just install it by typing the following commands in your terminal:

# On Debian and Ubuntu based distributions:
sudo apt update && sudo apt install gnome-extensions

# On Fedora Workstation
sudo dnf install gnome-extensions

# On Arch Linux based distributions
sudo pacman -S gnome-extensions

Once installed, just launch the application, and you will see the option to customize this extension.

Open Extension Settings From Gnome Extensions
Open Extension Settings From Gnome Extensions

Now, you will see a ton of options using which you can customize your touchpad input, including custom application based gestures. This is a really advanced tool, and you can play all day long, making your desktop exactly the way you want.

Customize Your Gestures Using Gesture Improvements Extensions
Customize Your Gesture Using Gesture Improvements Extensions

This extension adds a 4 finger gesture option, which increases the amount of gestures you can have on your desktop by a lot. If you navigate to the second tab, you will see that you can add gesture per-application basis, this can help you improve your workflow and experience by a lot.

Adding Gesture Per Application Basis
Adding Gesture Per-Application Basis

Summary

I still do not understand the mindset behind the GNOME developers, these extensions, and gesture support for X11 should be the default configuration for a better user experience. Instead, the users have to go through several hoops to enable these features manually. Nevertheless, this is why being open source helps the end user as, people and independent developers can develop the solution to these miniscule problems. Hopefully these feature will be implemented in the stock gnome experience soon.

Check: X Window System – Wikipedia