There is a trigger for a two-finger swipe down starting from the top edge of the trackpad. In the advanced settings, this can be restricted so that it only triggers when swiping down in the right corner. It’s also possible to select a central area or an area further to one side.
In this way, a two-finger-tap can also be restricted. I use a two-finger-tap to trigger a right-click, and that could be limited so it does not trigger in the corners. For the corners, you could then create separate two-finger-tap triggers, each restricted so that they only trigger in the respective corner of the trackpad.
Took a few years but 6.273 adds edge swipes with 1 and 2 fingers. They trigger continuously, so you might need to use BTT's debounce action if you only want to trigger an action once.
I’m having a problem with the debounce option:
Instead of preventing additional trigger executions, it seems to delay the next one.
What I want is for the trigger to execute only once per swipe. However, if I swipe normally or with some momentum (rather than very carefully), my action is executed once immediately as expected. Then, after the debounce interval I configured has passed, the action is executed a second time — even though my fingers have been off the trackpad for quite a while.
In other words, the debounce action appears to postpone a second trigger execution instead of suppressing it completely.
If I swipe only briefly, so that I get just a single haptic feedback event, then the second trigger execution (after the x-second debounce interval in this example) does not occur.
Another thing, that is confusing: I like to use haptic feedback. During the swipe, the haptic feedback is triggered multiple times, even though the actual trigger now only executes once.
Is this expected behavior, or could there be something wrong with my trigger configuration?
I found a workaround for the second trigger execution:
If I move the action to "Actions Executed on Touch Release", the problem no longer occurs. The action is executed only once and does not fire again after the debounce interval.
The only remaining issue is the haptic feedback. It still gets triggered multiple times during a swipe, even though the actual action now executes only once.
I found a pretty nice setup:
For touch durations below 1 second, each swipe results in only a single trigger execution. If I keep my fingers on the trackpad for longer than 1 second, it switches to the mode where actions can be triggered repeatedly in quick succession.
To achieve this, I created two separate triggers and use trackpad_touch_duration to distinguish between them, with a threshold of 1 second. The <1 second trigger has no haptic feedback (as a workaround), while the >1 second trigger uses haptic feedback.
What I really like about this setup is that I don't have to lift my fingers and start a new gesture to switch from single-trigger mode to repeated-trigger mode. Also, when I change swipe direction, I'm immediately in the repeated-trigger mode as well, which feels great.
The only downside is that the single-trigger action is not executed immediately. Instead, it fires only at the very end of the touch. That's because, as a workaround for the debounce issue, I had to move it to "Actions Executed on Touch Release".