From 7fc875c7df5ab762654ecc6b5a7dc17a16854483 Mon Sep 17 00:00:00 2001 From: Alastair Poole Date: Tue, 17 Nov 2020 01:53:59 +0000 Subject: [PATCH] process: icon --- src/bin/system/process.c | 1 + src/bin/ui/ui_process_view.c | 30 ++++++++++++++++++++++++++++-- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/src/bin/system/process.c b/src/bin/system/process.c index c453862..353a447 100644 --- a/src/bin/system/process.c +++ b/src/bin/system/process.c @@ -430,6 +430,7 @@ proc_info_by_pid(int pid) p->priority = st.pri; p->nice = st.nice; p->numthreads = st.numthreads; + if (st.flags & PF_KTHREAD) p->is_kernel = 1; _mem_size(p); _cmd_args(p, st.name, sizeof(st.name)); diff --git a/src/bin/ui/ui_process_view.c b/src/bin/ui/ui_process_view.c index 4ad0acd..a839044 100644 --- a/src/bin/ui/ui_process_view.c +++ b/src/bin/ui/ui_process_view.c @@ -591,7 +591,7 @@ _proc_info_update(void *data) elm_object_disabled_set(pd->btn_start, EINA_TRUE); } - elm_object_text_set(pd->entry_pid_cmd, proc->command); + elm_object_text_set(pd->entry_pid_cmd, eina_slstr_printf("%s", proc->command)); pwd_entry = getpwuid(proc->uid); if (pwd_entry) elm_object_text_set(pd->entry_pid_user, pwd_entry->pw_name); @@ -710,6 +710,8 @@ _process_tab_add(Evas_Object *parent, Ui_Data *pd) { Evas_Object *frame, *hbox, *table; Evas_Object *label, *entry, *button, *border, *ic; + Evas_Object *rec; + Proc_Info *proc; int i = 0; int r, g, b, a; @@ -731,9 +733,33 @@ _process_tab_add(Evas_Object *parent, Ui_Data *pd) evas_object_show(table); elm_object_content_set(frame, table); + + rec = evas_object_rectangle_add(evas_object_evas_get(table)); + evas_object_size_hint_min_set(rec, ELM_SCALE_SIZE(64), ELM_SCALE_SIZE(64)); + evas_object_size_hint_max_set(rec, ELM_SCALE_SIZE(64), ELM_SCALE_SIZE(64)); + evas_object_size_hint_align_set(rec, FILL, 1.0); + + elm_table_pack(table, rec, 0, i, 1, 1); + + proc = proc_info_by_pid(pd->selected_pid); + ic = elm_icon_add(parent); + evas_object_size_hint_weight_set(ic, EXPAND, EXPAND); + evas_object_size_hint_align_set(ic, FILL, FILL); + if (proc) + { + elm_icon_standard_set(ic, evisum_icon_path_get(evisum_icon_cache_find(proc))); + evas_object_show(ic); + proc_info_free(proc); + elm_table_pack(table, ic, 0, i, 1, 1); + } + label = _label_add(parent, _("Command:")); elm_table_pack(table, label, 0, i, 1, 1); - pd->entry_pid_cmd = entry = _entry_add(parent); + pd->entry_pid_cmd = entry = elm_label_add(parent); + evas_object_size_hint_weight_set(entry, EXPAND, EXPAND); + evas_object_size_hint_align_set(entry, 0.0, 0.5); + evas_object_show(entry); + evas_object_hide(label); elm_table_pack(table, entry, 1, i++, 1, 1); label = _label_add(parent, _("Command line:"));