diff --git a/src/lib/evas/canvas/evas_object_textblock.c b/src/lib/evas/canvas/evas_object_textblock.c index ae0ab261af..57d54bc2ea 100644 --- a/src/lib/evas/canvas/evas_object_textblock.c +++ b/src/lib/evas/canvas/evas_object_textblock.c @@ -3920,7 +3920,8 @@ loop_advance: { Evas_Coord new_wmax = c->ln->w + c->marginl + c->marginr - (c->o->style_pad.l + c->o->style_pad.r); - c->par->last_fw = new_wmax; + if (new_wmax > c->par->last_fw) + c->par->last_fw = new_wmax; if (new_wmax > c->wmax) c->wmax = new_wmax; } diff --git a/src/tests/evas/evas_test_textblock.c b/src/tests/evas/evas_test_textblock.c index b3c60c9279..57cc36efbb 100644 --- a/src/tests/evas/evas_test_textblock.c +++ b/src/tests/evas/evas_test_textblock.c @@ -3865,6 +3865,16 @@ START_TEST(evas_textblock_size) evas_textblock_cursor_text_append(cur, "Y"); evas_object_textblock_size_formatted_get(tb, &w, &h); ck_assert_int_eq(bw, w); + + evas_object_textblock_text_markup_set(tb, + "XXXXXXXXXXXX
" + "X" + "YYY
"); + evas_object_textblock_size_formatted_get(tb, &bw, &bh); + evas_textblock_cursor_paragraph_last(cur); + evas_textblock_cursor_text_append(cur, "Y"); + evas_object_textblock_size_formatted_get(tb, &w, &h); + ck_assert_int_eq(bw, w); } /* FIXME: There is a lot more to be done. */