From: tasn Date: Sun, 30 Jan 2011 10:37:12 +0000 (+0000) Subject: Evas font-engine: Fixed an issue with cluster handling that broke cursor position... X-Git-Tag: submit/trunk/20120815.174732~2070 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b3f4805612c94c412caf25f613397ea9185b14f9;p=profile%2Fivi%2Fevas.git Evas font-engine: Fixed an issue with cluster handling that broke cursor position in some cases. git-svn-id: http://svn.enlightenment.org/svn/e/trunk/evas@56460 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- diff --git a/src/lib/engines/common/evas_font_ot_walk.x b/src/lib/engines/common/evas_font_ot_walk.x index 282dc3f..496f830 100644 --- a/src/lib/engines/common/evas_font_ot_walk.x +++ b/src/lib/engines/common/evas_font_ot_walk.x @@ -145,7 +145,6 @@ } \ prev_index = index; \ } \ - /* FIXME: clean up */ \ } \ while(0) diff --git a/src/lib/engines/common/evas_font_query.c b/src/lib/engines/common/evas_font_query.c index 758a154..c513b9c 100644 --- a/src/lib/engines/common/evas_font_query.c +++ b/src/lib/engines/common/evas_font_query.c @@ -300,7 +300,7 @@ evas_common_font_query_char_coords(RGBA_Font *fn, const Eina_Unicode *in_text, c if ((intl_props->bidi.dir == EVAS_BIDI_DIRECTION_LTR) && (EVAS_FONT_WALK_OT_POS <= (size_t) position) && ((((size_t) position) < EVAS_FONT_WALK_OT_POS_NEXT) || - (EVAS_FONT_WALK_OT_POS == EVAS_FONT_WALK_OT_POS_NEXT))) + (EVAS_FONT_WALK_OT_IS_LAST))) { found = 1; items = EVAS_FONT_WALK_OT_POS_NEXT - EVAS_FONT_WALK_OT_POS; @@ -315,7 +315,7 @@ evas_common_font_query_char_coords(RGBA_Font *fn, const Eina_Unicode *in_text, c } else if ((intl_props->bidi.dir == EVAS_BIDI_DIRECTION_RTL) && ((EVAS_FONT_WALK_OT_POS_PREV > (size_t) position) || - (EVAS_FONT_WALK_OT_POS == EVAS_FONT_WALK_OT_POS_PREV)) && + (EVAS_FONT_WALK_OT_IS_LAST)) && (((size_t) position) >= EVAS_FONT_WALK_OT_POS)) { found = 1; @@ -440,7 +440,7 @@ evas_common_font_query_pen_coords(RGBA_Font *fn, const Eina_Unicode *in_text, co if ((intl_props->bidi.dir == EVAS_BIDI_DIRECTION_LTR) && (EVAS_FONT_WALK_OT_POS <= (size_t) position) && ((((size_t) position) < EVAS_FONT_WALK_OT_POS_NEXT) || - (EVAS_FONT_WALK_OT_POS == EVAS_FONT_WALK_OT_POS_NEXT))) + (EVAS_FONT_WALK_OT_IS_LAST))) { found = 1; items = EVAS_FONT_WALK_OT_POS_NEXT - EVAS_FONT_WALK_OT_POS; @@ -455,7 +455,7 @@ evas_common_font_query_pen_coords(RGBA_Font *fn, const Eina_Unicode *in_text, co } else if ((intl_props->bidi.dir == EVAS_BIDI_DIRECTION_RTL) && ((EVAS_FONT_WALK_OT_POS_PREV > (size_t) position) || - (EVAS_FONT_WALK_OT_POS == EVAS_FONT_WALK_OT_POS_PREV)) && + (EVAS_FONT_WALK_OT_IS_LAST)) && (((size_t) position) >= EVAS_FONT_WALK_OT_POS)) { found = 1;