Summary
Thread actual device identity on Windows and macOS, replacing the current hardcoded device_index: 0.
Builds on the device identity pipeline from PR #5.
What this includes
Windows (Interception driver)
- The Interception driver already distinguishes devices —
interception.rs has device info available
- Thread the interception device handle through to
KeyEvent.device_index
- Map interception devices to stable indices
macOS (DriverKit)
- Investigate whether the Karabiner DriverKit virtual keyboard can report source device identity
- If IOHIDManager is used, it can distinguish devices — thread HID device reference to device index
- May require changes to
karabiner-driverkit crate
Why
PR #5 only enables device identity on Linux. For KeyPath to use per-device features cross-platform, Windows and macOS need to thread real device identity.
Dependencies
Summary
Thread actual device identity on Windows and macOS, replacing the current hardcoded
device_index: 0.Builds on the device identity pipeline from PR #5.
What this includes
Windows (Interception driver)
interception.rshas device info availableKeyEvent.device_indexmacOS (DriverKit)
karabiner-driverkitcrateWhy
PR #5 only enables device identity on Linux. For KeyPath to use per-device features cross-platform, Windows and macOS need to thread real device identity.
Dependencies