- int chars_written = flush_text_buffer(win);
- event_throw(CHIMARA_GLK(gtk_widget_get_ancestor(win->widget, CHIMARA_TYPE_GLK)), evtype_LineInput, win, chars_written, 0);
-
- ChimaraGlkPrivate *glk_data = g_private_get(glk_data_key);
- if(glk_data->unregister_arr)
- {
- if(win->input_request_type == INPUT_REQUEST_LINE_UNICODE)
- (*glk_data->unregister_arr)(win->line_input_buffer_unicode, win->line_input_buffer_max_len, "&+#!Iu", win->buffer_rock);
- else
- (*glk_data->unregister_arr)(win->line_input_buffer, win->line_input_buffer_max_len, "&+#!Cn", win->buffer_rock);
- }
+ int chars_written = finish_text_buffer_line_input(win, TRUE);
+ ChimaraGlk *glk = CHIMARA_GLK(gtk_widget_get_ancestor(win->widget, CHIMARA_TYPE_GLK));
+ event_throw(glk, evtype_LineInput, win, chars_written, 0);