evas: give width offset when Evas tries to find ellipsis position 84/126884/1
authorYoungbok Shin <youngb.shin@samsung.com>
Mon, 10 Apr 2017 03:15:19 +0000 (12:15 +0900)
committerYoungbok Shin <youngb.shin@samsung.com>
Tue, 25 Apr 2017 08:04:47 +0000 (17:04 +0900)
commit4adde89bc6dc72843859ed7677262ad744ba9a44
treeee97f6007ecb82696990136d9ece1c4f68103fee
parentad7e2717bd5690f9906c5e1fda117616dd8ba2ab
evas: give width offset when Evas tries to find ellipsis position

Summary:
If the last item before ellipsis item has bigger width than its advance,
evas_common_font_query_last_up_to_pos() function can find wrong ellipsis position.
When Evas finds a position for non last item, Evas must care about additionally
available space for glyph's width of the given x position.

ex) the last item's glyph before ellipsis item has a tail to draw above the ellipsis item.

@fix

Test Plan:
Test case will added as comment.
(Becasue of font license problem.)

Reviewers: herdsman, raster, jpeg, woohyun

Subscribers: cedric, Blackmole

Differential Revision: https://phab.enlightenment.org/D4727

Change-Id: Ie6dbec6c3dcc98ff0919d88e40969d0551dd898e
src/lib/evas/canvas/evas_object_text.c
src/lib/evas/canvas/evas_object_textblock.c
src/lib/evas/common/evas_font.h
src/lib/evas/common/evas_font_query.c
src/lib/evas/include/evas_private.h
src/modules/evas/engines/software_generic/evas_engine.c