From 60beaf2e3aa27e50fabc5f15df331c1aa147a659 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Fri, 17 Feb 2023 18:30:57 -0500 Subject: cairo: Apply hinting to underlines too When hint-metrics is on, make sure underline and strikethrough position and thickness are in whole pixels. This should help with disappearing mnemonics in GTK widgets. --- pango/pangocairo-fcfont.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pango/pangocairo-fcfont.c b/pango/pangocairo-fcfont.c index 4453b5ab..02eefb69 100644 --- a/pango/pangocairo-fcfont.c +++ b/pango/pangocairo-fcfont.c @@ -86,6 +86,10 @@ pango_cairo_fc_font_create_base_metrics_for_context (PangoCairoFont *cfont, metrics->ascent = PANGO_PIXELS_CEIL (metrics->ascent) * PANGO_SCALE; metrics->descent = PANGO_PIXELS_CEIL (metrics->descent) * PANGO_SCALE; metrics->height = PANGO_PIXELS_CEIL (metrics->height) * PANGO_SCALE; + metrics->underline_position = PANGO_PIXELS_CEIL (metrics->underline_position) * PANGO_SCALE; + metrics->underline_thickness = PANGO_PIXELS_CEIL (metrics->underline_thickness) * PANGO_SCALE; + metrics->strikethrough_position = PANGO_PIXELS_CEIL (metrics->strikethrough_position) * PANGO_SCALE; + metrics->strikethrough_thickness = PANGO_PIXELS_CEIL (metrics->strikethrough_thickness) * PANGO_SCALE; } return metrics; -- cgit v1.2.1