summaryrefslogtreecommitdiff
path: root/tests/rendernode-create-tests.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/rendernode-create-tests.c')
-rw-r--r--tests/rendernode-create-tests.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/tests/rendernode-create-tests.c b/tests/rendernode-create-tests.c
index 2bd7a3876b..8b58fe9376 100644
--- a/tests/rendernode-create-tests.c
+++ b/tests/rendernode-create-tests.c
@@ -399,7 +399,8 @@ text (guint n)
PangoLayoutIter *iter;
PangoLayoutRun *run;
GdkRGBA color;
- int x, y, width, height;
+ PangoRectangle ext;
+ int x, y;
pango_layout_set_text (layout, words[g_random_int_range (0, n_words)], -1);
if (g_random_boolean ())
@@ -413,9 +414,11 @@ text (guint n)
font = pango_context_load_font (context, desc);
pango_layout_set_font_description (layout, desc);
- pango_layout_get_pixel_size (layout, &width, &height);
- x = width >= 1000 ? 0 : g_random_int_range (0, 1000 - width);
- y = height >= 1000 ? 0 : g_random_int_range (0, 1000 - height);
+ pango_lines_get_extents (pango_layout_get_lines (layout), NULL, &ext);
+ pango_extents_to_pixels (&ext, NULL);
+
+ x = ext.width >= 1000 ? 0 : g_random_int_range (0, 1000 - ext.width);
+ y = ext.height >= 1000 ? 0 : g_random_int_range (0, 1000 - ext.height);
hsv_to_rgb (&color, g_random_double (), g_random_double_range (0.5, 1.0), g_random_double_range (0.15, 0.75));
iter = pango_layout_get_iter (layout);
@@ -424,9 +427,11 @@ text (guint n)
run = pango_layout_iter_get_run (iter);
if (run != NULL)
{
+ PangoGlyphString *glyphs;
GskRenderNode *node;
-
- node = gsk_text_node_new (font, run->glyphs, &color, &GRAPHENE_POINT_INIT (x, y));
+
+ glyphs = pango_layout_run_get_glyphs (run);
+ node = gsk_text_node_new (font, glyphs, &color, &GRAPHENE_POINT_INIT (x, y));
if (node)
g_ptr_array_add (nodes, node);
}