netstar pushed a commit to branch master.

http://git.enlightenment.org/apps/evisum.git/commit/?id=789c2781b1d8fbcbd40a4c53599b6f91612c8710

commit 789c2781b1d8fbcbd40a4c53599b6f91612c8710
Author: Alastair Poole <[email protected]>
Date:   Tue Nov 17 01:14:12 2020 +0000

    icon_cache: fix.
---
 src/bin/ui/ui_process_list.c | 12 ++----------
 src/bin/ui/ui_process_view.c |  2 +-
 src/bin/ui/ui_util.c         | 14 ++++++++++++--
 src/bin/ui/ui_util.h         |  3 ++-
 4 files changed, 17 insertions(+), 14 deletions(-)

diff --git a/src/bin/ui/ui_process_list.c b/src/bin/ui/ui_process_list.c
index d577d3e..7f15724 100644
--- a/src/bin/ui/ui_process_list.c
+++ b/src/bin/ui/ui_process_list.c
@@ -465,11 +465,6 @@ _content_get(void *data, Evas_Object *obj, const char 
*source)
    struct passwd *pwd_entry;
    Evas_Object *l, *r, *o, *hbx, *pb;
    Evas_Coord w, ow;
-#if defined(__linux__)
-   const char *kernel_icon = "linux";
-#else
-   const char *kernel_icon = "freebsd";
-#endif
    Ui_Data *pd = _private_data;
 
    proc = (void *) data;
@@ -536,10 +531,7 @@ _content_get(void *data, Evas_Object *obj, const char 
*source)
    evas_object_show(l);
 
    o = evas_object_data_get(it->obj, "icon");
-   if (proc->is_kernel)
-     elm_icon_standard_set(o, evisum_icon_path_get(kernel_icon));
-   else
-     elm_icon_standard_set(o, 
evisum_icon_path_get(evisum_icon_cache_find(proc->command)));
+   elm_icon_standard_set(o, 
evisum_icon_path_get(evisum_icon_cache_find(proc)));
    r = evas_object_data_get(o, "rect");
    evas_object_size_hint_min_set(r, w, 1);
    evas_object_show(o);
@@ -1029,7 +1021,7 @@ _item_menu_create(Ui_Data *pd, Proc_Info *proc)
    stopped = !(!strcmp(proc->state, "stop"));
 
    menu_it = elm_menu_item_add(menu, NULL,
-                               
evisum_icon_path_get(evisum_icon_cache_find(proc->command)),
+                               
evisum_icon_path_get(evisum_icon_cache_find(proc)),
                                proc->command, NULL, NULL);
 
    menu_it2 = elm_menu_item_add(menu, menu_it, evisum_icon_path_get("window"),
diff --git a/src/bin/ui/ui_process_view.c b/src/bin/ui/ui_process_view.c
index 7db228d..4ad0acd 100644
--- a/src/bin/ui/ui_process_view.c
+++ b/src/bin/ui/ui_process_view.c
@@ -465,7 +465,7 @@ _tree_icon_get(void *data, Evas_Object *obj, const char 
*part)
 
    if (!strcmp(part, "elm.swallow.icon"))
      {
-        elm_icon_standard_set(ic, 
evisum_icon_path_get(evisum_icon_cache_find(proc->command)));
+        elm_icon_standard_set(ic, 
evisum_icon_path_get(evisum_icon_cache_find(proc)));
      }
 
    evas_object_size_hint_aspect_set(ic, EVAS_ASPECT_CONTROL_VERTICAL, 1, 1);
diff --git a/src/bin/ui/ui_util.c b/src/bin/ui/ui_util.c
index 0ac8da8..030389b 100644
--- a/src/bin/ui/ui_util.c
+++ b/src/bin/ui/ui_util.c
@@ -170,13 +170,23 @@ evisum_icon_cache_shutdown(void)
    eina_hash_free(_icon_cache);
 }
 
+
 const char *
-evisum_icon_cache_find(const char *cmd)
+evisum_icon_cache_find(const Proc_Info *proc)
 {
    Efreet_Desktop *e;
-   const char *name;
+   const char *name, *cmd;
    char *exists;
 
+   if (proc->is_kernel)
+#if defined(__linux__)
+     return "linux";
+#else
+     return "freebsd;
+#endif
+
+   cmd = proc->command;
+
    exists = eina_hash_find(_icon_cache, cmd);
    if (exists) return exists;
 
diff --git a/src/bin/ui/ui_util.h b/src/bin/ui/ui_util.h
index a11d842..976e011 100644
--- a/src/bin/ui/ui_util.h
+++ b/src/bin/ui/ui_util.h
@@ -2,6 +2,7 @@
 #define __UI_UTIL_H__
 
 #include <Evas.h>
+#include "system/process.h"
 
 #define FILL EVAS_HINT_FILL
 #define EXPAND EVAS_HINT_EXPAND
@@ -23,7 +24,7 @@ void
 evisum_icon_cache_shutdown(void);
 
 const char *
-evisum_icon_cache_find(const char *cmd);
+evisum_icon_cache_find(const Proc_Info *proc);
 
 Evas_Object *
 evisum_ui_tab_add(Evas_Object *parent, Evas_Object **alias, const char *text,

-- 


Reply via email to