perf(keyboard): profile-key hold no longer blocks the keyboard task - #1085
perf(keyboard): profile-key hold no longer blocks the keyboard task#1085jpds wants to merge 1 commit into
Conversation
Size Report
|
Holding a User key used to wait inline for up to 5s inside the single keyboard task's event loop. While it waited, mouse-acceleration repeats froze, combo/morse timeouts and macro draining stalled, and only the first intervening event was stashed. The hold now rides run()'s deadline race instead, so the task keeps servicing events while the key is down.
dc0fd39 to
5155763
Compare
|
I'm thinking about a unified approach for hold & repeat actions, what do you think? |
|
That actually sounds great, as it would simplify the work as I across the four branches I did for this eager deadline stuff. |
|
My final branch for the work is at: main...jpds:rmk:perf/combo-reset-deadline - if you want to use that as the base for a rework. |
Also port the User key to use a deadline timeout, instead of blocking the keyboard task.
Follows on from #1083.