|
From: <enl...@li...> - 2004-12-06 12:41:46
|
Enlightenment CVS committal
Author : raster
Project : e17
Module : apps/entrance
Dir : e17/apps/entrance/src/client
Modified Files:
main.c
Log Message:
freeze and thaw - sooo much mroe efficient!
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entrance/src/client/main.c,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -3 -r1.59 -r1.60
--- main.c 4 Dec 2004 19:47:10 -0000 1.59
+++ main.c 6 Dec 2004 12:41:39 -0000 1.60
@@ -20,6 +20,21 @@
static Entrance_Session *session = NULL;
+static int
+idler_before_cb(void *data)
+{
+ edje_thaw();
+ return 1;
+}
+
+static int
+idler_after_cb(void *data)
+{
+ edje_freeze();
+ return 1;
+}
+
+
/**
* get the hostname of the machine, surrounded by the before and after
* strings the config specifies
@@ -543,7 +558,7 @@
* <li> Show the main edje </li>
* <li> Emit an "In" signal on the main entry for lazy themers </li>
* <li> Tell the Entrance_Sesssion that the Ecore_Evas belongs to it</li>
- * <li> Run.............. until ecore_main_loop_quit is called</li>
+ * <li> Run.............. until ecore_main_(loop_quit is called</li>
* <li> If the user is authenticated, try to run their session</li>
* <li>Shut down edje, ecore_evas, ecore_x, ecore</li>
* </ol>
@@ -682,10 +697,12 @@
}
#endif
ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT, exit_cb, NULL);
-
+ ecore_idle_enterer_add(idler_before_cb, NULL);
+
if (ecore_evas_init())
{
edje_init();
+ edje_freeze();
edje_frametime_set(1.0 / 30.0);
/* setup our ecore_evas */
@@ -851,6 +868,7 @@
ecore_evas_fullscreen_set(e, 1);
else
ecore_evas_resize(e, g_x, g_y);
+ ecore_idle_enterer_add(idler_after_cb, NULL);
entrance_session_ecore_evas_set(session, e);
entrance_ipc_session_set(session);
|