Merge branch 'glyph-clipping-fixes' into 'master'

gtk-demo: Improve ink extents rendering

See merge request GNOME/gtk!3969
This commit is contained in:
Matthias Clasen 2021-09-17 23:31:41 +00:00
commit a1adaac69b
2 changed files with 9 additions and 6 deletions

View File

@ -37,7 +37,7 @@ update_image (void)
const char *text; const char *text;
PangoFontDescription *desc; PangoFontDescription *desc;
PangoLayout *layout; PangoLayout *layout;
PangoRectangle ink, pink, logical; PangoRectangle ink, logical;
int baseline; int baseline;
cairo_surface_t *surface; cairo_surface_t *surface;
cairo_t *cr; cairo_t *cr;
@ -94,7 +94,6 @@ update_image (void)
pango_layout_set_font_description (layout, desc); pango_layout_set_font_description (layout, desc);
pango_layout_set_text (layout, text, -1); pango_layout_set_text (layout, text, -1);
pango_layout_get_extents (layout, &ink, &logical); pango_layout_get_extents (layout, &ink, &logical);
pink = ink;
baseline = pango_layout_get_baseline (layout); baseline = pango_layout_get_baseline (layout);
pango_extents_to_pixels (&ink, NULL); pango_extents_to_pixels (&ink, NULL);
@ -165,10 +164,10 @@ update_image (void)
cairo_stroke (cr); cairo_stroke (cr);
cairo_set_source_rgb (cr, 1, 0, 0); cairo_set_source_rgb (cr, 1, 0, 0);
cairo_rectangle (cr, cairo_rectangle (cr,
scale * (10 + pango_units_to_double (pink.x)) + 0.5, scale * (10 + ink.x) - 0.5,
scale * (10 + pango_units_to_double (pink.y)) + 0.5, scale * (10 + ink.y) - 0.5,
scale * pango_units_to_double (pink.width) - 1, scale * ink.width + 1,
scale * pango_units_to_double (pink.height) - 1); scale * ink.height + 1);
cairo_stroke (cr); cairo_stroke (cr);
} }

View File

@ -177,6 +177,8 @@
<child> <child>
<object class="GtkButton" id="up_button"> <object class="GtkButton" id="up_button">
<property name="icon-name">list-add-symbolic</property> <property name="icon-name">list-add-symbolic</property>
<property name="halign">center</property>
<property name="valign">center</property>
<style> <style>
<class name="circular"/> <class name="circular"/>
</style> </style>
@ -200,6 +202,8 @@
<child> <child>
<object class="GtkButton" id="down_button"> <object class="GtkButton" id="down_button">
<property name="icon-name">list-remove-symbolic</property> <property name="icon-name">list-remove-symbolic</property>
<property name="halign">center</property>
<property name="valign">center</property>
<style> <style>
<class name="circular"/> <class name="circular"/>
</style> </style>