[feature request] Add a `repeat` field to `key-event%` to store info about repeating key-presses
Nobody has claimed this yet.
- Dominant language
- Racket
- Stars
- 68
- Forks
- 82
- PR merge metrics
- No merged PRs in 30d
Description
Holding a key down will on most operating systems result in repeating key presses.
The OS-level key events will mark the first event as "non-repeating" and the following as "repeating".
Currently this information is not available in the Racket level (that is, in key-event%).
More information:
https://developer.apple.com/documentation/appkit/nsevent/1528049-arepeat?changes=_10&language=objc
https://docs.microsoft.com/en-us/windows/console/key-event-record-str
https://linux.die.net/man/3/xkbsetdetectableautorepeat
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read the key-event% API and the linked Apple, Windows, and Linux event documentation first. Trace how OS-level key events become Racket key-event% values; done means a repeat indicator is exposed consistently across those platforms and covered by the project's relevant tests. The issue names no source files or tests, so locating those entry points is part of the work.
Written by the indexing model from the issue text.
Assessment
- Domain
- desktop, operating-systems
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100