From 1acc2f1492597d421378e94600797f8dee442d09 Mon Sep 17 00:00:00 2001 From: MinJeong Kim Date: Wed, 25 Sep 2019 12:10:07 +0900 Subject: [PATCH] e_service_launcher: add new arg serial of launch requests Change-Id: I77dd5b8d90baa64935d766d82204eac264cd4c3d Signed-off-by: MinJeong Kim --- src/bin/services/e_service_launcher.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/bin/services/e_service_launcher.c b/src/bin/services/e_service_launcher.c index ed010de..31e10fa 100644 --- a/src/bin/services/e_service_launcher.c +++ b/src/bin/services/e_service_launcher.c @@ -363,7 +363,6 @@ _launcher_prepare_shared_widget_forward_send(E_Service_Launcher *lc, _launcher_target_ec_set(lc, target_ec); lc->direction = TWS_SERVICE_LAUNCHER_DIRECTION_FORWARD; - lc->serial = wl_display_next_serial(e_comp_wl->wl.disp); sent = e_tzsh_shared_widget_launch_prepare_send(target_ec, TWS_SHARED_WIDGET_LAUNCH_PREPARE_STATE_WIDGET_HIDE, @@ -459,7 +458,6 @@ _launcher_prepare_forward_send(E_Service_Launcher *lc, _launcher_target_ec_set(lc, target_ec); lc->direction = TWS_SERVICE_LAUNCHER_DIRECTION_FORWARD; - lc->serial = wl_display_next_serial(e_comp_wl->wl.disp); e_client_pos_get(target_ec, &x, &y); sent = _launcher_prepare_send(lc, target_ec, x, y, NULL); @@ -777,7 +775,8 @@ _launcher_cb_launch(struct wl_client *client EINA_UNUSED, struct wl_resource *res_tws_lc, const char *app_id, const char *instance_id, - int32_t pid) + int32_t pid, + uint32_t serial) { E_Service_Launcher *lc; E_Service_Launcher *runner, *pre_runner; @@ -816,6 +815,7 @@ _launcher_cb_launch(struct wl_client *client EINA_UNUSED, } lc->target.pid = pid; + lc->serial = serial; ecs = _launcher_clients_find_by_pid(pid); EINA_LIST_FOREACH(ecs, l, target_ec) @@ -853,7 +853,8 @@ _launcher_cb_launch_with_shared_widget(struct wl_client *client EINA_UNUSED, struct wl_resource *res_tws_lc, const char *app_id, const char *instance_id, - int32_t pid) + int32_t pid, + uint32_t serial) { E_Service_Launcher *lc; E_Service_Launcher *runner, *pre_runner; @@ -895,6 +896,7 @@ _launcher_cb_launch_with_shared_widget(struct wl_client *client EINA_UNUSED, lc->with_swl = EINA_TRUE; /* set swl flag */ lc->target.pid = pid; + lc->serial = serial; ecs = _launcher_clients_find_by_pid(pid); EINA_LIST_FOREACH(ecs, l, target_ec) @@ -1167,6 +1169,7 @@ _launcher_handler_launcher_runner_set(E_Service_Launcher *lc) _launcher_state_set(runner, LAUNCHER_STATE_CANCELED); _launcher_stop_send(runner); runner->target.pid = -1; + runner->serial = 0; break; default: break; @@ -1528,6 +1531,7 @@ show_deny: return EINA_FALSE; send_stop: runner->target.pid = -1; + runner->serial = 0; _launcher_stop_send(runner); _launcher_state_set(runner, LAUNCHER_STATE_IDLE); _launcher_handler_launcher_runner_unset(runner); @@ -1601,7 +1605,10 @@ send_stop: _launcher_stop_send(runner); if (runner->state == LAUNCHER_STATE_MONITORING) - runner->target.pid = -1; + { + runner->target.pid = -1; + runner->serial = 0; + } else if (runner->direction == TWS_SERVICE_LAUNCHER_DIRECTION_FORWARD) _launcher_post_forward(runner, EINA_FALSE); else if (runner->direction == TWS_SERVICE_LAUNCHER_DIRECTION_BACKWARD) -- 2.7.4