edje entry : Fix bug candidate word couldn't be selected with up/down key in the preedit status

SVN revision: 83882
This commit is contained in:
Jihoon Kim 2013-02-14 08:03:52 +00:00
parent fcb1fc0e98
commit 01a6147288
3 changed files with 17 additions and 3 deletions

View File

@ -5,6 +5,7 @@
2013-02-14 Jihoon Kim (jihoon)
* edje entry : fix bug not to display preedit string with PREEDIT_TYPE_NONE style
* edje entry : Fix bug candidate word couldn't be selected with up/down key in the preedit status
2013-02-11 Stefan Schmidt

1
NEWS
View File

@ -165,3 +165,4 @@ Fixes:
* Evas textblock: Fixed a selection issue with different scripts and bidi.
* Fix memory leak in error case in ethumb.
* fix bug not to display preedit string with PREEDIT_TYPE_NONE style
* Fix bug candidate word couldn't be selected with up/down key in the preedit status

View File

@ -1215,12 +1215,24 @@ _edje_key_down_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
if (en->imf_context)
{
Ecore_IMF_Event_Key_Down ecore_ev;
Eina_Bool filter_ret;
ecore_imf_evas_event_key_down_wrap(ev, &ecore_ev);
if (!en->composing)
{
if (ecore_imf_context_filter_event(en->imf_context,
ECORE_IMF_EVENT_KEY_DOWN,
(Ecore_IMF_Event *)&ecore_ev))
filter_ret = ecore_imf_context_filter_event(en->imf_context,
ECORE_IMF_EVENT_KEY_DOWN,
(Ecore_IMF_Event *)&ecore_ev);
if (!strcmp(ev->keyname, "Down") ||
(!strcmp(ev->keyname, "KP_Down") && !ev->string) ||
!strcmp(ev->keyname, "Up") ||
(!strcmp(ev->keyname, "KP_Up") && !ev->string))
{
if (en->have_preedit)
ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
}
if (filter_ret)
return;
}
}