Fix X11 modifier keys.
This commit is contained in:
parent
74ab8be57a
commit
2a76fba1f6
1 changed files with 2 additions and 3 deletions
|
@ -1767,7 +1767,8 @@ void OS_X11::handle_key_event(XKeyEvent *p_event, bool p_echo) {
|
||||||
XKeyEvent xkeyevent_no_mod = *xkeyevent;
|
XKeyEvent xkeyevent_no_mod = *xkeyevent;
|
||||||
xkeyevent_no_mod.state &= ~ShiftMask;
|
xkeyevent_no_mod.state &= ~ShiftMask;
|
||||||
xkeyevent_no_mod.state &= ~ControlMask;
|
xkeyevent_no_mod.state &= ~ControlMask;
|
||||||
XLookupString(&xkeyevent_no_mod, str, 256, &keysym_keycode, NULL);
|
XLookupString(xkeyevent, str, 256, &keysym_unicode, NULL);
|
||||||
|
XLookupString(&xkeyevent_no_mod, NULL, 0, &keysym_keycode, NULL);
|
||||||
|
|
||||||
// Meanwhile, XLookupString returns keysyms useful for unicode.
|
// Meanwhile, XLookupString returns keysyms useful for unicode.
|
||||||
|
|
||||||
|
@ -1777,8 +1778,6 @@ void OS_X11::handle_key_event(XKeyEvent *p_event, bool p_echo) {
|
||||||
xmblen = 8;
|
xmblen = 8;
|
||||||
}
|
}
|
||||||
|
|
||||||
keysym_unicode = keysym_keycode;
|
|
||||||
|
|
||||||
if (xkeyevent->type == KeyPress && xic) {
|
if (xkeyevent->type == KeyPress && xic) {
|
||||||
|
|
||||||
Status status;
|
Status status;
|
||||||
|
|
Loading…
Reference in a new issue