Send keyboard shortcut using specific mouse macro doesn't work with Apple apps

Describe the bug

Right mouse button trigger with advanced condition left_mouse_down == 1doesn't send an action (CMD+W, CMD+F, doesn't matter) to Apple apps, like Finder, Photos, Music. It works fine with other apps, such as BTT, Arc, Things, etc. If Show HUD is selected, the HUD appears, but the action doesn't happen. Send at lowest possible system level doesn't change anything. If no advanced condition for left_mouse_down is set, it sends the shortcut fine. If the advanced condition involves any other condition, such as keyboard modifier or Window name, it works fine too.

Edit: noticed that even when BTT is off, pressing CMD+W while holding the left mouse button does not close the window.


Affected input device (e.g. MacBook Trackpad, Magic Mouse/Trackpad, Touch Bar, etc.): Logitech MX Master 3S


Device information:

  • Type of Mac: Mac Mini
  • macOS version: 27.0.1
  • BetterTouchTool version: 6.997

I currently can’t test, but I think this is a general architecture/design decision in Apple apps to block event input while the right mouse button is pressed

Seems like it! Tried adding Custom click: Left (Up) before CMD+W and it works fine. The shortcut used to work before for at least two years though.

that would have been my next suggestion :slight_smile:

However this can sometimes also cause weird behavior because the system then thinks the mouse is released while in reality it is still pressed. For most scenarios this will work fine though

Just tried with other buttons with mixed results. For example, left_mouse_down == 1 as an advanced condition and Button 4 as trigger doesn't send any shortcut for Apple apps (HUD appears for System Settings, but not for Music). Then I found that I have Button 4 triggers for Music app, but even though they are disabled, deleting them fixes this.

However, for some apps (like OpAmp), Button 3/4 as 3F Swipe (Page FWD/BWD) doesn't work, so I had to set cmd+[ and cmd+]. This breaks the action with the advanced condition, which should take priority because of specificity, if I understand correctly.