diff options
author | Matthias Clasen <mclasen@redhat.com> | 2021-09-24 12:07:17 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2021-09-24 12:07:17 -0400 |
commit | 2e49eb0c706b5124e7acc30d098564aa929296ae (patch) | |
tree | bb82d84dc174b4a04ccf42d87a846b7bfc78d74b /pango/pango-renderer.c | |
parent | d7183073b9b48becc445d73ea980018d9eada856 (diff) | |
download | pango-2e49eb0c706b5124e7acc30d098564aa929296ae.tar.gz |
Underline spaces againfix-underlined-spaces
in ada1bc9385d638e4c42, I switched to using ink rects
for horizontal underline extents, to improve the placement
of single-character underlines in the presence of
kerning. I overlooked the fact that spaces don't have ink,
so the change caused leading and trailing whitespace to
not be underlined anymore. Fix this by using the union
of ink and logical rectangles.
Fixes: #613
Diffstat (limited to 'pango/pango-renderer.c')
-rw-r--r-- | pango/pango-renderer.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/pango/pango-renderer.c b/pango/pango-renderer.c index b3b70549..311c28cd 100644 --- a/pango/pango-renderer.c +++ b/pango/pango-renderer.c @@ -362,8 +362,8 @@ add_underline (PangoRenderer *renderer, int underline_thickness = pango_font_metrics_get_underline_thickness (metrics); int underline_position = pango_font_metrics_get_underline_position (metrics); - new_rect.x = base_x + ink_rect->x; - new_rect.width = ink_rect->width; + new_rect.x = base_x + MIN (ink_rect->x, logical_rect->x); + new_rect.width = MAX (ink_rect->width, logical_rect->width); new_rect.height = underline_thickness; new_rect.y = base_y; |