feat: configurable hotkey binding and ModifierKeyTracker

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-01 14:58:31 +02:00
co-authored by Claude Sonnet 5.5
parent 7eb3a156d4
commit 2c4b096850
5 changed files with 100 additions and 6 deletions
@@ -0,0 +1,18 @@
import Testing
@testable import SstCore
struct ModifierKeyTrackerTests {
@Test func emitsPressedThenReleasedOnlyOnTransitions() {
var tracker = ModifierKeyTracker()
#expect(tracker.process(isDown: false) == nil)
#expect(tracker.process(isDown: true) == .pressed)
#expect(tracker.process(isDown: true) == nil)
#expect(tracker.process(isDown: false) == .released)
#expect(tracker.process(isDown: false) == nil)
}
@Test func freshTrackerStartsReleased() {
var tracker = ModifierKeyTracker()
#expect(tracker.process(isDown: true) == .pressed)
}
}