-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Shift+Arrow key events not detected in osx backend #9835
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
Comments
I delved into the key handling recently, I'll have a look at see if I can do anything |
Awesome! Let me know if I can be of any help! |
I've tracked it back to the OSX c code, which converts whatever the key press event is to a char here: Line 2622 in 813d842
Unfortunately I don't really do C, so someone else is going to have to figure it out from here |
And I'm guessing this is the function that needs to be modified somehow: Lines 2558 to 2617 in 813d842
|
This looks promising. I wonder if it as easy as adding
in line 2608... but I guess this needs to be restricted to only a subset of keys such as the arrow keys. |
Adding that for me and rebuilding does get me shift events, but as you expected, shift + g produces "shift+G". It looks like the Qt backend has a list of special keys it looks for first, then it assumes characters and removes the shift modifier. |
Closing since #9836 was merged. |
Consider the following example code:
Now when I run this code and press Shift+Left Arrow, the
qt5
backend correctly detects this event asshift+left
. However, theosx
backend (which AFAIK is the default backend on macOS) doesn't register the shift key at all, I only getleft
. Is it possible to fix this somehow?The text was updated successfully, but these errors were encountered: