summaryrefslogtreecommitdiff
path: root/legacy/elementary/src/lib/elm_entry.c
diff options
context:
space:
mode:
authorChunEon Park <hermet@hermet.pe.kr>2013-07-13 18:58:30 +0900
committerChunEon Park <hermet@hermet.pe.kr>2013-07-13 18:58:30 +0900
commit74d5da9cf490684ac367471304086270b93f2613 (patch)
treecfc69f46e2b5d62cd52d0813dc9f0fc995c83307 /legacy/elementary/src/lib/elm_entry.c
parentf877718bf6d181e3966a96bcfa89e923e58b2896 (diff)
elementry/entry - Change the keyboard mode only if the imf is not available.
If the imf is available, the keyboard mode should be decided by ime, but not entry. This prevents the asynchorouse states between ime and conformant.
Diffstat (limited to 'legacy/elementary/src/lib/elm_entry.c')
-rw-r--r--legacy/elementary/src/lib/elm_entry.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/legacy/elementary/src/lib/elm_entry.c b/legacy/elementary/src/lib/elm_entry.c
index d937d12359..5ae4e1b6d7 100644
--- a/legacy/elementary/src/lib/elm_entry.c
+++ b/legacy/elementary/src/lib/elm_entry.c
@@ -858,7 +858,8 @@ _elm_entry_smart_on_focus(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
858 { 858 {
859 evas_object_focus_set(sd->entry_edje, EINA_TRUE); 859 evas_object_focus_set(sd->entry_edje, EINA_TRUE);
860 edje_object_signal_emit(sd->entry_edje, "elm,action,focus", "elm"); 860 edje_object_signal_emit(sd->entry_edje, "elm,action,focus", "elm");
861 if (top && top_is_win && sd->input_panel_enable) 861 if (top && top_is_win && sd->input_panel_enable &&
862 !edje_object_part_text_imf_context_get(sd->entry_edje, "elm.text"))
862 elm_win_keyboard_mode_set(top, ELM_WIN_KEYBOARD_ON); 863 elm_win_keyboard_mode_set(top, ELM_WIN_KEYBOARD_ON);
863 evas_object_smart_callback_call(obj, SIG_FOCUSED, NULL); 864 evas_object_smart_callback_call(obj, SIG_FOCUSED, NULL);
864 _return_key_enabled_check(obj); 865 _return_key_enabled_check(obj);
@@ -867,7 +868,8 @@ _elm_entry_smart_on_focus(Eo *obj, void *_pd EINA_UNUSED, va_list *list)
867 { 868 {
868 edje_object_signal_emit(sd->entry_edje, "elm,action,unfocus", "elm"); 869 edje_object_signal_emit(sd->entry_edje, "elm,action,unfocus", "elm");
869 evas_object_focus_set(sd->entry_edje, EINA_FALSE); 870 evas_object_focus_set(sd->entry_edje, EINA_FALSE);
870 if (top && top_is_win && sd->input_panel_enable) 871 if (top && top_is_win && sd->input_panel_enable &&
872 !edje_object_part_text_imf_context_get(sd->entry_edje, "elm.text"))
871 elm_win_keyboard_mode_set(top, ELM_WIN_KEYBOARD_OFF); 873 elm_win_keyboard_mode_set(top, ELM_WIN_KEYBOARD_OFF);
872 evas_object_smart_callback_call(obj, SIG_UNFOCUSED, NULL); 874 evas_object_smart_callback_call(obj, SIG_UNFOCUSED, NULL);
873 875