fix: patch uiohook-napi to use listen-only CGEventTap on macOS

Fixes system-wide freeze when Accessibility permissions are enabled.
Two changes to libuiohook/src/darwin/input_hook.c via pnpm patch:
- Switch kCGEventTapOptionDefault to kCGEventTapOptionListenOnly
- Strip mouse move/drag/scroll/left/right-click events from mask

Listen-only taps are passive observers that cannot freeze the system.
Keeps keyboard events and mouse buttons 3+ for PTT side buttons.
Windows and Linux native paths are completely untouched.
This commit is contained in:
Jannis Braun
2026-03-22 23:40:37 +01:00
parent 313ff4ef87
commit 46126d671f
3 changed files with 116 additions and 3 deletions
+9 -1
View File
@@ -15,7 +15,15 @@
"build:desktop": "pnpm --filter @backspace/desktop build"
},
"pnpm": {
"onlyBuiltDependencies": ["better-sqlite3", "esbuild", "electron", "sharp"]
"onlyBuiltDependencies": [
"better-sqlite3",
"esbuild",
"electron",
"sharp"
],
"patchedDependencies": {
"uiohook-napi@1.5.5": "patches/uiohook-napi@1.5.5.patch"
}
},
"engines": {
"node": ">=20.0.0",