Fix infinite enter key generation issue when pressing enter key in TV profile 87/130187/1
authorJihoon Kim <jihoon48.kim@samsung.com>
Fri, 19 May 2017 09:46:29 +0000 (18:46 +0900)
committerJihoon Kim <jihoon48.kim@samsung.com>
Fri, 19 May 2017 09:46:29 +0000 (18:46 +0900)
Change-Id: Ibd882bdd1586aea3f2a7a90566f12a3e807650b8
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
src/ise.cpp

index 64b0983..3a872b7 100644 (file)
@@ -1994,11 +1994,30 @@ static bool ime_app_process_key_event_cb(ime_key_code_e keycode, ime_key_mask_e
 {
     scim::KeyEvent key(keycode, keymask);
     unsigned int ret;
+    char *dev_name = NULL;
+    Ecore_IMF_Device_Class dev_class;
+    Ecore_IMF_Device_Subclass dev_subclass;
+
+    if (ime_device_info_get_name(dev_info, &dev_name) == IME_ERROR_NONE) {
+        key.dev_name = dev_name;
+    }
+
+    if (ime_device_info_get_class(dev_info, &dev_class) == IME_ERROR_NONE) {
+        key.dev_class = dev_class;
+    }
+
+    if (ime_device_info_get_subclass(dev_info, &dev_subclass) == IME_ERROR_NONE) {
+        key.dev_subclass = dev_subclass;
+    }
+
     if (g_keyboard_state.visible_state)
         ise_process_key_event(key, ret);
     else
         ret = FALSE;
 
+    if (dev_name)
+        free(dev_name);
+
     return ret;
 }