Revert "Evas textblock: Use the last item's width, not advance, when calculating line's width and wrapping."

There were issues introduced with this commit, should fix it in the
future.

This reverts commit 53cf2da5684871c77b7efc6406de98d5fb681914.

SVN revision: 56536
This commit is contained in:
Tom Hacohen 2011-01-30 10:45:11 +00:00
parent ed75dc7082
commit df727d6772
1 changed files with 5 additions and 7 deletions

View File

@ -2173,7 +2173,7 @@ _layout_line_order(Ctxt *c __UNUSED__, Evas_Object_Textblock_Line *line)
static void
_layout_line_finalize(Ctxt *c, Evas_Object_Textblock_Format *fmt)
{
Evas_Object_Textblock_Item *it, *last_it = NULL;
Evas_Object_Textblock_Item *it;
Eina_Bool no_text = EINA_TRUE;
_layout_line_order(c, c->ln);
@ -2191,9 +2191,9 @@ _layout_line_finalize(Ctxt *c, Evas_Object_Textblock_Format *fmt)
if (no_text)
_layout_format_ascent_descent_adjust(c, fmt);
c->ln->w = 0;
EINA_INLIST_FOREACH(c->ln->items, it)
{
int endx;
if (it->type == EVAS_TEXTBLOCK_ITEM_TEXT)
{
Evas_Object_Textblock_Text_Item *ti = _ITEM_TEXT(it);
@ -2303,11 +2303,9 @@ _layout_line_finalize(Ctxt *c, Evas_Object_Textblock_Format *fmt)
}
}
c->ln->w += it->adv;
last_it = it;
endx = it->x + it->adv;
if (endx > c->ln->w) c->ln->w = endx;
}
if (last_it)
c->ln->w += last_it->w - last_it->adv;
c->ln->y = (c->y - c->par->y) + c->o->style_pad.t;
c->ln->h = c->maxascent + c->maxdescent;
@ -3184,7 +3182,7 @@ _layout_visualize_par(Ctxt *c)
if ((c->w >= 0) &&
((it->format->wrap_word) || (it->format->wrap_char) ||
it->format->wrap_mixed) &&
((c->x + it->w) >
((c->x + it->adv) >
(c->w - c->o->style_pad.l - c->o->style_pad.r -
c->marginl - c->marginr)))
{