KeyMapper
KeyMapper copied to clipboard
Redo entire key map detection algorithm
Developer TODO (don't remove)
- [ ] create new branch. put issue number at start of name
- [ ] keep old algorithm as a compatibility feature
- [ ] update documentation
- [ ] squash and merge
- [ ] delete branch
Requirements
Flow charts: key-mapper-service.zip
- [ ] treat equivalent sequence triggers like double press triggers
- [ ] single press and long press triggers should still work even if you have a triple-press sequence triggers (in a similar way to having a short, long and double press on a trigger)
- [ ] if multiple modifier keys are used in a key map then they can be pressed in any order
- [ ] if fixing #940 make sure duplicate event trees aren't created if they already have another key map that has a trigger in the other order
What's happening??
Haha, it's currently awful, it's just bug fixes patched on top of bug fixes, and loads of current bugs are super hard to fix with the current state it is in. And many feature requests are pretty impossible rn.
Does this mean we'll have to do some intensive testing? :D
Yes! I also have an extensive automated test suite that should ensure it behaves (mostly) correctly. I will keep the old one just for compatibility if people have issues.
Is there any chance that the daily builds can be posted in the discord too, or are the alphas already daily?
Is there any chance that the daily builds can be posted in the discord too, or are the alphas already daily?
The alpha builds are automatically built whenever I push any code changes to the repository.
Edit: never mind. Below I accidentally described #804 I know development if the app has stopped, but I have a request related to the second point if someone (possibly myself) works on the key detection. I'd like to have an option in the form of a detection delay before the action(s) occurs. For example, I'd like to be able to have triple button press sequences (and even quadruple) that won't trigger my double button press sequences. I understand this will mean reduced speed in that the app will need more time to decide which keymap to execute, but will come with increased accuracy (by not triggering a double press when a triple press happens). Not everyone will want this so it would a good option to have.