netstar pushed a commit to branch master.

http://git.enlightenment.org/apps/evisum.git/commit/?id=714470e0202802a3c27ca2fc4a331532852a4bb8

commit 714470e0202802a3c27ca2fc4a331532852a4bb8
Author: Alastair Poole <nets...@gmail.com>
Date:   Thu Nov 12 03:56:37 2020 +0000

    ui; little tweak...
    
    rem license
---
 data/images/freebsd.png      | Bin 0 -> 25406 bytes
 data/images/meson.build      |   2 +-
 src/bin/system/process.c     |   3 +++
 src/bin/system/process.h     |   1 +
 src/bin/ui/ui_process_list.c |  10 +++++++++-
 5 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/data/images/freebsd.png b/data/images/freebsd.png
new file mode 100644
index 0000000..5e862ea
Binary files /dev/null and b/data/images/freebsd.png differ
diff --git a/data/images/meson.build b/data/images/meson.build
index 14a0317..5b96c99 100644
--- a/data/images/meson.build
+++ b/data/images/meson.build
@@ -10,5 +10,5 @@ install_data('go-up.png', 'go-down.png',
              'sky_04.jpg', 'effects.png', 'info.png',
              'clo.png', 'bolt.png', 'menu.png',
              'lovethisdogharvey.png', 'application.png',
-             'e.png', 'border.png',
+             'e.png', 'border.png', 'freebsd.png',
              install_dir: join_paths(dir_data, 'evisum/images'))
diff --git a/src/bin/system/process.c b/src/bin/system/process.c
index f94152f..6054b40 100644
--- a/src/bin/system/process.c
+++ b/src/bin/system/process.c
@@ -365,6 +365,8 @@ _process_list_linux_get(void)
         p->nice = st.nice;
         p->priority = st.pri;
         p->numthreads = st.numthreads;
+        if (st->flags & PF_KTHREAD)
+          p->is_kernel = 1;
         _mem_size(p);
         _cmd_args(p, st.name, sizeof(st.name));
 
@@ -925,6 +927,7 @@ _proc_thread_info(struct kinfo_proc *kp, Eina_Bool 
is_thread)
 
    p->tid = kp->ki_tid;
    p->thread_name = strdup(kp->ki_tdname);
+   if (kp->ki_flag & P_KPROC) p->is_kernel = 1;
 
    return p;
 }
diff --git a/src/bin/system/process.h b/src/bin/system/process.h
index 83da6ae..0d39879 100644
--- a/src/bin/system/process.h
+++ b/src/bin/system/process.h
@@ -31,6 +31,7 @@ typedef struct _Proc_Info
    char       *arguments;
    const char *state;
 
+   short       is_kernel;
    int         tid;
    char       *thread_name;
 
diff --git a/src/bin/ui/ui_process_list.c b/src/bin/ui/ui_process_list.c
index e50fdd5..e93e5ab 100644
--- a/src/bin/ui/ui_process_list.c
+++ b/src/bin/ui/ui_process_list.c
@@ -450,6 +450,11 @@ _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;
@@ -516,7 +521,10 @@ _content_get(void *data, Evas_Object *obj, const char 
*source)
    evas_object_show(l);
 
    o = evas_object_data_get(it->obj, "icon");
-   elm_icon_standard_set(o, 
evisum_icon_path_get(evisum_icon_cache_find(proc->command)));
+   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)));
    r = evas_object_data_get(o, "rect");
    evas_object_size_hint_min_set(r, w, 1);
    evas_object_show(o);

-- 


Reply via email to