s_animation.display_block = display_block;
}
+static void __visibility_changed_cb(void *data, Evas_Object *obj, void *event)
+{
+ __D("Visibility changed");
+ int visibility = (int)(void *)event;
+
+ if (!visibility)
+ boot_exit();
+}
+
static Eina_Bool __end_cb(void *data)
{
int type = (int) data;
__block_display();
} else {
__D("EXIT on BOOTING");
- if (vconf_set_int(VCONFKEY_BOOT_ANIMATION_FINISHED, 1) != 0)
- __E("Failed to set finished set");
boot_exit();
}
return ECORE_CALLBACK_CANCEL;
{
if (s_animation.state == TYPE_OFF) {
__D("TYPE OFF");
- if (vconf_set_int(VCONFKEY_BOOT_ANIMATION_FINISHED, 1) != 0)
- __E("Failed to set finished set");
ecore_timer_add(1, __end_cb, (void *)TYPE_OFF);
} else {
__D("TYPE_ON");
- __end_cb((void *)TYPE_ON);
+ efl_util_set_notification_window_level(s_animation.win, EFL_UTIL_NOTIFICATION_LEVEL_NONE);
+ ecore_timer_add(10, __end_cb, (void *)TYPE_ON);
}
+
+ if (vconf_set_int(VCONFKEY_BOOT_ANIMATION_FINISHED, 1) != 0)
+ __E("Failed to set finished set");
}
static void __fini_layout(void)
__E("Failed to create a new window");
return NULL;
}
- elm_win_aux_hint_add(win, "wm.comp.win.always.selective.mode", "1");
elm_win_role_set(win, "alert");
- efl_util_set_notification_window_level(win, EFL_UTIL_NOTIFICATION_LEVEL_HIGH);
+ efl_util_set_notification_window_level(win, EFL_UTIL_NOTIFICATION_LEVEL_TOP);
+ evas_object_smart_callback_add(s_animation.win, "visibility,changed", __visibility_changed_cb, NULL);
+ elm_win_aux_hint_add(win, "wm.comp.win.always.selective.mode", "0");
evas_object_smart_callback_add(win, "delete-request", win_del, NULL);
elm_win_screen_size_get(win, NULL, NULL, &s_animation.w, &s_animation.h);