XIM doesn't work because some events are not filtered with XFilterEvent

This commit is contained in:
mattn 2015-03-21 23:57:51 +09:00
parent 5268914b3f
commit d48fc47dc9

View File

@ -913,12 +913,6 @@ static void processEvent(XEvent *event)
Status status; Status status;
wchar_t buffer[16]; wchar_t buffer[16];
if (XFilterEvent(event, None))
{
// Discard intermediary (dead key) events for character input
break;
}
const int count = XwcLookupString(window->x11.ic, const int count = XwcLookupString(window->x11.ic,
&event->xkey, &event->xkey,
buffer, sizeof(buffer), buffer, sizeof(buffer),
@ -1749,6 +1743,8 @@ void _glfwPlatformPollEvents(void)
{ {
XEvent event; XEvent event;
XNextEvent(_glfw.x11.display, &event); XNextEvent(_glfw.x11.display, &event);
if (XFilterEvent(event, None))
continue;
processEvent(&event); processEvent(&event);
} }