*/
#define DEBUG 0
-#define NO_APP_LIST 1
#define IDLE_ICONS 0
/* local subsystem functions */
typedef struct _E_App_Change_Info E_App_Change_Info;
idler = data;
idler->all_done = 1;
+ /* Even though we are only interested in the next one, the hash may have changed
+ * since we last looked at it, so iterate through them again. Doesn't seem to
+ * slow the process down much.
+ */
evas_hash_foreach(_e_apps_every_app, _e_apps_hash_idler_cb_init, idler);
if (idler->all_done)
{
a2 = NULL;
_e_app_resolve_file_name(buf, sizeof(buf), a->path, s);
-// if (ecore_file_exists(buf))
- {
- a2 = e_app_new(buf, scan_subdirs);
- if (a2)
- {
- a2->parent = a;
- a->subapps = evas_list_append(a->subapps, a2);
- e_object_ref(E_OBJECT(a2));
- }
- }
-#if 0
- else
+ a2 = e_app_new(buf, scan_subdirs);
+ if (a2)
{
- E_App *a3;
- Evas_List *pl;
-
- pl = _e_apps_repositories;
- while ((!a2) && (pl))
- {
- _e_app_resolve_file_name(buf, sizeof(buf), (char *)pl->data, s);
- a2 = e_app_new(buf, scan_subdirs);
- pl = pl->next;
- }
- if (a2)
- {
- a3 = E_OBJECT_ALLOC(E_App, E_APP_TYPE, _e_app_free);
- if (a3)
- {
- if (_e_app_copy(a3, a2))
- {
- a3->parent = a;
- a->subapps = evas_list_append(a->subapps, a3);
- e_object_ref(E_OBJECT(a3));
- a2->references = evas_list_append(a2->references, a3);
-#if ! NO_APP_LIST
- _e_apps_all->subapps = evas_list_prepend(_e_apps_all->subapps, a3);
-#endif
- }
- else
- e_object_del(E_OBJECT(a3));
- }
- }
+ a2->parent = a;
+ a->subapps = evas_list_append(a->subapps, a2);
+ e_object_ref(E_OBJECT(a2));
}
-#endif
}
ecore_list_destroy(files);
}
subapps = evas_list_append(subapps, a2);
e_object_ref(E_OBJECT(a2));
}
-#if 0
- else
- {
- /* We ask for a reference! */
- Evas_List *pl;
- E_App *a3;
-
- pl = _e_apps_repositories;
- while ((!a2) && (pl))
- {
- _e_app_resolve_file_name(buf, sizeof(buf), (char *)pl->data, s);
- a2 = e_app_new(buf, 1);
- pl = pl->next;
- }
- if (a2)
- {
- a3 = E_OBJECT_ALLOC(E_App, E_APP_TYPE, _e_app_free);
- if (a3)
- {
- if (_e_app_copy(a3, a2))
- {
- a3->parent = app;
- ch = E_NEW(E_App_Change_Info, 1);
- ch->app = a3;
- ch->change = E_APP_ADD;
- e_object_ref(E_OBJECT(ch->app));
- changes = evas_list_append(changes, ch);
-
- subapps = evas_list_append(subapps, a3);
- e_object_ref(E_OBJECT(a3));
- a2->references = evas_list_append(a2->references, a3);
-#if ! NO_APP_LIST
- _e_apps_all->subapps = evas_list_prepend(_e_apps_all->subapps, a3);
-#endif
- }
- else
- e_object_del(E_OBJECT(a3));
- }
- }
- }
-#endif
}
}
ecore_list_destroy(files);