summaryrefslogtreecommitdiff
path: root/pango/pango-renderer.c
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@gnome.org>2007-08-15 19:23:54 +0000
committerBehdad Esfahbod <behdad@src.gnome.org>2007-08-15 19:23:54 +0000
commitf90163fecc2f1e10ea1c800c2ac3045b485398bd (patch)
tree4c0f0455ee3eabf4b09de5142a15fa1c194c9838 /pango/pango-renderer.c
parentcb816fe9b636b832e8383acc03654f92edb583d3 (diff)
downloadpango-f90163fecc2f1e10ea1c800c2ac3045b485398bd.tar.gz
Bug 467056 – Shape attribute handling is not consistent
2007-08-15 Behdad Esfahbod <behdad@gnome.org> Bug 467056 – Shape attribute handling is not consistent * pango/pango-impl-utils.h: * pango/pango-layout.c (pango_layout_line_index_to_x), (shape_run), (pango_layout_line_x_to_index), (pango_layout_run_get_extents), (update_run): * pango/pango-renderer.c (pango_renderer_draw_layout_line): * pango/pango-utils.c (_pango_shape_shape), (_pango_shape_get_extents): Fix handling of extents for shaped runs. Previsouly a shaped run with more than one character was not correctly positioned. svn path=/trunk/; revision=2401
Diffstat (limited to 'pango/pango-renderer.c')
-rw-r--r--pango/pango-renderer.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/pango/pango-renderer.c b/pango/pango-renderer.c
index 9dc1198f..6d134118 100644
--- a/pango/pango-renderer.c
+++ b/pango/pango-renderer.c
@@ -427,6 +427,7 @@ draw_shaped_glyphs (PangoRenderer *renderer,
}
}
+
/**
* pango_renderer_draw_layout_line:
* @renderer: a #PangoRenderer
@@ -490,11 +491,14 @@ pango_renderer_draw_layout_line (PangoRenderer *renderer,
if (shape_attr)
{
- ink_rect = shape_attr->ink_rect;
- logical_rect = shape_attr->logical_rect;
ink = &ink_rect;
logical = &logical_rect;
- glyph_string_width = shape_attr->logical_rect.width;
+ _pango_shape_get_extents (run->glyphs->num_glyphs,
+ &shape_attr->ink_rect,
+ &shape_attr->logical_rect,
+ ink,
+ logical);
+ glyph_string_width = logical->width;
}
else
{