/* Emit the "waiting" signal to let listeners know we are ready for input */
g_signal_emit_by_name(glk_data->self, "waiting");
-
- /* Schedule a check for the pager */
- /*
- if(win->type == wintype_TextBuffer)
- g_idle_add(pager_check, win);
- */
}
/**
gtk_widget_grab_focus(win->widget);
gdk_threads_leave();
-
- /* Schedule a check for the pager */
- /*
- g_idle_add(pager_check, win);
- */
}
/**
the shift key when the user tries to type a capital letter */
if(event->is_modifier)
return FALSE; /* don't stop the event */
+
+ /* All text up to the input position is now regarded as being read by the user */
+ if(win->type == wintype_TextBuffer)
+ pager_update(win);
glui32 keycode = keyval_to_glk_keycode(event->keyval, win->input_request_type == INPUT_REQUEST_CHARACTER_UNICODE);
switch(win->type)
{
case wintype_TextBuffer:
+ /* All text up to the input position is now regarded as being read by the user */
+ pager_update(win);
/* History up/down */
if(event->keyval == GDK_Up || event->keyval == GDK_KP_Up
gtk_text_buffer_get_end_iter(buffer, &end);
g_signal_handler_block(buffer, win->insert_text_handler);
- gtk_text_buffer_insert_with_tags_by_name(buffer, &end, win->history_pos->data, -1, "input", NULL);
+ gtk_text_buffer_insert_with_tags_by_name(buffer, &end, win->history_pos->data, -1, "default", "input", NULL);
g_signal_handler_unblock(buffer, win->insert_text_handler);
return TRUE;
}
/* Insert the forced input into the window */
gtk_text_buffer_get_end_iter(buffer, &end);
gchar *text_to_insert = g_strconcat(text, "\n", NULL);
- gtk_text_buffer_insert_with_tags_by_name(buffer, &end, text_to_insert, -1, "input", NULL);
+ gtk_text_buffer_insert_with_tags_by_name(buffer, &end, text_to_insert, -1, "default", "input", NULL);
chars_written = finish_text_buffer_line_input(win, TRUE);
}
else if(win->type == wintype_TextGrid)