static Eina_Bool _key_release_cb(void *data, int type, void *event)
{
Evas_Event_Key_Up *ev = event;
+ int seq = 0;
retv_if(!ev, ECORE_CALLBACK_RENEW);
retv_if(!ev->keyname, ECORE_CALLBACK_RENEW);
_D("_key_release_cb : %s Released", ev->keyname);
+ /* Priority 0 : Check the booting sequence */
+ seq = status_active_get()->starter_sequence;
+ if (seq == 0) {
+ _D("Sys-lock is showing");
+ return ECORE_CALLBACK_RENEW;
+ }
+
/* Priority 1 : Cancel event */
if (!strcmp(ev->keyname, key_name[KEY_CANCEL])) {
_D("CANCEL Key is released");
static Eina_Bool _key_press_cb(void *data, int type, void *event)
{
Evas_Event_Key_Down *ev = event;
+ int seq = 0;
retv_if(!ev, ECORE_CALLBACK_RENEW);
retv_if(!ev->keyname, ECORE_CALLBACK_RENEW);
_D("_key_press_cb : %s Pressed", ev->keyname);
+ /* Priority 0 : Check the booting sequence */
+ seq = status_active_get()->starter_sequence;
+ if (seq == 0) {
+ _D("Sys-lock is showing");
+ return ECORE_CALLBACK_RENEW;
+ }
+
/* Priority 1 : Cancel */
/* every reserved events have to be canceld when cancel key is pressed */
if (!strcmp(ev->keyname, key_name[KEY_CANCEL])) {
{
int i = 0;
- if (key_info.keymap_update_flag == EINA_TRUE && key_info.global_added_flag == EINA_TRUE) {
- for (i = 0; i < KEY_NAME_MAX; i++) {
- ecore_wl_window_keygrab_unset(NULL, key_name[i], 0, 0);
- }
-
- key_info.keymap_update_flag = EINA_FALSE;
- key_info.global_added_flag = EINA_FALSE;
+ for (i = 0; i < KEY_NAME_MAX; i++) {
+ ecore_wl_window_keygrab_unset(NULL, key_name[i], 0, 0);
}
+
+ key_info.keymap_update_flag = EINA_FALSE;
+ key_info.global_added_flag = EINA_FALSE;
}
#define APPID_SYS_LOCK "org.tizen.sys-lock"
-#if 0
-static void _hide_home(void)
+static void _set_starter_sequence(int val)
{
- int seq = status_active_get()->starter_sequence;
- ret_if(seq == 1);
-
- vconf_set_int(VCONFKEY_STARTER_SEQUENCE, 0);
-}
-#endif
-
-
-
-static void _show_home(void)
-{
- vconf_set_int(VCONFKEY_STARTER_SEQUENCE, 1);
+ vconf_set_int(VCONFKEY_STARTER_SEQUENCE, val);
}
* After user data partition mount,
* launch lockscreen, homescreen, etc.
*/
- hw_key_create_window();
-
lock_mgr_init();
home_mgr_init(NULL);
- _show_home();
+ /*
+ * Set the starter sequence vconfkey.
+ * '1' menas that booting seqeunce is done.
+ */
+ _set_starter_sequence(1);
}
e_dbus_init();
+ hw_key_create_window();
+
+ /*
+ * Initialize starter sequence vconfkey.
+ */
+ _set_starter_sequence(0);
+
is_lazy_mount = get_need_ui_for_lazy_mount();
_D("Lazy mount : %d", is_lazy_mount);
if (is_lazy_mount) {
static void _fini(struct appdata *ad)
{
- hw_key_destroy_window();
-
home_mgr_fini();
lock_mgr_fini();
+ hw_key_destroy_window();
+
e_dbus_shutdown();
status_active_unregister_cb(STATUS_ACTIVE_KEY_SYSMAN_POWER_OFF_STATUS, _power_off_cb);