-
-
Notifications
You must be signed in to change notification settings - Fork 21.4k
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
[macOS] Fix keyboard shortcuts on non QWERTY keyboard layouts. #17827
[macOS] Fix keyboard shortcuts on non QWERTY keyboard layouts. #17827
Conversation
Does this pull request affect running projects? Also, will this fix be ported to other platforms as well? |
Yes this will affect projects, but macOS already had remapping for main layout (AZERTY, QWERTZ, Colemak, Dvorak and Neo), this PR just extends remapping to all possible layouts.
|
It works! I compiled that version on my computer and tested it. The editor works, both the text input and the shortcuts are correct. Nice ! For the record, my computer runs on OSX 10.13.3, the keyboard was a QWERTY which I use as a Programmer Dvorak via software remapping (in the macOS' settings). |
I have removed some of the previous comments and consolidated all testing data from different platforms in this one. Notes:
Testing process:Test code:func _unhandled_input(event):
if event is InputEventKey:
if event.pressed:
print("%d %s" % [event.scancode, OS.get_scancode_string(event.scancode)]) Steps to reproduce:
Layout: DVORAK L (Left handed)
Layout: Crimean Tatar (Turkish F)
Layout: Russian (Phonetic)
|
Thanks for the very thorough test matrix @bruvzg, this shows that it's definitely a good improvement. Let's merge and maybe open an issue about the non-working Russian layout on Linux? |
Hopefully fix shortcuts on all non QWERTY layouts, gets key mapping from os keyboard layout instead of hardcoded maps.
Fixes (on macOS) #11777
Please test this with physical non-QWERTY keyboards before merging, I have tested it with software layouts only.