e_input: Add E_INPUT_HOOK_BOOST_MAIN_THREAD hook 25/322525/1
authorInhong Han <inhong1.han@samsung.com>
Thu, 10 Apr 2025 09:28:48 +0000 (18:28 +0900)
committerInhong Han <inhong1.han@samsung.com>
Thu, 10 Apr 2025 09:28:50 +0000 (18:28 +0900)
Add a new hook to boost main thread for performance before event adding.

Change-Id: I0295bfe383f8a35af00fbea28982f7f7272a38e2

src/bin/inputmgr/e_input.c
src/bin/inputmgr/e_input_evdev.c
src/include/e_input.h

index 2da00ce96fdecff3908a5ea07cd77b7b5e68758a..9242b7761f1c33f478dded69e6451f347673c930 100644 (file)
@@ -26,6 +26,7 @@ static Eina_Inlist *_e_input_hooks[] =
 {
    [E_INPUT_HOOK_POINTER_WARP] = NULL,
    [E_INPUT_HOOK_INPUT_THREAD_START] = NULL,
+   [E_INPUT_HOOK_BOOST_MAIN_THREAD] = NULL,
 };
 
 int _e_input_init_count;
index 4cd6bf9188ad85f4ae5501b8d425af4320b50de8..41922f6204675b172c6d034252f9e41cd664557e 100644 (file)
@@ -1957,6 +1957,7 @@ _device_handle_touch_motion_send(E_Input_Evdev *evdev, struct libinput_event_tou
 
    if (!evdev) return;
    if (!(input = evdev->seat->input)) return;
+   e_input_hook_call(E_INPUT_HOOK_BOOST_MAIN_THREAD, NULL);
 
    timestamp = libinput_event_touch_get_time(event);
 #if LIBINPUT_SUPPORT_EXTRA_TOUCH_EVENT
index c00a37ed4a94562f0cb7441ed45746f90c1b3cc3..15c1262e2bdcfacfca2d31861dd8a26479b52ba6 100644 (file)
@@ -17,6 +17,7 @@ typedef enum _E_Input_Hook_Point
 {
    E_INPUT_HOOK_POINTER_WARP,
    E_INPUT_HOOK_INPUT_THREAD_START,
+   E_INPUT_HOOK_BOOST_MAIN_THREAD,
    E_INPUT_HOOK_LAST
 } E_Input_Hook_Point;