From ef25a41a76497796b680adc08ad479402ae8bd9b Mon Sep 17 00:00:00 2001 From: Tom Hacohen Date: Tue, 29 May 2012 14:43:21 +0000 Subject: [PATCH] Evas object text: Make the object size big enough to show the whole text. I.e even if advance is smaller than width, take it into account. SVN revision: 71507 --- legacy/evas/ChangeLog | 1 + legacy/evas/src/lib/canvas/evas_object_text.c | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/legacy/evas/ChangeLog b/legacy/evas/ChangeLog index c599296e8f..530dc657b8 100644 --- a/legacy/evas/ChangeLog +++ b/legacy/evas/ChangeLog @@ -768,5 +768,6 @@ 2012-05-29 Tom Hacohen (TAsn) + * Text: Fixed an issue with text object sizing. * Font: Fixed run-time italic. diff --git a/legacy/evas/src/lib/canvas/evas_object_text.c b/legacy/evas/src/lib/canvas/evas_object_text.c index 3b881c5dbf..d976fcb67d 100644 --- a/legacy/evas/src/lib/canvas/evas_object_text.c +++ b/legacy/evas/src/lib/canvas/evas_object_text.c @@ -238,7 +238,7 @@ static Evas_Coord _evas_object_text_horiz_advance_get(const Evas_Object *obj, const Evas_Object_Text *o) { - Evas_Object_Text_Item *it; + Evas_Object_Text_Item *it, *last_it = NULL; Evas_Coord adv; (void) obj; @@ -246,7 +246,11 @@ _evas_object_text_horiz_advance_get(const Evas_Object *obj, EINA_INLIST_FOREACH(EINA_INLIST_GET(o->items), it) { adv += it->adv; + last_it = it; } + + if (last_it && (last_it->w > last_it->adv)) + adv += last_it->w - last_it->adv; return adv; }