summaryrefslogtreecommitdiff
path: root/gtk/gtktextbuffer.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtk/gtktextbuffer.c')
-rw-r--r--gtk/gtktextbuffer.c22
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: