diff options
Diffstat (limited to 'gtk/gtktextbuffer.c')
-rw-r--r-- | gtk/gtktextbuffer.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/gtk/gtktextbuffer.c b/gtk/gtktextbuffer.c index fd457df699..67d1e47056 100644 --- a/gtk/gtktextbuffer.c +++ b/gtk/gtktextbuffer.c @@ -4581,8 +4581,20 @@ insert_tags_for_attributes (GtkTextBuffer *buffer, gtk_text_buffer_apply_tag (buffer, tag, start, end); \ } - fg_alpha = bg_alpha = 1.; +#define VOID_ATTR(attr_name) \ + { \ + tag = gtk_text_tag_table_lookup (table, #attr_name); \ + if (!tag) \ + { \ + tag = gtk_text_tag_new (#attr_name); \ + g_object_set (tag, #attr_name, TRUE, NULL); \ + gtk_text_tag_table_add (table, tag); \ + g_object_unref (tag); \ + } \ + gtk_text_buffer_apply_tag (buffer, tag, start, end); \ + } + fg_alpha = bg_alpha = 1.; attrs = pango_attr_iterator_get_attrs (iter); for (l = attrs; l; l = l->next) { @@ -4716,6 +4728,14 @@ insert_tags_for_attributes (GtkTextBuffer *buffer, INT_ATTR (text_transform); break; + case PANGO_ATTR_WORD: + VOID_ATTR (word); + break; + + case PANGO_ATTR_SENTENCE: + VOID_ATTR (sentence); + break; + case PANGO_ATTR_SHAPE: case PANGO_ATTR_ABSOLUTE_SIZE: case PANGO_ATTR_GRAVITY: |