forked from enlightenment/efl
fix behavior of edje entry to match other toolkit entires
this fixes T1229 in the part about the cursor behavior when you press updown/left/right when a selection is there. @fix
This commit is contained in:
parent
7bbdb68811
commit
c3f0a0c59d
|
@ -1388,7 +1388,14 @@ _edje_key_down_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
|
|||
_sel_start(en->cursor, rp->object, en);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
}
|
||||
else _sel_clear(ed, en->cursor, rp->object, en);
|
||||
else
|
||||
{
|
||||
if (evas_textblock_cursor_compare(en->sel_start, en->sel_end) < 0)
|
||||
evas_textblock_cursor_copy(en->sel_start, en->cursor);
|
||||
else
|
||||
evas_textblock_cursor_copy(en->sel_end, en->cursor);
|
||||
_sel_clear(ed, en->cursor, rp->object, en);
|
||||
}
|
||||
}
|
||||
if (_curs_up(en->cursor, rp->object, en))
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
|
@ -1417,7 +1424,14 @@ _edje_key_down_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
|
|||
_sel_start(en->cursor, rp->object, en);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
}
|
||||
else _sel_clear(ed, en->cursor, rp->object, en);
|
||||
else
|
||||
{
|
||||
if (evas_textblock_cursor_compare(en->sel_start, en->sel_end) < 0)
|
||||
evas_textblock_cursor_copy(en->sel_end, en->cursor);
|
||||
else
|
||||
evas_textblock_cursor_copy(en->sel_start, en->cursor);
|
||||
_sel_clear(ed, en->cursor, rp->object, en);
|
||||
}
|
||||
}
|
||||
if (_curs_down(en->cursor, rp->object, en))
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
|
@ -1444,7 +1458,14 @@ _edje_key_down_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
|
|||
_sel_start(en->cursor, rp->object, en);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
}
|
||||
else _sel_clear(ed, en->cursor, rp->object, en);
|
||||
else
|
||||
{
|
||||
if (evas_textblock_cursor_compare(en->sel_start, en->sel_end) < 0)
|
||||
evas_textblock_cursor_copy(en->sel_start, en->cursor);
|
||||
else
|
||||
evas_textblock_cursor_copy(en->sel_end, en->cursor);
|
||||
_sel_clear(ed, en->cursor, rp->object, en);
|
||||
}
|
||||
}
|
||||
if (evas_textblock_cursor_char_prev(en->cursor))
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
|
@ -1472,7 +1493,14 @@ _edje_key_down_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
|
|||
_sel_start(en->cursor, rp->object, en);
|
||||
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
|
||||
}
|
||||
else _sel_clear(ed, en->cursor, rp->object, en);
|
||||
else
|
||||
{
|
||||
if (evas_textblock_cursor_compare(en->sel_start, en->sel_end) < 0)
|
||||
evas_textblock_cursor_copy(en->sel_end, en->cursor);
|
||||
else
|
||||
evas_textblock_cursor_copy(en->sel_start, en->cursor);
|
||||
_sel_clear(ed, en->cursor, rp->object, en);
|
||||
}
|
||||
}
|
||||
/* If control is pressed, go to the end of the word */
|
||||
if (control) evas_textblock_cursor_word_end(en->cursor);
|
||||
|
|
Loading…
Reference in New Issue