JoseExposito / touchegg

Linux multi-touch gesture recognizer
GNU General Public License v3.0
3.66k stars 169 forks source link

Support multiple input sources (i.e. 2-1 laptops) #580

Closed joax closed 2 years ago

joax commented 2 years ago

Is your feature request related to a problem? Please describe

Currently the 2-1 laptops have two inputs for libinput, Touchegg would only interpret one (in my case the screen) but doesn't parse the input from the touchpad. It would be nice to parse both inputs (and more, in case a touchpad gets connected via USB).

Describe the solution you'd like

Parse all libinput events to get the swipe gestures.

Describe alternatives you've considered

Leaving as it is is ok, but limited (touchpad gestures don't work).

JoseExposito commented 2 years ago

In theory, Touchégg reads events from every input device connected to your laptop. I wonder whether this is a bug or a problem with your touchpad.

Could you run sudo libinput record, select your touchpad and copy the output after performing a 3 finger swipe, please?

This should should us where it the problem.

joax commented 2 years ago

Oddly enough sudo libinput debug-events is showing nothing. I think that X server is somehow sequestering libinput?

JoseExposito commented 2 years ago

I couldn't tell. libinput record shows the events as emitted from the kernel. On the other hand, debug-events shows events after being processed by libinput (what Touchégg receives).

If debug events is not showing output, Touchégg won't receive events, so there is nothing I can do here.

My guess is that your touchpad is not gesture capable, it is not reliable (its events are imprecise and lininput will only trust them for stuff like scrolling) or it emulates mouse events. The last option is less likely.

If you are curious to know what's going on, a libinput record could tell us. But I'm closing the issue on this project, as having no output in debug-events is enough evidence to know that it can not be solved here.