forked from enlightenment/efl
Evas font-engine: Fixed an issue with cluster handling that broke cursor position in some cases.
SVN revision: 56460
This commit is contained in:
parent
34426d8c6e
commit
729a85e872
|
@ -145,7 +145,6 @@
|
||||||
} \
|
} \
|
||||||
prev_index = index; \
|
prev_index = index; \
|
||||||
} \
|
} \
|
||||||
/* FIXME: clean up */ \
|
|
||||||
} \
|
} \
|
||||||
while(0)
|
while(0)
|
||||||
|
|
||||||
|
|
|
@ -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) &&
|
if ((intl_props->bidi.dir == EVAS_BIDI_DIRECTION_LTR) &&
|
||||||
(EVAS_FONT_WALK_OT_POS <= (size_t) position) &&
|
(EVAS_FONT_WALK_OT_POS <= (size_t) position) &&
|
||||||
((((size_t) position) < EVAS_FONT_WALK_OT_POS_NEXT) ||
|
((((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;
|
found = 1;
|
||||||
items = EVAS_FONT_WALK_OT_POS_NEXT - EVAS_FONT_WALK_OT_POS;
|
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) &&
|
else if ((intl_props->bidi.dir == EVAS_BIDI_DIRECTION_RTL) &&
|
||||||
((EVAS_FONT_WALK_OT_POS_PREV > (size_t) position) ||
|
((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))
|
(((size_t) position) >= EVAS_FONT_WALK_OT_POS))
|
||||||
{
|
{
|
||||||
found = 1;
|
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) &&
|
if ((intl_props->bidi.dir == EVAS_BIDI_DIRECTION_LTR) &&
|
||||||
(EVAS_FONT_WALK_OT_POS <= (size_t) position) &&
|
(EVAS_FONT_WALK_OT_POS <= (size_t) position) &&
|
||||||
((((size_t) position) < EVAS_FONT_WALK_OT_POS_NEXT) ||
|
((((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;
|
found = 1;
|
||||||
items = EVAS_FONT_WALK_OT_POS_NEXT - EVAS_FONT_WALK_OT_POS;
|
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) &&
|
else if ((intl_props->bidi.dir == EVAS_BIDI_DIRECTION_RTL) &&
|
||||||
((EVAS_FONT_WALK_OT_POS_PREV > (size_t) position) ||
|
((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))
|
(((size_t) position) >= EVAS_FONT_WALK_OT_POS))
|
||||||
{
|
{
|
||||||
found = 1;
|
found = 1;
|
||||||
|
|
Loading…
Reference in New Issue