7 EAPI Efreet_Desktop *efreet_util_desktop_file_id_find(const char *file_id);
9 EAPI Eina_List *efreet_util_desktop_generic_name_glob_list(const char *glob);
10 EAPI Eina_List *efreet_util_desktop_comment_glob_list(const char *glob);
13 static Eina_Bool icon_cb = EINA_FALSE;
14 static Eina_Bool desktop_cb = EINA_FALSE;
20 Efreet_Desktop *desktop, *desktop2;
24 // EAPI char *efreet_util_path_to_file_id(const char *path);
25 start = ecore_time_get();
26 id = efreet_util_path_to_file_id("/usr/share/applications/gnome-panel.desktop");
29 printf("efreet_util_path_to_file_id(/usr/share/applications/gnome-panel.desktop): %s %.6f\n", id, (ecore_time_get() - start));
32 printf("efreet_util_path_to_file_id(/usr/share/applications/gnome-panel.desktop): NULL %.6f\n", (ecore_time_get() - start));
34 //EAPI Efreet_Desktop *efreet_util_desktop_name_find(const char *name);
35 start = ecore_time_get();
36 desktop = efreet_util_desktop_name_find("Evolution");
38 printf("efreet_util_desktop_name_find(Evolution): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
40 printf("efreet_util_desktop_name_find(Evolution): NULL %.6f\n", (ecore_time_get() - start));
41 efreet_desktop_free(desktop);
43 //EAPI Efreet_Desktop *efreet_util_desktop_generic_name_find(const char *generic_name);
44 start = ecore_time_get();
45 desktop = efreet_util_desktop_generic_name_find("Spreadsheet");
47 printf("efreet_util_desktop_generic_name_find(Spreadsheet): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
49 printf("efreet_util_desktop_generic_name_find(Spreadsheet): NULL %.6f\n", (ecore_time_get() - start));
50 efreet_desktop_free(desktop);
52 //EAPI Efreet_Desktop *efreet_util_desktop_wm_class_find(const char *wmname, const char *wmclass);
53 start = ecore_time_get();
54 desktop = efreet_util_desktop_wm_class_find("Firefox", NULL);
56 printf("efreet_util_desktop_wm_class_find(Firefox): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
58 printf("efreet_util_desktop_wm_class_find(Firefox): NULL %.6f\n", (ecore_time_get() - start));
59 efreet_desktop_free(desktop);
61 //EAPI Efreet_Desktop *efreet_util_desktop_exec_find(const char *exec);
62 start = ecore_time_get();
63 desktop = efreet_util_desktop_exec_find("/usr/bin/update-manager");
65 printf("efreet_util_desktop_exec_find(update-manager): %s %.6f\n", desktop->orig_path, (ecore_time_get() - start));
67 printf("efreet_util_desktop_exec_find(update-manager): NULL %.6f\n", (ecore_time_get() - start));
68 efreet_desktop_free(desktop);
70 //EAPI Eina_List *efreet_util_desktop_name_glob_list(const char *glob);
71 start = ecore_time_get();
72 list = efreet_util_desktop_name_glob_list("Ubuntu*");
75 EINA_LIST_FREE(list, desktop)
77 printf("efreet_util_desktop_name_glob_list(Ubuntu*): %s\n", desktop->name);
78 efreet_desktop_free(desktop);
81 printf("time: %.6f\n", (ecore_time_get() - start));
83 //EAPI Eina_List *efreet_util_desktop_mime_list(const char *mime);
84 start = ecore_time_get();
85 list = efreet_util_desktop_mime_list("application/ogg");
88 EINA_LIST_FREE(list, desktop)
90 printf("efreet_util_desktop_mime_list(application/ogg): %s\n", desktop->name);
91 efreet_desktop_free(desktop);
94 printf("time: %.6f\n", (ecore_time_get() - start));
96 //EAPI Eina_List *efreet_util_desktop_exec_glob_list(const char *glob);
97 start = ecore_time_get();
98 list = efreet_util_desktop_exec_glob_list("*gnome*");
101 EINA_LIST_FREE(list, desktop)
103 printf("efreet_util_desktop_exec_glob_list(*gnome*): %s\n", desktop->exec);
104 efreet_desktop_free(desktop);
107 printf("time: %.6f\n", (ecore_time_get() - start));
109 //EAPI Eina_List *efreet_util_desktop_categories_list(void);
110 start = ecore_time_get();
111 list = efreet_util_desktop_categories_list();
114 EINA_LIST_FREE(list, id)
116 printf("efreet_util_desktop_categories_list(): %s\n", id);
119 printf("time: %.6f\n", (ecore_time_get() - start));
121 //EAPI Eina_List *efreet_util_desktop_category_list(const char *category);
122 start = ecore_time_get();
123 list = efreet_util_desktop_category_list("Graphics");
126 EINA_LIST_FREE(list, desktop)
128 printf("efreet_util_desktop_category_list(Graphics): %s\n", desktop->name);
129 efreet_desktop_free(desktop);
132 printf("time: %.6f\n", (ecore_time_get() - start));
134 desktop = efreet_desktop_get("/opt/google/chrome/google-chrome.desktop");
136 printf("%s: %d %d\n", desktop->orig_path, desktop->ref, desktop->eet);
137 desktop2 = efreet_desktop_new("/opt/google/chrome/google-chrome.desktop");
140 printf("%s: %d %d\n", desktop2->orig_path, desktop2->ref, desktop2->eet);
141 efreet_desktop_free(desktop2);
144 efreet_desktop_free(desktop);
146 desktop = efreet_desktop_get("/usr/share/applications/firefox.desktop");
148 printf("%s: %d %d\n", desktop->orig_path, desktop->ref, desktop->eet);
149 desktop2 = efreet_desktop_new("/usr/share/applications/firefox.desktop");
152 printf("%s: %d %d\n", desktop2->orig_path, desktop2->ref, desktop2->eet);
153 efreet_desktop_free(desktop2);
156 efreet_desktop_free(desktop);
161 icon_handler_cb(void *data __UNUSED__, int event_type __UNUSED__, void *event __UNUSED__)
164 if (icon_cb && desktop_cb)
167 ecore_main_loop_quit();
169 return ECORE_CALLBACK_PASS_ON;
173 desktop_handler_cb(void *data __UNUSED__, int event_type __UNUSED__, void *event __UNUSED__)
175 desktop_cb = EINA_TRUE;
176 if (icon_cb && desktop_cb)
179 ecore_main_loop_quit();
181 return ECORE_CALLBACK_PASS_ON;
185 main(int argc __UNUSED__, char **argv __UNUSED__)
187 Ecore_Event_Handler *icon_handler;
188 Ecore_Event_Handler *desktop_handler;
190 if (!efreet_init()) return 1;
191 icon_handler = ecore_event_handler_add(EFREET_EVENT_ICON_CACHE_UPDATE, icon_handler_cb, NULL);
192 desktop_handler = ecore_event_handler_add(EFREET_EVENT_DESKTOP_CACHE_UPDATE, desktop_handler_cb, NULL);
194 ecore_main_loop_begin();
195 ecore_event_handler_del(icon_handler);
196 ecore_event_handler_del(desktop_handler);