BTT 6.990 (2026102901), also on 6.954 · macOS 27.2 (26B123) · MacBook Pro (Mac15,9)
Summary
Once the AI chat window has been opened, BTT sends ⌘C to the frontmost app shortly after each double-click, and after some click-drag releases. This continues after the chat window is closed, until BTT is quit.
Apps that expose the selected text through Accessibility don't get the keystroke. Apps that don't, such as games, do. Wuthering Waves ignores the ⌘ and treats it as a plain c press, which opens an in-game menu every time I double-click.
Steps to reproduce
- Quit and relaunch BTT. Double-click inside Wuthering Waves (native Mac build,
com.kurogame.wutheringwaves.global). Nothing extra happens. - Open BTT's AI chat window. (closed or not, issue persists till BTT restart)
- Go back to the game and double-click, or click and drag.
Expected: No synthesized keystrokes. Watching the selection for the AI chat stops when the chat closes.
Actual: About 50–300 ms after each double-click (and some drag releases), BTT sends ⌘ down, c down and up, then ⌘ up. This keeps happening until BTT is quit. Reopening the AI chat brings it back immediately.
Evidence
I logged events with a listen-only CGEventTap at the session level, recording kCGEventSourceUnixProcessID and kCGEventSourceUserData for each one (BTT 6.954; target app is the game):
13.254 leftMouseDown clickState=2 src=hardware
13.353 leftMouseUp clickState=2 src=hardware
13.558 keyDown kc=8 "c" flags=0x20100000 (⌘) src=BetterTouchTool userData=5645655
13.560 flagsChanged kc=55 flags=0x100000 (⌘) src=BetterTouchTool
13.561 keyUp kc=8 "c" flags=0x20100000 src=BetterTouchTool userData=5645655
13.562 flagsChanged kc=0 flags=0x0 src=BetterTouchTool
13.562 flagsChanged kc=55 flags=0x0 src=BetterTouchTool
- Counts: in about 1.5 minutes, 9 injected ⌘C, all sent to the game. During the same capture, 3 double-clicks and 2 drags in an app that exposes its selection through Accessibility got none.
- Not my config: no trigger in my setup sends ⌘C or key code 8. I checked
get_triggersand the data store, including disabled and trashed items.