e_test_event: Wait ecore key with specified window 16/314616/1
authorJunseok Kim <juns.kim@samsung.com>
Tue, 16 Jul 2024 08:11:30 +0000 (17:11 +0900)
committerJunseok Kim <juns.kim@samsung.com>
Tue, 16 Jul 2024 08:11:33 +0000 (17:11 +0900)
The existing code could not wait for the ecore key event for a specific window.
From now on, Changed it to wait for ecore key events for a specific window.

Change-Id: I1b6c761d496ba95010a9e7d6f46bb6a66d136306

src/e_test_event.cpp

index dc6db097aefee7eb39a4a9b0cb37c5f4adb4f37a..78770589adc3f40fd48794792a461ebec59666da 100644 (file)
@@ -1467,6 +1467,17 @@ etRunner::waitEvent(etWin *win, E_TC_Event_Type ev_type)
              recv_item->result = EINA_TRUE;
              return recv_item;
           }
+        else if (ev_type == E_TC_EVENT_TYPE_INPUT_ECORE_KEY)
+          {
+             Ecore_Window ew = elm_win_window_id_get(win?win->elm_win:0);
+             if (recv_item->isSameWin(ew) &&
+                 recv_item->isSameType(ev_type))
+               {
+                  ev.wait_event_index = itr;
+                  recv_item->result = EINA_TRUE;
+                  return recv_item;
+               }
+          }
      }
 
    if (recv_item == NULL)
@@ -2510,7 +2521,7 @@ _cb_ecore_key_up(void *data, int type, void *event)
             type == ECORE_EVENT_KEY_UP)
           {
              runner->ev.key.ecore_state = EINA_FALSE;
-             runner->insertEventQueue(0, E_TC_EVENT_TYPE_INPUT_ECORE_KEY);
+             runner->insertEventQueue(ev->window, E_TC_EVENT_TYPE_INPUT_ECORE_KEY);
           }
      }