Touchpad click (left & right) are not working (Ubuntu v21.10) [Solved by spam-clicking the middle of the trackpad]

When I mechanically click the touchpad, nothing happens. I figured out tap-to-click is working, and two finger taps are treated as right-click. Yet when I actually press down to click, it never registers as a click (no matter which part of the touchpad I click). I am not sure why - tap to click works, and the mouse moves around fine. I’m not certain on the next steps to solve this, I have mostly been looking into various touchpad configurations, e.g. Arch documentation on libinput

I just installed Ubuntu 21.10, partially because the wifi adapter is supported out of the box.

Some debug info I have gathered:

$ xinput list
WARNING: running xinput against an Xwayland server. See the xinput man page for details.
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ xwayland-pointer:17                     	id=6	[slave  pointer  (2)]
⎜   ↳ xwayland-relative-pointer:17            	id=7	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ xwayland-keyboard:17                    	id=8	[slave  keyboard (3)]

It seems like libinput is being used rather than synaptics (xserver-xorg-input-synaptics), based on this:

$ sudo dpkg -l | grep libinput
ii  libinput-bin                               1.18.1-1                           amd64        input device management and event handling library - udev quirks
ii  libinput10:amd64                           1.18.1-1                           amd64        input device management and event handling library - shared library
ii  xserver-xorg-input-libinput                1.1.0-1                            amd64        X.Org X server -- libinput input driver

Would love to see what ideas people have - I am not sure where to start as far as debugging past these steps … Has anyone else had this issue?

EDIT: So, I just found this: Trackpad clicks not registering? - #4 by Paul_Kim
It looks like clicking the middle of the trackpad many times gets it to work. It worked for me, too - I spammed the middle of the touchpad and less than a minute of that did get left and right clicking to suddenly work. :flushed:

2 Likes

so, this has been driving me crazy and I thank you. double finger for right click

1 Like

@satcomjimmy ah yes, I had to change the settings to get double finger for right click instead of the default where the area in which you clicked determined left or right click.

Here is how I changed that setting on Ubuntu 21.10:

gsettings set org.gnome.desktop.peripherals.touchpad click-method 'fingers'

To see what the options are, use this command:

gsettings range org.gnome.desktop.peripherals.touchpad click-method
1 Like

Maybe I already changed something and it afected that, but it is just working for me today. I had previously added accessibility settings to allow a long press to act as a right click but it isn’t as clean and doesn’t work in every instance.

@satcomjimmy If you install gnome-tweaks, you can use it to configure this setting through the GUI:

In particular note the Mouse Click Emulation is set to Fingers.

2 Likes

I have been annoyed by the exact same problem for some weeks too and spamming the middle of the mouse/trackpad actually worked! :fearful: Thank you!

I faced this issue now. The touchpad’s clicks were not recognized.

I am using the things below.

  • Fedora 36
  • Kernal: 6.0.15-200.fc36.x86_64
  • Sway (Wayland based)

The clicks are recognized after clicking the middle of the trackpad many times.

One more criteria I found is, that I am using wireless mouse via USB-A expansion card in the left front port. When turning on the wireless mouse, and clicking by the mouse, the touchpad’s clicks were also started to be recognized after that.

Here is the latest log in the dmesg. I am not sure it is related to the issue.

dmesg

[50974.844446] usb usb2-port2: attempt power cycle
[50978.892272] usb usb2-port2: Cannot enable. Maybe the USB cable is bad?

I have an issue with the left front port: Disk expansion card in the left front port is not detected on Fedora

This issue still annoys me. But I finally found a workaround not to use the touchpad click. That’s to emulate the mouse left, right click, and left drag & drop.

Below is my sway config file for that. And the entire sway config is here. The ydotool is helpful. On my keyboard, CapsLock is also Escape.

~/.config/sway/config

# Mod4: Meta key.
set $mod Mod4
...
# Mouse emulation
mode "mouse" {
    # Left click (down then up)
    bindsym Space exec "sudo ydotool click 0xC0"

    # Enable the space key to drag & drop.
    # However, the `bindsym --release` option is unreliable.
    # https://github.com/swaywm/sway/issues/7217
    # Left down (drag and drop start)
    # bindsym Space exec "sudo ydotool click 0x40"
    # Left up (drag and drop end)
    # bindsym --release Space exec "sudo ydotool click 0x80"

    # Left down (drag and drop start)
    bindsym f exec "sudo ydotool click 0x40"
    # Left up (drag and drop end)
    bindsym d exec "sudo ydotool click 0x80"
    # Right click (down then up)
    bindsym s exec "sudo ydotool click 0xC1"
    bindsym a exec "sudo ydotool click 0xC1"

    # Return to default mode
    bindsym Escape mode "default"
}
bindsym $mod+d mode "mouse"
...
1 Like

Edited: Added mouseless section.

Mouseless

I am experimenting with an app called mouseless as a way to avoid using touchpad. The mouseless was introduced at [RESPONDED] Wayland mega thread and Fractional scaling (Fedora 39 Beta) - #8 by Cheng . (Thanks!) It’s like QMK’s mouse emulation. So far it’s better than the ways I introduced above.

And my mouseless config is here.

Tap-to-click

As another workaround, I enabled the tap-to-click and tap-to-drag feature for the touchpad in libinput to sway (wayland-based-window manager) and i3 (X window-based window manager).

The setting is like this. You can see my actual config files here.

Sway

$ cat ~/.config/sway/config.d/00-framework
...
input type:touchpad {
    # tap: tap-to-click
    tap enabled
    # drag: tap-to-drag
    # https://wayland.freedesktop.org/libinput/doc/latest/tapping.html#tap-and-drag
    drag enabled
}

i3

$ cat /etc/X11/xorg.conf.d/41-trackpad-framework.conf
# https://fedoraproject.org/wiki/Input_device_configuration
Section "InputClass"
        Identifier "libinput touchpad framework"
        MatchIsTouchpad "on"
        MatchDriver "libinput"
        Option "Tapping" "on"
        Option "TappingDrag" "on"
EndSection

Thank you!