e_input: Add E_INPUT_HOOK_BOOST_MAIN_THREAD hook 26/322526/1
authorInhong Han <inhong1.han@samsung.com>
Thu, 10 Apr 2025 08:23:51 +0000 (17:23 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Thu, 10 Apr 2025 10:16:04 +0000 (19:16 +0900)
Add a new hook to boost main thread for performance before event adding.

Change-Id: Ic81abc1bfb5225394b00e5eed778d4ab828af8fa

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

index f0176a781f9552b6e4b5038339ae400a60a2fde8..3235be4c44a19832cdc8680ebd3bcf903335aa06 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 5a8490dad8a7fddbc8efaf9138083efd8733d1e8..7c736c728e27eb6ed89cc0bcfc4d662835f6c098 100644 (file)
@@ -1978,6 +1978,7 @@ _device_handle_touch_motion_send(E_Input_Evdev *evdev, struct libinput_event_tou
 
    if (!evdev) return;
    if (!(input = e_input_seat_input_get(evdev->seat))) 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;