On Friday, November 26, 2010, Enlightenment SVN
<[email protected]> wrote:
> Log:
> Search for icon theme in elm_need_efreet
>
> When searching for an icon in a theme, efreet needs to load the specific
> cache for the theme. So if an icon doesn't exist, this will be a huge
> overhead. So it is better to find a theme on init, and then stick with
> it.
Nooooo!!!!
Don't make app startup slower please, I'm already pissed off with
current situation and planning to move edbus setup to a thread and you
add this :/
Need to make this a thread or async, or delay this with a timer after
de window is visible and with something graphical visible
> Author: englebass
> Date: 2010-11-26 01:05:12 -0800 (Fri, 26 Nov 2010)
> New Revision: 55004
>
> Modified:
> trunk/TMP/st/elementary/src/lib/elm_icon.c
> trunk/TMP/st/elementary/src/lib/elm_main.c
> trunk/TMP/st/elementary/src/lib/elm_priv.h
>
> Modified: trunk/TMP/st/elementary/src/lib/elm_icon.c
> ===================================================================
> --- trunk/TMP/st/elementary/src/lib/elm_icon.c 2010-11-26 08:06:19 UTC (rev
> 55003)
> +++ trunk/TMP/st/elementary/src/lib/elm_icon.c 2010-11-26 09:05:12 UTC (rev
> 55004)
> @@ -292,19 +292,8 @@
> const char *path;
>
> elm_need_efreet();
> - path = efreet_icon_path_find(getenv("E_ICON_THEME"), name, size);
> - if (!path)
> - {
> - const char **itr;
> - static const char *themes[] = {
> - "default", "highcolor", "hicolor", "gnome", "Human", "oxygen",
> NULL
> - };
> - for (itr = themes; (!path) && (*itr); itr++)
> - {
> - path = efreet_icon_path_find(*itr, name, size);
> - if (path) break;
> - }
> - }
> + if (!icon_theme) return EINA_FALSE;
> + path = efreet_icon_path_find(icon_theme->name.internal, name, size);
> wd->freedesktop.use = !!path;
> if (wd->freedesktop.use)
> {
>
> Modified: trunk/TMP/st/elementary/src/lib/elm_main.c
> ===================================================================
> --- trunk/TMP/st/elementary/src/lib/elm_main.c 2010-11-26 08:06:19 UTC (rev
> 55003)
> +++ trunk/TMP/st/elementary/src/lib/elm_main.c 2010-11-26 09:05:12 UTC (rev
> 55004)
> @@ -390,6 +390,7 @@
>
> #ifdef ELM_EFREET
> static int _elm_need_efreet = 0;
> +Efreet_Icon_Theme *icon_theme = NULL;
> #endif
> EAPI Eina_Bool
> elm_need_efreet(void)
> @@ -399,8 +400,21 @@
> efreet_init();
> efreet_mime_init();
> efreet_trash_init();
> - /*
> + icon_theme = efreet_icon_theme_find(getenv("E_ICON_THEME"));
> + if (!icon_theme)
> {
> + const char **itr;
> + static const char *themes[] = {
> + "default", "highcolor", "hicolor", "gnome", "Human", "oxygen",
> NULL
> + };
> + for (itr = themes; *itr; itr++)
> + {
> + icon_theme = efreet_icon_theme_find(*itr);
> + if (icon_theme) break;
> + }
> + }
> + /*
> + {
> Eina_List **list;
>
> list = efreet_icon_extra_list_get();
> @@ -425,6 +439,7 @@
> #ifdef ELM_EFREET
> if (--_elm_need_efreet) return;
>
> + icon_theme = NULL;
> _elm_need_efreet = 0;
> efreet_trash_shutdown();
> efreet_mime_shutdown();
>
> Modified: trunk/TMP/st/elementary/src/lib/elm_priv.h
> ===================================================================
> --- trunk/TMP/st/elementary/src/lib/elm_priv.h 2010-11-26 08:06:19 UTC (rev
> 55003)
> +++ trunk/TMP/st/elementary/src/lib/elm_priv.h 2010-11-26 09:05:12 UTC (rev
> 55004)
> @@ -196,5 +196,8 @@
> extern const char *_elm_lib_dir;
> extern int _elm_log_dom;
> extern Eina_List *_elm_win_list;
> +#ifdef ELM_EFREET
> +extern Efreet_Icon_Theme *icon_theme;
> +#endif
>
> #endif
>
>
> ------------------------------------------------------------------------------
> Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
> Tap into the largest installed PC base & get more eyes on your game by
> optimizing for Intel(R) Graphics Technology. Get started today with the
> Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
> http://p.sf.net/sfu/intelisp-dev2dev
> _______________________________________________
> enlightenment-svn mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn
>
--
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--------------------------------------
MSN: [email protected]
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202
------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel