Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support keyboards with AltGr #16

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Conversation

dbratell
Copy link

@dbratell dbratell commented Oct 2, 2019

Any keys with AltGr would be shown as ctrl+alt+key, so instead of seeing
"{" when pressing AltGr+7 on a Swedish keyboard you would see
Ctrl+Alt+7, and instead of € you would see Ctrl+Alt+e.

With this patch AltGr is treated just as Shift. So when Shift is shown,
so is AltGr, and the other way around.

Since there is no single virtual key representing AltGr, this changes
the representation of modifiers from a string and sometimes a vk,
to a struct of 5 bools. This makes the code simpler and should be
as efficient.

The patch also changes some constants from magical numerical values
to VK_FOO constants.

Otherwise the patch tries to stay as close as possible to the existing
code style for good and bad. It will us fixed size buffers for instance.

Any keys with AltGr would be shown as ctrl+alt+key, so instead of seeing
"{" when pressing AltGr+7 on a Swedish keyboard you would see
Ctrl+Alt+7, and instead of € you would see Ctrl+Alt+e.

With this patch AltGr is treated just as Shift. So when Shift is shown,
so is AltGr, and the other way around.

Since there is no single virtual key representing AltGr, this changes
the representation of modifiers from a string and sometimes a vk,
to a struct of 5 bools. This makes the code simpler and should be
as efficient.

The patch also changes some constants from magical numerical values
to VK_FOO constants.

Otherwise the patch tries to stay as close as possible to the existing
code style for good and bad. It will us fixed size buffers for instance.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant