Andri Yngvason
e6b1ca8044
keyboard: Assign state to keys rather than symbols
...
The keys are pressed and released, not the symbols. This fixes tracking
of the state of a key through modifier changes. E.g. A capital 'A' may
be received from the client while the shift key is pressed, but if the
shift key is released before the 'a' key, the 'a' symbol is generated.
2020-01-25 13:19:08 +00:00
Andri Yngvason
48907682c7
keyboard: Fix modifier lookup
2020-01-20 21:15:04 +00:00
Andri Yngvason
5731ea4666
keyboard: Add bounds checking on keycode lookup
2020-01-19 12:43:48 +00:00
Andri Yngvason
e2079a7e56
keyboard: Don't send repeated events to server
...
This caused the virtual key to get "stuck" in the pressed position and
then to stop working at all. It's definitely a bug on the server side
also.
2020-01-15 20:34:56 +00:00
Andri Yngvason
476854aeaf
keyboard: Remove debug printout
2020-01-03 20:42:40 +00:00
Andri Yngvason
990e57fa89
keyboard: Improve key code lookup
...
The shift level for each symbol is now included in the lookup table, so
it's more robust for various keyboard layouts.
2020-01-03 20:03:02 +00:00
Andri Yngvason
2b00400b8a
Add option to select keyboard layout
2019-12-30 10:15:12 +00:00
Andri Yngvason
5c7f941481
keyboard: Add some acknowledgements
2019-12-25 11:45:07 +00:00
Andri Yngvason
b2bbc9ac0b
Implement keyboard backend
2019-12-25 11:05:05 +00:00