void home_mgr_softkey_dead_signal_received()
{
- s_home_mgr.softkey_pid = 0;
+ s_home_mgr.softkey_pid = -1;
}
static void _after_launch_home(int pid)
_D("home_mgr_softkey_change");
int state = TRUE;
int ret = 0;
+ int pid = -1;
+
ret = vconf_get_bool(VCONFKEY_SETAPPL_SOFT_KEY, &state);
- if (ret<0) {
+ if (ret < 0) {
_D("fail to get VCONFKEY_SETAPPL_SOFT_KEY:%d", ret);
return;
}
_D("VCONFKEY_SETAPPL_SOFT_KEY STATUS == %d ", state);
- int pid = home_mgr_get_softkey_pid();
- if(state == TRUE && pid > 0)
- {
- _D("softkey is already running with PID: %d", pid);
- return ;
- }
- if(state == TRUE) {
- process_mgr_must_launch(APPID_SOFTKEY, NULL, NULL, NULL, _after_launch_softkey);
- } else {
- _D("terminating softkey");
- int softkey_pid = home_mgr_get_softkey_pid();
- _D("SoftKey Process Id == %d ", softkey_pid);
- if(softkey_pid > 0) {
+
+ pid = home_mgr_get_softkey_pid();
+ _D("SoftKey Process Id == %d ", pid);
+
+ if (!state) {
+ if (pid > 0) {
+ _D("terminating softkey");
home_mgr_softkey_process_terminate();
}
+ return;
}
+
+ if (pid > 0)
+ _D("softkey is already running with PID: %d", pid);
+ else
+ process_mgr_must_launch(APPID_SOFTKEY, NULL, NULL, NULL, _after_launch_softkey);
}
static void _softkey_vconf_change_cb(keynode_t *node, void *data)