summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYuri Sizov <11782833+YuriSizov@users.noreply.github.com>2023-03-30 18:24:33 +0200
committerGitHub <noreply@github.com>2023-03-30 18:24:33 +0200
commit80528c17c7df7194c772b61aaffdf7c204b353b8 (patch)
tree73a6bf23c1cf3aa67d1e40249a33f7ba81b8bdb0
parent499493340d1bbb604a1c25371e759bbe58c4fbd8 (diff)
parentd4b746626659d6e29c54da57b822735d15ab14c0 (diff)
downloadredot-engine-80528c17c7df7194c772b61aaffdf7c204b353b8.tar.gz
Merge pull request #75461 from Sabrehull/keycode-fix
[X11] Fix layout bug in `keyboard_get_keycode_from_physical`
-rw-r--r--platform/linuxbsd/x11/display_server_x11.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/platform/linuxbsd/x11/display_server_x11.cpp b/platform/linuxbsd/x11/display_server_x11.cpp
index 8343370533..4c5d9552e6 100644
--- a/platform/linuxbsd/x11/display_server_x11.cpp
+++ b/platform/linuxbsd/x11/display_server_x11.cpp
@@ -2848,7 +2848,7 @@ Key DisplayServerX11::keyboard_get_keycode_from_physical(Key p_keycode) const {
Key modifiers = p_keycode & KeyModifierMask::MODIFIER_MASK;
Key keycode_no_mod = p_keycode & KeyModifierMask::CODE_MASK;
unsigned int xkeycode = KeyMappingX11::get_xlibcode(keycode_no_mod);
- KeySym xkeysym = XkbKeycodeToKeysym(x11_display, xkeycode, 0, 0);
+ KeySym xkeysym = XkbKeycodeToKeysym(x11_display, xkeycode, keyboard_get_current_layout(), 0);
if (is_ascii_lower_case(xkeysym)) {
xkeysym -= ('a' - 'A');
}