소스 검색

Fix X11 modifier keys.

bruvzg 5 년 전
부모
커밋
2a76fba1f6
1개의 변경된 파일2개의 추가작업 그리고 3개의 파일을 삭제
  1. 2 3
      platform/x11/os_x11.cpp

+ 2 - 3
platform/x11/os_x11.cpp

@@ -1767,7 +1767,8 @@ void OS_X11::handle_key_event(XKeyEvent *p_event, bool p_echo) {
 	XKeyEvent xkeyevent_no_mod = *xkeyevent;
 	xkeyevent_no_mod.state &= ~ShiftMask;
 	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.
 
@@ -1777,8 +1778,6 @@ void OS_X11::handle_key_event(XKeyEvent *p_event, bool p_echo) {
 		xmblen = 8;
 	}
 
-	keysym_unicode = keysym_keycode;
-
 	if (xkeyevent->type == KeyPress && xic) {
 
 		Status status;