From 589c46dd65d4c8fa4b961477b13ca7f6cfd3d132 Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Fri, 1 May 2015 01:20:28 -0400 Subject: [PATCH] X11: send keypress events before textinput events. --- src/video/x11/SDL_x11events.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/video/x11/SDL_x11events.c b/src/video/x11/SDL_x11events.c index f0f6d685da94c..ab2b0df1f51c8 100644 --- a/src/video/x11/SDL_x11events.c +++ b/src/video/x11/SDL_x11events.c @@ -755,19 +755,17 @@ X11_DispatchEvent(_THIS) #else XLookupString(&xevent.xkey, text, sizeof(text), &keysym, NULL); #endif + #ifdef SDL_USE_IBUS if(SDL_GetEventState(SDL_TEXTINPUT) == SDL_ENABLE){ - if(!(handled_by_ime = SDL_IBus_ProcessKeyEvent(keysym, keycode))){ -#endif - if(*text){ - SDL_SendKeyboardText(text); - } -#ifdef SDL_USE_IBUS - } + handled_by_ime = SDL_IBus_ProcessKeyEvent(keysym, keycode); } #endif if (!handled_by_ime) { SDL_SendKeyboardKey(SDL_PRESSED, videodata->key_layout[keycode]); + if(*text) { + SDL_SendKeyboardText(text); + } } }