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

System lang switching breaks Godot Input #49771

Open
olehpatrushev opened this issue Jun 20, 2021 · 9 comments
Open

System lang switching breaks Godot Input #49771

olehpatrushev opened this issue Jun 20, 2021 · 9 comments

Comments

@olehpatrushev
Copy link

olehpatrushev commented Jun 20, 2021

Godot version

3.3.stable

System information

Ubuntu 20.04

Issue description

According to the title, when I change system lang to some others from English (in my case Russian) on Ubuntu, I find that Godot shortcuts won't working in editor (even Ctrl+V), and runtime Input system also brakes (even W not working).

Steps to reproduce

Change system language to some other (maybe cyrillic on Ubuntu) and try to manipulate with Godot.

Minimal reproduction project

No response

@olehpatrushev olehpatrushev changed the title Land switching breaks Godot Input System lang switching breaks Godot Input Jun 20, 2021
@Calinou
Copy link
Member

Calinou commented Jun 21, 2021

Can you reproduce this if you exit and restart Godot with the keyboard layout in question?

Godot does not use physical input keys, which means you need to press the key for your current keyboard layout for shortcuts to work. Optional physical keys were added to #18020, but they're not used anywhere in the editor yet.

@olehpatrushev
Copy link
Author

Can you reproduce this if you exit and restart Godot with the keyboard layout in question?

Godot does not use physical input keys, which means you need to press the key for your current keyboard layout for shortcuts to work. Optional physical keys were added to #18020, but they're not used anywhere in the editor yet.

Yes. It is reproduced.

@Calinou
Copy link
Member

Calinou commented Jun 21, 2021

@olehpatrushev After switching keyboard layouts, do you press V as it appears on your original Russian keyboard layout, or V as it appears on a QWERTY layout?

@olehpatrushev
Copy link
Author

@Calinou yes I do the same steps (shortcuts) as in other programs, such as Google Chrome, and it doesn't work in Godot, but in Google Chrome works.

@Zireael07
Copy link
Contributor

You didn't answer the question - do you press the V key on the keyboard, or some other key?

@olehpatrushev
Copy link
Author

olehpatrushev commented Jun 21, 2021

@Zireael07 there is no V on russian keyboard layout

@Zireael07
Copy link
Contributor

Do you press the key on the keyboard that is where a V would be in QWERTY, or what? Because if there's no V in Russian layout, that begs the question of how do Ctrl+V work in other apps?

@olehpatrushev
Copy link
Author

@Zireael07 feel free to type any characters on keyboard in non-English layout, they would not work in Godot, I assure you.

@akien-mga
Copy link
Member

AFAIK this is not a bug, just the normal behavior with scancodes. When the keyboard layout is remapped, the scancodes sent by specific physical keys are also remapped. Since there's no "V" key on a Russian keyboard layout, Ctrl+V can't match.

This could be solved in 3.4 with the new support for physical scancodes, which allow mapping keys to their physical position on a theoretical QWERTY keyboard layout, ignoring the user keyboard mapping.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants