X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=libchimara%2Fevent.c;h=366c18929905840e06345a8957d422c6f9702462;hb=40c961bdf2523ebdcb6717f2537f97156fd19ab4;hp=1bcdcd9b872ab26a0f3e581d68bf2b8e87eee5c5;hpb=4a1188d59e0c9958df56cf5fb61d04ee8fb1e37c;p=rodin%2Fchimara.git diff --git a/libchimara/event.c b/libchimara/event.c index 1bcdcd9..366c189 100644 --- a/libchimara/event.c +++ b/libchimara/event.c @@ -147,11 +147,15 @@ glk_select(event_t *event) { g_return_if_fail(event != NULL); + /* Flush all window buffers */ + winid_t win; + for(win = glk_window_iterate(NULL, NULL); win != NULL; win = glk_window_iterate(win, NULL)) { + if(win->type == wintype_TextBuffer) + flush_window_buffer(win); + } + ChimaraGlkPrivate *glk_data = g_private_get(glk_data_key); - - /* Emit the "waiting" signal to let listeners know we are ready for input */ - g_signal_emit_by_name(glk_data->self, "waiting"); - + get_appropriate_event(event); /* Check for interrupt */