/* local subsystem functions */ static void _e_startup(void) { Efreet_Desktop *desktop; char buf[8192]; if (!startup_apps) { e_init_done(); return; } desktop = eina_list_nth(startup_apps->desktops, start_app_pos); start_app_pos++; if (!desktop) { e_object_del(E_OBJECT(startup_apps)); startup_apps = NULL; start_app_pos = -1; e_init_done(); return; } e_exec(NULL, desktop, NULL, NULL, NULL); snprintf(buf, sizeof(buf), _("Starting %s"), desktop->name); e_init_status_set(buf); ecore_job_add(_e_startup_next_cb, NULL); }
EAPI void e_init_client_data(Ecore_Ipc_Event_Client_Data *e) { // printf("---new init client\n"); if (!client) client = e->client; if (e->minor == 1) { if (e->data) { int i, num; Ecore_X_Window *initwins; num = e->size / sizeof(Ecore_X_Window); initwins = e->data; for (i = 0; i < num; i += 2) { Eina_List *l; E_Manager *man; EINA_LIST_FOREACH(e_manager_list(), l, man) { if (man->root == initwins[i + 0]) { man->initwin = initwins[i + 1]; ecore_x_window_raise(man->initwin); } } } } while (stats) { const char *s; s = stats->data; stats = eina_list_remove_list(stats, stats); // printf("---SPOOL %s\n", s); e_init_status_set(s); eina_stringshare_del(s); } }