From: Doyoun Kang Date: Wed, 9 Aug 2017 08:12:34 +0000 (+0900) Subject: add code to handle E_COMP_WL_HOOK_CLIENT_REUSE hook X-Git-Tag: submit/tizen_3.0/20170810.035913~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ffa9fd2078639e5d857a5ef8e0b3897aaea220ed;p=platform%2Fcore%2Fuifw%2Fe-mod-tizen-processmgr.git add code to handle E_COMP_WL_HOOK_CLIENT_REUSE hook Change-Id: I2e7f12956fc12ecb435a833384fe85c51c07c501 --- diff --git a/src/e_mod_processmgr.c b/src/e_mod_processmgr.c index cb4d600..5333056 100644 --- a/src/e_mod_processmgr.c +++ b/src/e_mod_processmgr.c @@ -6,6 +6,8 @@ static Eina_List *hooks_ec = NULL; static Eina_List *_e_processmgr_ec_handlers = NULL; +static Eina_List *_e_processmgr_wl_hooks = NULL; + Eldbus_Connection *_e_processmgr_conn; Eldbus_Service_Interface *_e_processmgr_iface; @@ -387,6 +389,22 @@ _e_processmgr_cb_client_remove(void *data EINA_UNUSED, int type EINA_UNUSED, voi return ECORE_CALLBACK_PASS_ON; } +static void +_e_processmgr_cb_client_reuse(void *data EINA_UNUSED, E_Client *ec) +{ + e_comp_object_signal_callback_del_full(ec->frame, + "e,action,launch_real,done", + "e", + _e_processmgr_cb_launch_done, + ec); + + e_comp_object_signal_callback_add(ec->frame, + "e,action,launch_real,done", + "e", + _e_processmgr_cb_launch_done, + ec); +} + EAPI Eina_Bool e_mod_processmgr_init(void) { @@ -403,6 +421,8 @@ e_mod_processmgr_init(void) E_LIST_HANDLER_APPEND(_e_processmgr_ec_handlers, E_EVENT_CLIENT_ADD, _e_processmgr_cb_client_add, NULL); E_LIST_HANDLER_APPEND(_e_processmgr_ec_handlers, E_EVENT_CLIENT_REMOVE, _e_processmgr_cb_client_remove, NULL); + E_COMP_WL_HOOK_APPEND(_e_processmgr_wl_hooks, E_COMP_WL_HOOK_CLIENT_REUSE, _e_processmgr_cb_client_reuse, NULL); + return EINA_TRUE; } @@ -415,6 +435,7 @@ e_mod_processmgr_shutdown(void) eldbus_shutdown(); + E_FREE_LIST(_e_processmgr_wl_hooks, e_comp_wl_hook_del); E_FREE_LIST(_e_processmgr_ec_handlers, ecore_event_handler_del); EINA_LIST_FREE(hooks_ec, hook) e_process_hook_del(hook);