From 74550d2424808dfcbfcafa4690aa795e97efee84 Mon Sep 17 00:00:00 2001 From: Daiki Ueno <ueno@unixuser.org> Date: Fri, 30 Sep 2011 11:48:36 +0900 Subject: [PATCH] Fix label alignment when the text is RTL. --- eek/eek-renderer.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/eek/eek-renderer.c b/eek/eek-renderer.c index 7bad2102..053010a6 100644 --- a/eek/eek-renderer.c +++ b/eek/eek-renderer.c @@ -608,6 +608,7 @@ eek_renderer_real_render_key_label (EekRenderer *self, EekBounds bounds; const TextProperty *prop; PangoFontDescription *font; + PangoLayoutLine *line; gdouble scale; symbol = eek_key_get_symbol_with_fallback (key, 0, 0); @@ -654,6 +655,9 @@ eek_renderer_real_render_key_label (EekRenderer *self, pango_font_description_free (font); pango_layout_set_text (layout, label, -1); + line = pango_layout_get_line (layout, 0); + if (line->resolved_dir == PANGO_DIRECTION_RTL) + pango_layout_set_alignment (layout, PANGO_ALIGN_RIGHT); pango_layout_set_width (layout, PANGO_SCALE * bounds.width * priv->scale * scale); if (prop->ellipses) -- GitLab