Latency with "double tap to drag/drop"

Hey bettertouchtool-community!

I use BetterTouchTool with my magic mouse, basically for the “tap to click”-feature.
Now when I activate “double tap to drag/drop” I sense a quite noticeable latency even with single taps until the system reacts.
Can this latency be reduced?

Best
Juergen

Have you configured it like this?

You can change the double-tap speed in system settings:

But there will always be some delay, because to make a double-tap possible the single tap needs to wait a moment for a potentially incoming double-tap

Thanks Andreas, for the quick reply!
When “double tap to drag” is unchecked, the mouse reacts quicker, and I can still use double tap to open documents.
When it’s checked, I can additionally drag and drop with taps, but then the latency increases.
Or does bettertouchtool then need some extra time to determine if the 2nd tap is “tap und hold”?

1st screenshot, yes, exactly (also configured “right tap” similarly).
2st: funny, I don’t find these settings here (26.3.1) I just have:

That's expected, standard double-clicks don't need to wait but as soon as you want to be able to drag, things change quite a bit (because there are many states, macOS behaves differently for single clicks, double-clicks, triple-clicks, quadruple clicks, and "drags". Unfortunately this is all pretty complex but Apple trackpads behave the same way when you use tap to click. In short: the delay exists because tap-to-click + dragging creates an ambiguity between "user wants to click" and "user wants to double-click to start dragging", and BTT needs a short window to see if a second tap is coming before committing to the single-click action. On a normal mouse you don't have that issue because a drag is started by a single-click-down.

I can add some hidden settings to modify the timing values, however I have tested this a lot over the years and the current ones seem to work best.

I see.
Yeah, I can absolutely live with it as it is, but if you find the time to implement a hidden gem, I won’t say no :wink:
Thanks for the whole project!

next alpha adds two hidden setting you can play with:

  • BTTMMTapClickDelay - the delay before firing a single click (default: 0.2 seconds). This is the wait period to see if a second tap is coming.
  • BTTMMDoubleTapThreshold - the max interval between taps to count as a double-tap (default: 0.18 seconds).

You can set them like this using your terminal

 osascript -e 'tell application "BetterTouchTool" to set_user_defaults key "BTTMMTapClickDelay" numberValue 0.15'