fix to add 'back key' event in input thread mode 93/303693/1 accepted/tizen_unified_riscv accepted/tizen/unified/20240104.053218 accepted/tizen/unified/riscv/20240105.060120
authorduna.oh <duna.oh@samsung.com>
Wed, 3 Jan 2024 10:27:37 +0000 (19:27 +0900)
committerduna.oh <duna.oh@samsung.com>
Wed, 3 Jan 2024 10:27:37 +0000 (19:27 +0900)
Change-Id: I4ae3b5fc852c30a088cef105eb1377693afdcf39

src/e_mod_gesture_events.c

index 5871612993e7c542a33d406773a1641aee39e6b6..6fe11f63c729a07d53ac903457184ed572907f64 100644 (file)
@@ -292,8 +292,6 @@ _e_gesture_send_back_key(Eina_Bool pressed)
    E_Gesture_Conf_Edd *conf = gesture->config->conf;
    E_Keyrouter_Event_Data *key_data;
 
-   EINA_SAFETY_ON_NULL_RETURN(e_comp_wl->xkb.keymap);
-
    ev = E_NEW(Ecore_Event_Key, 1);
    EINA_SAFETY_ON_NULL_RETURN(ev);
    key_data = E_NEW(E_Keyrouter_Event_Data, 1);
@@ -309,10 +307,18 @@ _e_gesture_send_back_key(Eina_Bool pressed)
    ev->window = e_comp->ee_win;
    ev->data = key_data;
 
-   if (pressed)
-     ecore_event_add(ECORE_EVENT_KEY_DOWN, ev, _e_gesture_keyevent_free, NULL);
+   if (!e_input_thread_mode_get())
+     {
+        ecore_event_add(pressed ? ECORE_EVENT_KEY_DOWN : ECORE_EVENT_KEY_UP, ev, _e_gesture_keyevent_free, NULL);
+     }
    else
-     ecore_event_add(ECORE_EVENT_KEY_UP, ev, _e_gesture_keyevent_free, NULL);
+     {
+        E_Input_Event_Source *input_event_source = e_input_event_source_get();
+        if (input_event_source)
+          e_input_event_add(input_event_source, pressed ? ECORE_EVENT_KEY_DOWN : ECORE_EVENT_KEY_UP, ev, _e_gesture_keyevent_free, NULL);
+        else
+          _e_gesture_keyevent_free(NULL, ev);
+     }
 
    return;