mirror of
https://gitlab.freedesktop.org/libinput/libei.git
synced 2026-05-14 09:58:07 +02:00
On the protocol level these are implemented as three separate interfaces for swipe, pinch and hold, each interface has the begin/update/end sequence and effectively matches the wayland pointer-gestures protocol. Notably, only one of each gesture may be active at any time though the protocol allows for separate gestures to be active (i.e. swipe while pinching). On the library side the gestures match the touch interface so the sequence for a sender is: swipe = ei_device_new_swipe(device, finger_count); ei_swipe_begin(swipe); ei_swipe_update(swipe, dx, dy); ei_swipe_end(swipe); with the corresponding APIs for pinch and hold. On the receiver side the event types are separated for BEGIN/UPDATE/END for all three gestures and thus match the libinput interface. The notable difference however: there is only one CAP_GESTURES (similar to libinput) and it is set if any gesture is available on the caller. Creating a swipe gesture if the remote end does not support it will return NULL though. Co-Authored-by: Claude Code <noreply@anthropic.com> Part-of: <https://gitlab.freedesktop.org/libinput/libei/-/merge_requests/309> |
||
|---|---|---|
| .. | ||
| templates | ||
| buildtest.c | ||
| buildtest.cc | ||
| conftest.py | ||
| eierpecken.c | ||
| eierpecken.h | ||
| eiproto.py.tmpl | ||
| meson.build | ||
| test-ei-device.c | ||
| test-ei-seat.c | ||
| test-ei.c | ||
| test-eis.c | ||
| test-main.c | ||
| test_oeffis.py | ||
| test_protocol.py | ||
| test_scanner.py | ||
| unit-tests.c | ||