diff --git a/src/video/x11/SDL_x11events.c b/src/video/x11/SDL_x11events.c index f0f6d685d..ab2b0df1f 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); + } } }