[gtk/new-text-attributes] Make overline support conditional
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/new-text-attributes] Make overline support conditional
- Date: Sat, 21 Mar 2020 04:45:49 +0000 (UTC)
commit 2df55aef2a9df83b7cac63cf8d5daa2fa6229307
Author: Matthias Clasen <mclasen redhat com>
Date: Sat Mar 21 00:44:04 2020 -0400
Make overline support conditional
The ci image does not have Pango 1.45, so for the
time being, make the overline support conditional
on Pango being new enough.
gtk/gtktextbuffer.c | 10 ++++++----
gtk/gtktextlayout.c | 14 ++++++++------
2 files changed, 14 insertions(+), 10 deletions(-)
---
diff --git a/gtk/gtktextbuffer.c b/gtk/gtktextbuffer.c
index 610d79da10..7dd04c5e24 100644
--- a/gtk/gtktextbuffer.c
+++ b/gtk/gtktextbuffer.c
@@ -4758,10 +4758,6 @@ get_tag_for_attributes (PangoAttrIterator *iter)
if (attr)
g_object_set (tag, "underline", ((PangoAttrInt*)attr)->value, NULL);
- attr = pango_attr_iterator_get (iter, PANGO_ATTR_OVERLINE);
- if (attr)
- g_object_set (tag, "overline", ((PangoAttrInt*)attr)->value, NULL);
-
attr = pango_attr_iterator_get (iter, PANGO_ATTR_UNDERLINE_COLOR);
if (attr)
{
@@ -4776,6 +4772,11 @@ get_tag_for_attributes (PangoAttrIterator *iter)
g_object_set (tag, "underline-rgba", &rgba, NULL);
}
+#if PANGO_VERSION_CHECK(1,45,0)
+ attr = pango_attr_iterator_get (iter, PANGO_ATTR_OVERLINE);
+ if (attr)
+ g_object_set (tag, "overline", ((PangoAttrInt*)attr)->value, NULL);
+
attr = pango_attr_iterator_get (iter, PANGO_ATTR_OVERLINE_COLOR);
if (attr)
{
@@ -4789,6 +4790,7 @@ get_tag_for_attributes (PangoAttrIterator *iter)
rgba.alpha = 1.;
g_object_set (tag, "overline-rgba", &rgba, NULL);
}
+#endif
attr = pango_attr_iterator_get (iter, PANGO_ATTR_STRIKETHROUGH);
if (attr)
diff --git a/gtk/gtktextlayout.c b/gtk/gtktextlayout.c
index 70028c77d9..b8282f9210 100644
--- a/gtk/gtktextlayout.c
+++ b/gtk/gtktextlayout.c
@@ -1585,9 +1585,11 @@ add_generic_attrs (GtkTextLayout *layout,
pango_attr_list_insert (attrs, attr);
}
- if (appearance->overline != PANGO_OVERLINE_NONE)
+ if (appearance->underline_rgba)
{
- attr = pango_attr_overline_new (appearance->overline);
+ attr = pango_attr_underline_color_new (appearance->underline_rgba->red * 65535,
+ appearance->underline_rgba->green * 65535,
+ appearance->underline_rgba->blue * 65535);
attr->start_index = start;
attr->end_index = start + byte_count;
@@ -1595,11 +1597,10 @@ add_generic_attrs (GtkTextLayout *layout,
pango_attr_list_insert (attrs, attr);
}
- if (appearance->underline_rgba)
+#if PANGO_VERSION_CHECK(1,45,0)
+ if (appearance->overline != PANGO_OVERLINE_NONE)
{
- attr = pango_attr_underline_color_new (appearance->underline_rgba->red * 65535,
- appearance->underline_rgba->green * 65535,
- appearance->underline_rgba->blue * 65535);
+ attr = pango_attr_overline_new (appearance->overline);
attr->start_index = start;
attr->end_index = start + byte_count;
@@ -1618,6 +1619,7 @@ add_generic_attrs (GtkTextLayout *layout,
pango_attr_list_insert (attrs, attr);
}
+#endif
if (appearance->strikethrough)
{
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]