e_devicemgr_input: reduce duplicated code to handle device add and remove event 42/325342/1
authorJihoon Kim <jihoon48.kim@samsung.com>
Sat, 7 Jun 2025 09:07:27 +0000 (18:07 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Mon, 9 Jun 2025 09:57:20 +0000 (18:57 +0900)
Change-Id: Ic44414c9382e5fdbc8e7f0859a402a662750753c
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
src/bin/inputmgr/e_devicemgr_input.c

index c46a4d363eb439b9248cdd2a217da8bb0c8ebb90..86df9a4ab8a13c8c757c64da1205a059153f1a57 100644 (file)
@@ -440,29 +440,18 @@ _e_devicemgr_input_cb_mouse_wheel(void *data, int type, void *event)
    return ECORE_CALLBACK_DONE;
 }
 
-
-static Eina_Bool
-_e_devicemgr_input_cb_device_add(void *data, int type, void *event)
-{
-   Ecore_Event_Device_Info *ev;
-
-   EINA_SAFETY_ON_NULL_RETURN_VAL(event, ECORE_CALLBACK_PASS_ON);
-   ev = (Ecore_Event_Device_Info *)event;
-
-   _e_devicemgr_input_device_add(ev->name, ev->identifier, ev->seatname, ev->clas, ev->subclas);
-
-   return ECORE_CALLBACK_PASS_ON;
-}
-
 static Eina_Bool
-_e_devicemgr_input_cb_device_del(void *data, int type, void *event)
+_e_devicemgr_input_cb_device_changed(void *data, int type, void *event)
 {
    Ecore_Event_Device_Info *ev;
 
    EINA_SAFETY_ON_NULL_RETURN_VAL(event, ECORE_CALLBACK_PASS_ON);
    ev = (Ecore_Event_Device_Info *)event;
 
-   _e_devicemgr_input_device_del(ev->name, ev->identifier, ev->seatname, ev->clas, ev->subclas);
+   if (type == ECORE_EVENT_DEVICE_ADD)
+     _e_devicemgr_input_device_add(ev->name, ev->identifier, ev->seatname, ev->clas, ev->subclas);
+   else if (type == ECORE_EVENT_DEVICE_DEL)
+     _e_devicemgr_input_device_del(ev->name, ev->identifier, ev->seatname, ev->clas, ev->subclas);
 
    return ECORE_CALLBACK_PASS_ON;
 }
@@ -491,8 +480,8 @@ e_devicemgr_input_init(void)
    E_LIST_HANDLER_PREPEND(e_devicemgr->handlers, ECORE_EVENT_MOUSE_BUTTON_DOWN, _e_devicemgr_input_cb_mouse_button_event, NULL);
    E_LIST_HANDLER_PREPEND(e_devicemgr->handlers, ECORE_EVENT_MOUSE_BUTTON_UP, _e_devicemgr_input_cb_mouse_button_event, NULL);
    E_LIST_HANDLER_PREPEND(e_devicemgr->handlers, ECORE_EVENT_MOUSE_WHEEL, _e_devicemgr_input_cb_mouse_wheel, NULL);
-   E_LIST_HANDLER_PREPEND(e_devicemgr->handlers, ECORE_EVENT_DEVICE_ADD, _e_devicemgr_input_cb_device_add, NULL);
-   E_LIST_HANDLER_APPEND(e_devicemgr->handlers, ECORE_EVENT_DEVICE_DEL, _e_devicemgr_input_cb_device_del, NULL);
+   E_LIST_HANDLER_PREPEND(e_devicemgr->handlers, ECORE_EVENT_DEVICE_ADD, _e_devicemgr_input_cb_device_changed, NULL);
+   E_LIST_HANDLER_APPEND(e_devicemgr->handlers, ECORE_EVENT_DEVICE_DEL, _e_devicemgr_input_cb_device_changed, NULL);
    E_LIST_HANDLER_PREPEND(e_devicemgr->handlers, ECORE_EVENT_DEVICE_SUBCLASS_UPDATE, _e_devicemgr_input_cb_device_update, NULL);
 
    if (e_devicemgr->dconfig->conf->input.virtual_key_device_enable)