JoseExposito / touchegg

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

Build on slack 15 64 #569

Closed plop28 closed 2 years ago

plop28 commented 2 years ago

Hello,

I can't make it work on slackware 15 install. I just wanted to have pinch to zoom on firefox/chrome

i used cmake -DCMAKE_INSTALL_PREFIX=/usr -DUSE_SYSTEMD=OFF -DCMAKE_BUILD_TYPE=Release .. then tried to run touchegg --daemon

I can see errors :

libinput error: event9 - ELAN0670:00 04F3:3150 Touchpad: libinput bug: invalid gesture event GESTURE_EVENT_PINCH in state GESTURE_STATE_NONE

config for this gesture is in the touchegg configuration file :

true Control_L KP_Subtract KP_Add
<gesture type="PINCH" fingers="2" direction="OUT">
  <action type="SEND_KEYS">
    <repeat>true</repeat>
    <modifiers>Control_L</modifiers>
    <keys>KP_Add</keys>
    <decreaseKeys>KP_Subtract</decreaseKeys>
  </action>
</gesture>

Is there a thing i can try to solve this ?

Thanks

JoseExposito commented 2 years ago

Hi!

Please follow this instructions to build from source: https://github.com/JoseExposito/touchegg/blob/master/HACKING.md#compilation

You'd need to sudo make install and enable the systemd service.

I can see errors :

libinput error: event9 - ELAN0670:00 04F3:3150 Touchpad: libinput bug: invalid gesture event GESTURE_EVENT_PINCH in > state GESTURE_STATE_NONE

What's your libinput version? (libinput --version)

This issue should be fixed in the latest version: https://gitlab.freedesktop.org/libinput/libinput/-/issues/726

Touchégg should work even if that log is displayed, it'd just affect a bit to the pinch recognition mechanisms.

plop28 commented 2 years ago

Hey, yes i have followed build instructions located in the provided HACKING.md. I don't have systemd so i put -DUSE_SYSTEMD=OFF libinput 1.19.3

JoseExposito commented 2 years ago

I don't have systemd so i put -DUSE_SYSTEMD=OFF

Ah! OK, then you need to run both the client (touchegg) and the server (sudo touchegg --daemon) and it should work.

Otherwise, please copy & paste the output of both commands to see what's going on.

Note that running the daemon as root is required to access your input devices. Another option is to add your user to the input group:

$ sudo usermod -a -G input $USER

Ideally your distro should provide a tool to run daemons with elevated privileges instead of adding your user to the input group. I'm not sure since I have never used Slack.

libinput 1.19.3

The fix is included in libinput 1.20.0: https://lists.freedesktop.org/archives/wayland-devel/2022-February/042105.html

Commit: "gestures: fix disambiguation between two finger pinch and scroll"

plop28 commented 2 years ago

Hello, i have restarted my laptop this evening and indeed it works now, I don't know what was wrong in first place. So I can confirm it works on Slackware 15 64bit with information provided in HACKING.md Thanks for your reply @JoseExposito