-
Notifications
You must be signed in to change notification settings - Fork 29.5k
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
NumLock/NumPad keys stopped working in 1.11 on Linux #24064
Comments
Just finished upgrading via VSCode Version: 1.11.0 |
Have the same issue. Downgraded for the time being. |
Related #24012 |
Anyone using a keyboard layout other than U.S. English? |
Same for Ubuntu 16.04 LTS, numpad can no longer be used in place of arrow keys. |
@chrmarti I'm using UK english I put some more info in #23991 but now I don't think it's related to that:
They work fine in the developer tools |
The common factor seems to be that we are all using Linux. Regarding the keyboard layouts, I switch between US English and Bulgarian. The issue exists in both layouts. |
Hi, can you please try: Attach what the C++ node module reads
Check what values we get from Chromium
Check what Chromium does on your distribution
Read more about keybindingshttps://github.com/Microsoft/vscode/wiki/Keybindings Possible workaround
RelatedDo you use Linux on actual hardware or do you run it in a VM/connect to it via some remoting software? |
Is it possible this is the same issue as #24107? Could you please: Check what Chromium does on your distribution
|
I can't see F1 > Developer: Inspect Keyboard Mappings From the keybindings widget:
From the jsfiddle (Chrome 58):
Yes I'm using linux directly.
That works for me, thanks! |
@jspaine Thank you for the extra information. This is quite helpful. Indeed, we appear to not honor NumLock in any way, as the low-level scan code remains the same when NumLock is on or off. I need to read more (w3c) / test more about whom should honor the NumLock -- is it Chromium that should flip scan codes or should it be us doing it? |
@alexandrudima here are my values:
Actual hardware (an Asus laptop). |
@alexandrudima also, the title change you did is inaccurate. The numpad keys don't work either with NumLock on or off. It's not an issue caused by NumLock on. For the record, my NumLock is always off. |
I think it's the same. It was reported after the current one. |
Thank you @pesho The title change is for me to remember easily what this bug is about. Here is the rationale for my changing the title to include the word "NumLock" in the title: AFAIK The Numpad1 key is a key that has its behavior impacted by NumLock.
It appears we get the same scan code for Numpad1, regardless of the NumLock state. I need to read some w3c spec to figure out if this is as designed or if this is an issue with Chromium. i.e. who should handle the NumLock state, the browsers or the applications built in browsers using All in all, we do not honor anymore the NumLock state. So IMHO it is NumLock related. Hence me adding NumLock to the title. |
@alexandrudima got it, thank you for the explanation. Apologies for reverting the title, please feel free to change it back. |
Following the suggestions above, I was able to resolve this on Ubuntu 16.04 LTS by specifying the following user settings:
|
Here's some additional context, and more precise info. My laptop's keyboard looks like this: The keys within the green border are what I refer to as NumPad. They are the ones which stopped working in v1.11, no matter whether NumLock is on or off. The keys within the red border have mostly the same functions as the NumPad keys. These keys still work fine. According to the jsfiddle, the red and green keys generate different codes on Linux:
As we can see, both Chrome and Firefox return the same codes on Linux. I'll post the same info from Windows a bit later. |
...and on Windows, the jsfiddle shows the same codes in Chrome and Firefox actually, while in Edge they are
|
...seeing that the jsfiddle codes are the same in Windows browsers as in Linux, I also installed VSCode on Windows to check what it sees differently. As expected, the numpad keys still work fine on Windows in v1.11.
|
@alexandrudima so this difference between my values on Linux and Windows seems to be the most interesting part:
As mentioned, on Linux this key doesn't work anymore, on Windows it still works fine. |
Can someone please verify this works on the latest Insiders release (from today). i.e. this should now work even without the setting |
@alexandrudima confirming, it's fixed for me in the latest Insiders build (1.12.0-1491892095_amd64). |
adding |
Finally looked into why my keypad stopped working and found this thread. Confirmed as well that the fix above on the latest insiders build works for me too. Thanks!! |
Steps to Reproduce:
The default keybindings don't recognize the numpad keyboard keys anymore in v1.11 (they worked fine until 1.10). For example, the
cursorEnd
command is bound to theEnd
keybinding by default, but I need to addNumPad1
manually in order for the numpad End key to work as well.I had to add these to
keybindings.json
in order to restore the old behavior:The text was updated successfully, but these errors were encountered: