Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

hold-drag gesture #337

Open
KAGEYAM4 opened this issue Feb 3, 2025 · 1 comment
Open

hold-drag gesture #337

KAGEYAM4 opened this issue Feb 3, 2025 · 1 comment

Comments

@KAGEYAM4
Copy link

KAGEYAM4 commented Feb 3, 2025

Is your feature request related to a problem? Please describe.
I am using https://github.com/kando-menu/kando/, which i trigger using 1-tap-hold which triggers Ctrl+Space using ydotool, the problem is after that tap-hold i have to hold CTRL manually from keyboard to go into https://kando.menu/usage/#turbo-mode or use tap-down-up-down-move-up for https://kando.menu/usage/#marking-mode.

If fusuma supported hold-drag gesture having begin:, update:, end then i will be able to send Ctrl+Space then hold-Ctrl using ydotool in the begin section and release Ctrl in the end section.

Describe the solution you'd like
hold-drag gesture support, where i can hold then move my finger across trackpad and when i release the finger off the trackpad the gesture completes. It will support begin:, update:, end:

Describe alternatives you've considered
Currently i can use 3,4 finger swipe. But this gets congested on touchpad as in kando there are levels of submenu. Also i wanna free 3,4 swipe for others like workspace management.

Additional context
In the output of libinput debug-events --verbose there's a log for when user lifts fingers off the touchpad -->

404: event8  - button state: touch 0 from BUTTON_STATE_AREA    event BUTTON_EVENT_UP          to BUTTON_STATE_NONE
  ... event8  - gesture: [1fg] event GESTURE_STATE_POINTER_MOTION → GESTURE_EVENT_END → GESTURE_STATE_NONE
@KAGEYAM4
Copy link
Author

KAGEYAM4 commented Feb 11, 2025

If the above is possible then can it be extended to 2-finger-hold-drag and 3-finger-hold-drag? For example we can use the following events for 3-finger-hold-drag -->
event8 GESTURE_HOLD_BEGIN +0.236s 3
event8 GESTURE_HOLD_END +1.215s 3 cancelled
event8 POINTER_MOTION +1.218s -1.45/ 0.12 (-12.00/ +0.97)
event8 POINTER_MOTION 2 +1.225s -4.87/ 0.29 (-16.00/ +0.97)
event8 POINTER_MOTION 3 +1.232s -5.43/ 0.33 (-16.00/ +0.97)
event8 POINTER_MOTION 4 +1.239s -6.79/ 0.00 (-20.00/ +0.00)
event8 POINTER_MOTION 5 +1.246s -7.81/ 0.00 (-23.00/ +0.00)
143: event8 - button state: touch 1 from BUTTON_STATE_AREA event BUTTON_EVENT_UP to BUTTON_STATE_NONE
... event8 - gesture: [1fg] event GESTURE_STATE_POINTER_MOTION → GESTURE_EVENT_END → GESTURE_STATE_NONE

i.e we start with 3 tap hold then lift two finger up and keeping one finger still on trackpad start moving on the trackpad.

Edit: make the above example more clear.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants