Trackpad 2 + BTT: How to simulate a "middle-click + drag"?

The industrial 3d software I am working with uses middle-click + drag in order to shift the camera in a 3d scene.

For the magic mouse I have configured the middle click. Middleclick+drag works without problem here.
However, I prefer the magic trackpad for health issues. For the trackpad I have configured three-finger-click as middle click. I can trigger an isolated middle click (see screen overlay), but keeping three fingers down + dragging seems to trigger a one-finger-track event. When I am releasing the fingers I get a middle-click event, but I can never trigger a middle-click+drag.

See attached movie demonstrating the problem.

Any ideas?

Have a look here:

(the screenshots are with the old BTT UI, but you can download the preset from the link in that post and it should work with the new UI as well)

Thanks, very much. Unfortunately, we are not quite there.

I successfully imported the json (after removing all other Trackpad config). I added visualization of the middle-up and middle-down triggers on the head-up display.

Interestingly, I get both the "middle-down" and "middle-up" triggers at the time when I release the fingers. I would have expected to get the "middle-down" already when I press the fingers down. In result, three-finger-click+drag still behaves like one-finger-click+drag.

Ah unfortunately it works a bit differently with this setup:

1.) You do a full three finger click (press & release), however keep touching the trackpad. This triggers the mouse-down event.
2.) Now as long as there are still fingers touching you can pan around
3.) As soon as no finger is touching the trackpad anymore it will send the middle mouse up event.

Hi Andreas,

ok, what you say works sometimes, but it's a little, well, unintuitive and is overall not usable for me:
a) first, but not most important, I need same practice to execute this gesture reliably, but, worse:
b) after I fully release the touch, the system is "caught" in three-fingers-drag mode, i.e. whenever I re-touch the pad and swipe finger(s), the app still receives middle-drag events (whether in the app window or not). This can be ended only with a two-finger-click in the app window ( a single-finger-click is not sufficient). If it helps, I can make another video.
c) it does not work on my 2012 MacBook Pro with builtin mechanical Trackpad. I cannot provoke the dragging state, even after having tried for some time.

Here are some more details on when events are triggered, in case it helps:
On my brand new iMac Pro with external Trackpad 2:

  • Press down three fingers (-> no HUD message)
  • Count slowly to three while keeping pressed down (-> no HUD message)
  • Release hard press, but keep touching the Trackpad (-> "mousedown" is displayed in HUD)
  • Release entire touch (->"mouseup" displayed in HUD)

On my 2012 Macbook Pro with built-in Trackpad:

  • Press down three fingers (-> "mousedown" is displayed in HUD)
  • Count slowly to three while keeping pressed down (-> no HUD message)
  • Release hard press, but keep touching the Trackpad (-> no HUD message)
  • Release entire touch (->"mouseup" displayed in HUD)

I had switched to BTT from MagicPrefs because MagicPrefs is discontinued since long. With MagicPrefs, when you configured three-finger-click as middle-click, middle-dragging would work "as naively expected". I don't know what they did under the hood, but it seems possible. I suggest to have this as a feature improvement in BTT. Do you think it is possible?

All the best, Johannes

Ah yes, sorry it only works on Magic Trackpad >= 2.

Unfortunately I don't think I can implement the way you described as this gets really complicated on the modern trackpads like the Magic Trackpad 2. (Not sure whether Magic Prefs was able to do it on these types of trackpads, but I wouldn't know how)

However I'm not sure why b) is happening for you. It seems to work really well here, I have been using it like this for years :-/ Does it in this case still show the "mouseup" HUD?

Unfortunately I don't have an old MBP with physical click trackpad, I think for these the standard "Middle Click" action might work. (So possibly make the described middle click behavior specific to the Magic Trackpad 2 so it won't interfere:

I was not aware that Magic Trackpad 2 is so different. I believe that I never used MagicPrefs with this new Trackpad.

You are right: With the mechanical built-in trackpad, the standard BTT "Middle click" works, however between click-down and starting dragging you have to release one or two fingers. Maybe I just should get an old external Trackpad 1 for my iMac Pro.

Now for problem b): It does not happen all the time but if it happens, the mouse-up is not displayed in the HUD. I played a little and could not find a pattern when it happens and when not but it's more than 50% of the attempts. The mouse-up is often missing even if I did not drag at all, just some time needs to elaspe between the click and the final touch-release. Maybe this behavior is also dependent on how the specific app interprets the native mouse events.

EDIT: Ignore last sentence. The same omitted "mouseup" happens if I perform the gesture on the empty desktop, without any app involved.

Hi Andreas,
I finally got an old (mechanical) Magic Trackpad. I have removed all the triggers in BTT and added only one: Three finger click -> Middle click.

Still unexpected.

On my 2012 Macbook Pro with built-in mechanical trackpad (same BTT config), a middle click is triggered as soon as I press down three fingers on the built-in trackpad. Nice!

On my 2020 iMac with external mechanical Trackpad, I have to do the following to trigger a middleclick:

  • Press down three fingers
  • Release one or two fingers (the remaining finger(s) must stay down)
  • Release the remaining finger(s) [Only at this point the middleclick is triggered]

Is this expected? Can this be fixed?

You can use jackzzs/FourFingersDragOnWindows

@jackzzs this is a windows app and not related to this thread at all.