10 Commits
Author SHA1 Message Date
Vitali GrafandClaude Opus 4.6 6c678fbcfb fix: suppress key-repeat events in pynput hotkey listener
Holding the hotkey caused dozens of on_press callbacks due to OS key-repeat.
Added a _pressed guard flag so only the first press and actual release fire.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-08 10:53:09 +02:00
Vitali Graf b94c58d628 fix: add pywin32 dep, move Controller into class, wrap keyboard in to_thread 2026-04-08 10:43:14 +02:00
Vitali Graf 670ffabb1f build: regenerate lock file with platform-conditional deps 2026-04-08 10:39:47 +02:00
Vitali GrafandClaude Sonnet 4.6 45ad54a79c refactor: use factory functions for hotkey and inserter in main
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-08 10:38:56 +02:00
Vitali GrafandClaude Sonnet 4.6 fc96e9a10c feat: add Win32 inserter backend with clipboard + Ctrl+V
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-08 10:36:38 +02:00
Vitali GrafandClaude Sonnet 4.6 b47045ab9b refactor: convert inserter module to package with wayland backend
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-08 10:34:07 +02:00
Vitali GrafandClaude Sonnet 4.6 f9402c427c feat: add pynput hotkey backend for Windows
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-08 10:31:11 +02:00
Vitali GrafandClaude Sonnet 4.6 f9bc2204c7 refactor: convert hotkey module to package with evdev backend
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-08 10:28:52 +02:00
Vitali GrafandClaude Sonnet 4.6 5c8eecbb8b feat: platform-dependent config path (APPDATA on Windows)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-08 10:26:17 +02:00
Vitali Graf 4997bc6378 build: add platform-conditional dependencies for evdev and pynput 2026-04-08 10:24:39 +02:00