Browse Source

Merge pull request #66295 from bruvzg/win_fix_wm_char_keysym

[Windows] Fix WM_CHAR processing code using Unicode char instead of Virtual key.
Rémi Verschelde 2 years ago
parent
commit
39be6695d1
1 changed files with 1 additions and 1 deletions
  1. 1 1
      platform/windows/display_server_windows.cpp

+ 1 - 1
platform/windows/display_server_windows.cpp

@@ -3352,7 +3352,7 @@ void DisplayServerWindows::_process_key_events() {
 					k->set_ctrl_pressed(ke.control);
 					k->set_meta_pressed(ke.meta);
 					k->set_pressed(true);
-					k->set_keycode((Key)KeyMappingWindows::get_keysym(ke.wParam));
+					k->set_keycode((Key)KeyMappingWindows::get_keysym(MapVirtualKey((ke.lParam >> 16) & 0xFF, MAPVK_VSC_TO_VK)));
 					k->set_physical_keycode((Key)(KeyMappingWindows::get_scansym((ke.lParam >> 16) & 0xFF, ke.lParam & (1 << 24))));
 					k->set_unicode(unicode);
 					if (k->get_unicode() && gr_mem) {