Fix highlighting in text memos (GTK)
authorH.G.Muller <hgm@hgm-xboard.(none)>
Thu, 28 Jan 2016 08:51:37 +0000 (09:51 +0100)
committerH.G.Muller <hgm@hgm-xboard.(none)>
Thu, 28 Jan 2016 08:51:37 +0000 (09:51 +0100)
The yellow highlighting as used in Engine Output to indicate the
walked PV, or in Move History to show the current move, was only
working the first time that text would be highlighted. Apparently
to unhighlight it the yellow tag had to be removed, rather than a
white tag applied.

gtk/xoptions.c

index 79bce4b..4a93b90 100644 (file)
@@ -530,11 +530,11 @@ HighlightText (Option *opt, int from, int to, Boolean highlight)
     if(!(opt->min & INIT)) {
        opt->min |= INIT; // each memo its own init flag!
        gtk_text_buffer_create_tag(opt->handle, "highlight", "background", "yellow", NULL);
-       gtk_text_buffer_create_tag(opt->handle, "normal", "background", "white", NULL);
     }
     gtk_text_buffer_get_iter_at_offset(opt->handle, &start, from);
     gtk_text_buffer_get_iter_at_offset(opt->handle, &end, to);
-    gtk_text_buffer_apply_tag_by_name(opt->handle, highlight ? "highlight" : "normal", &start, &end);
+    if(highlight) gtk_text_buffer_apply_tag_by_name(opt->handle, "highlight", &start, &end);
+    else gtk_text_buffer_remove_tag_by_name(opt->handle, "highlight", &start, &end);
 }
 
 static char **names;