X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=libchimara%2Fstrio.c;fp=libchimara%2Fstrio.c;h=d440832b69f9739c372cfc7794a66d34d87c94d2;hb=207745dc22dd7d17bcb7bf26ec991cc1ac8199ed;hp=125c3c82b0d23c49445f278c284e209bb55f0c2f;hpb=daf0bacb2f258c3f77a5f8567b0713cb9635fdbb;p=projects%2Fchimara%2Fchimara.git diff --git a/libchimara/strio.c b/libchimara/strio.c index 125c3c8..d440832 100644 --- a/libchimara/strio.c +++ b/libchimara/strio.c @@ -31,6 +31,9 @@ write_utf8_to_window_buffer(winid_t win, gchar *s) void flush_window_buffer(winid_t win) { +#ifdef DEBUG_STYLES + g_printf("%s\n", win->buffer->str); +#endif if(win->type != wintype_TextBuffer && win->type != wintype_TextGrid) return; @@ -80,6 +83,10 @@ flush_window_buffer(winid_t win) gtk_text_buffer_apply_tag(buffer, win->zcolor, &start, &end); } + // GLK Program's style overrides using garglk_set_reversevideo() + if(win->zcolor_reversed != NULL) { + gtk_text_buffer_apply_tag(buffer, win->zcolor_reversed, &start, &end); + } ChimaraGlk *glk = CHIMARA_GLK(gtk_widget_get_ancestor(win->widget, CHIMARA_TYPE_GLK)); g_assert(glk); @@ -139,6 +146,11 @@ flush_window_buffer(winid_t win) if(win->zcolor != NULL) gtk_text_buffer_apply_tag(buffer, win->zcolor, &start, &insert); + // GLK Program's style overrides using garglk_set_reversevideo() + if(win->zcolor_reversed != NULL) { + gtk_text_buffer_apply_tag(buffer, win->zcolor_reversed, &start, &insert); + } + chars_left -= available_space; gtk_text_iter_forward_line(&insert); available_space = win->width; @@ -172,6 +184,11 @@ flush_window_buffer(winid_t win) // GLK Program's style overrides using garglk_set_zcolors() if(win->zcolor != NULL) gtk_text_buffer_apply_tag(buffer, win->zcolor, &start, &insert); + + // GLK Program's style overrides using garglk_set_reversevideo() + if(win->zcolor_reversed != NULL) { + gtk_text_buffer_apply_tag(buffer, win->zcolor_reversed, &start, &insert); + } } gtk_text_buffer_move_mark(buffer, cursor, &start);