diff --git a/Source/Core/InputCommon/Src/ControllerInterface/Xlib/Xlib.cpp b/Source/Core/InputCommon/Src/ControllerInterface/Xlib/Xlib.cpp index 1c9e9997ad..5ff85adf32 100644 --- a/Source/Core/InputCommon/Src/ControllerInterface/Xlib/Xlib.cpp +++ b/Source/Core/InputCommon/Src/ControllerInterface/Xlib/Xlib.cpp @@ -99,6 +99,10 @@ Keyboard::Key::Key(Display* const display, KeyCode keycode) i++; } while (keysym == NoSymbol && i < 8); + + // Convert to upper case for the keyname + if (keysym >= 97 && keysym <= 122) + keysym = keysym - 32; // 0x0110ffff is the top of the unicode character range according to keysymdef.h // although it is probably more than we need.