Yep. Understand. Just figured I'd throw it out there since it will need to be backported to this release and others anyway...
On Wed, Jul 12, 2017, 11:18 AM Stefan Schmidt <ste...@osg.samsung.com> wrote: > Hello. > > On 07/12/2017 04:17 PM, Stephen Houston wrote: > > Sorry that I have missed bringing this up before: > > https://phab.enlightenment.org/T4996 > > > > This has been around for a while... I have the code and it is simple: > > in elm_image_file_set, if the file extension is .desktop, then create an > > Efreet_Desktop *desktop object and do the following: > > const char *path = NULL, *key = NULL; > > char buf[4096]; > > if (!desktop->icon) > > path = NULL; > > else if (strncmp(desktop->icon, "/", 1) && > > !ecore_file_exists(desktop->icon)) > > { > > clamp = (4 * round((double)ic->inst->size/4)); > > path = efreet_icon_path_find(e_config->icon_theme, > > desktop->icon, clamp); > > if (!path) > > { > > if (e_util_strcmp(e_config->icon_theme, "hicolor")) > > path = efreet_icon_path_find("hicolor", > desktop->icon, > > clamp); > > } > > } > > else if (ecore_file_exists(desktop->icon)) > > { > > path = desktop->icon; > > } > > if (!path && desktop->icon) > > { > > snprintf(buf, sizeof(buf), "e/icons/%s", desktop->icon); > > if > > (eina_list_count(e_theme_collection_items_find("base/theme/icons", buf))) > > { > > path = e_theme_edje_file_get("base/theme/icons", buf); > > k = buf; > > } > > else > > { > > path = e_theme_edje_file_get("base/theme/icons", > > "e/icons/unknown"); > > k = "e/icons/unknown"; > > } > > } > > else if (!path && !desktop->icon) > > { > > path = e_theme_edje_file_get("base/theme/icons", > > "e/icons/unknown"); > > k = "e/icons/unknown"; > > } > > if (path && desktop->icon && !k) > > { > > len = strlen(desktop->icon); > > if ((len > 4) && (!strcasecmp(desktop->icon + len - 4, > > ".edj"))) > > k = "icon"; > > } > > Then just set the path and key. The e_theme_edje* stuff of course would > be > > substituted with elm theme stuff of course. > > No need for anything special in image_file_get as the path and key set in > > file_set would return normally. > > > > This would allow a TON of redundant code throughout E and potentially > other > > places to be removed and elm_icon to fully replace e_icon. I'm also sure > > this would be helpful for other apps that would have a need to load a > > .desktop's image. > > > > This would be very simple to add to elm_image_file_set, with the catch > > being it probably should be backported to other efl releases as well. I > > really think this is a necessary functionality that should exist and is > > warranted. With the simplicity of adding the code, if someone who is > more > > familiar with the current layout of the eo and elm stuff and who is more > > familiar with backporting than I am would apply this, I think it is very > > necessary. > > > > Again, sorry for the late notice. Thoughts? > > Right now we are looking at showstopper bugs that would block a release. > Not at new features suitable for re-factoring parts of the code base. > > I have nothing against the idea and getting rid of code duplication is a > good goal as well, but I do not think we should start this now, so late > in the stabilization schedule. > > regards > Stefan Schmidt > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel