Skip to content

Commit

Permalink
Fixed text input events with UIM
Browse files Browse the repository at this point in the history
Alex Baines

I realized overnight that my patch probably broke text input events with UIM, and I confirmed that it does. Can't believe I overlooked that... I've been making stupid mistakes in these patches recently, sorry.

Anyway, *this* one seems to fix it properly. Knowing my luck it probably breaks something else.
  • Loading branch information
slouken committed Nov 2, 2016
1 parent acae3eb commit baadd54
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions src/video/x11/SDL_x11events.c
Expand Up @@ -585,9 +585,6 @@ X11_DispatchEvent(_THIS)
#endif
}
return;
} else if (orig_keycode == videodata->filter_code && xevent.xkey.time == videodata->filter_time) {
/* This is a duplicate event, resent by an IME - skip it. */
return;
}

/* Send a SDL_SYSWMEVENT if the application wants them */
Expand Down Expand Up @@ -802,7 +799,10 @@ X11_DispatchEvent(_THIS)
}
#endif
if (!handled_by_ime) {
SDL_SendKeyboardKey(SDL_PRESSED, videodata->key_layout[keycode]);
/* Don't send the key if it looks like a duplicate of a filtered key sent by an IME */
if (xevent.xkey.keycode != videodata->filter_code || xevent.xkey.time != videodata->filter_time) {
SDL_SendKeyboardKey(SDL_PRESSED, videodata->key_layout[keycode]);
}
if(*text) {
SDL_SendKeyboardText(text);
}
Expand Down

0 comments on commit baadd54

Please sign in to comment.