-
Notifications
You must be signed in to change notification settings - Fork 206
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
Right Alt Key ignored by inkey()/LastKey() #239
Comments
Which keyboard layout is set on those Win10 machines? US? |
US, and no other keyboards installed. |
However that's distinct behavior from right alt g where it just gives the code that g would normally give. |
I've made some tests, but not having US layout here. Both on Win7 and Win10. You can build keybord test app from the repo too: There is also a registry based solution for mapping right alt to work exactly like left one. With SharpKeys utility or without. |
Hi, |
That looks like exactly this issue. I'll see what I can do with that to resolve the issue. For my reference look at commits related to these: Thanks, I'll detail a solution here once I get one. |
After extensive debugging this is an intentional feature gtwin.c:~1700:
I assume that this is a choice for international support, but I think it would be nice to have some way to turn this logic off. I'll leave the issue open for a day or two, and if there's nothing else on it I'll come close it. |
Perhaps we could add some US/International modes into (sort of reused) HB_GTI_KBDALT with the current mode as default. With those added to hbgtinfo.ch: /* Keyboard Right-ALT US mode */
#define HB_GTI_KBDALT_INTL 0
#define HB_GTI_KBDALT_US 1 Will see if I can make a patch that is not awful, because HB_GTI_KBDALT used to have logical paramters. |
In
inKey()
(on windows 10) the right alt key is ignored.For example:
while !((nLast:=inkey(0, INKEY_KEYBOARD))==27) // escape
? nLast,lastKey()
enddo
Pressing left alt + g gives
290 290
g gives
103 103
right alt + g gives
103 103
left ctrl + g gives
7 7
Right ctrl + g gives
7 7
We've noticed on multiple machines, and the same code in xHarbour gives proper results.
The text was updated successfully, but these errors were encountered: