static int _focus_candidates_cnt = 0;
static mmi_client* _cur_focus_client = NULL;
Ecore_Event_Handler *_event_handlers[2];
+Ecore_Event_Handler *_exit_event_handlers;
int
mmi_manager_remove_client_from_focus_candidates(mmi_client *client)
return ECORE_CALLBACK_PASS_ON;
}
+static Eina_Bool
+_mmi_manager_exit_cb(void *data EINA_UNUSED, int type, void *event)
+{
+ LOGI("...");
+
+ mmi_manager_loop_end();
+
+ return ECORE_CALLBACK_PASS_ON;
+}
+
static void
_event_handler_init()
{
_focus_change_cb, NULL);
_event_handlers[1] = ecore_event_handler_add(MMI_MANAGER_EVENT_STATE_CHANGE,
_state_change_cb, NULL);
+ _exit_event_handlers = ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT,
+ _mmi_manager_exit_cb, NULL);
}
static void
{
ecore_event_handler_del(_event_handlers[0]);
ecore_event_handler_del(_event_handlers[1]);
+ ecore_event_handler_del(_exit_event_handlers);
_event_handlers[0] = _event_handlers[1] = NULL;
+ _exit_event_handlers = NULL;
}
void