Fix the bug that IME isn't shown when input_panel_show is called before focus_in 92/176192/1
authorInHong Han <inhong1.han@samsung.com>
Tue, 17 Apr 2018 07:38:15 +0000 (16:38 +0900)
committerInHong Han <inhong1.han@samsung.com>
Tue, 17 Apr 2018 09:03:21 +0000 (09:03 +0000)
Change-Id: I028e3b42d92fb0c10e546836765557a6742644c6
(cherry picked from commit d76c234bc717f03ed504bc877e56940cd0c5300e)

ism/extras/wayland_immodule/wayland_imcontext.c

index 298c5bf..faecbbf 100644 (file)
@@ -2970,13 +2970,6 @@ wayland_im_context_focus_in(Ecore_IMF_Context *ctx)
         return;
     }
 
-    if (_TV) {
-        if (hw_keyboard_mode == EINA_TRUE) {
-            vconf_set_bool (VCONFKEY_ISF_HW_KEYBOARD_INPUT_DETECTED, 0);
-            hw_keyboard_mode = EINA_FALSE;
-        }
-    }
-
     WaylandIMContext *imcontext = (WaylandIMContext *)ecore_imf_context_data_get(ctx);
     if (imcontext && imcontext->input && imcontext->text_input) {
         wl_text_input_set_return_key_disabled(imcontext->text_input,
@@ -3020,6 +3013,13 @@ wayland_im_context_focus_out(Ecore_IMF_Context *ctx)
 
     if (!imcontext || !imcontext->input) return;
 
+    if (_TV) {
+        if (hw_keyboard_mode == EINA_TRUE) {
+            vconf_set_bool (VCONFKEY_ISF_HW_KEYBOARD_INPUT_DETECTED, 0);
+            hw_keyboard_mode = EINA_FALSE;
+        }
+    }
+
     if (ecore_imf_context_input_panel_enabled_get(ctx)) {
         ecore_imf_context_input_panel_hide(ctx);
     }