netstar pushed a commit to branch master.

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

commit edd8923326c22960f83e82665f8ffdeb62aeca4a
Author: Alastair Poole <[email protected]>
Date:   Wed Jun 17 11:06:45 2020 +0100

    ui: track proc state properly
---
 src/bin/ui/ui.c              |  6 +++---
 src/bin/ui/ui_misc.c         |  5 +++--
 src/bin/ui/ui_process_view.c | 20 +++++++++++++++++---
 src/bin/ui/ui_process_view.h |  3 +++
 4 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/src/bin/ui/ui.c b/src/bin/ui/ui.c
index efa2ea2..d1761b6 100644
--- a/src/bin/ui/ui.c
+++ b/src/bin/ui/ui.c
@@ -828,7 +828,7 @@ _item_menu_create(Ui *ui, Proc_Info *proc)
    evas_object_smart_callback_add(menu, "dismissed",
                    _item_menu_dismissed_cb, ui);
 
-   stopped = !!strcmp(proc->state, "stop");
+   stopped = !(!strcmp(proc->state, "stop"));
 
    menu_it = elm_menu_item_add(menu, NULL, evisum_icon_path_get("window"),
                    proc->command, NULL, NULL);
@@ -841,11 +841,11 @@ _item_menu_create(Ui *ui, Proc_Info *proc)
    menu_it2 = elm_menu_item_add(menu, menu_it, evisum_icon_path_get("start"),
                    _("Start"), _item_menu_start_cb, proc);
 
-   if (stopped) elm_object_item_disabled_set(menu_it2, EINA_TRUE);
+   elm_object_item_disabled_set(menu_it2, stopped);
    menu_it2 = elm_menu_item_add(menu, menu_it, evisum_icon_path_get("stop"),
                    _("Stop"), _item_menu_stop_cb, proc);
 
-   if (!stopped) elm_object_item_disabled_set(menu_it2, EINA_TRUE);
+   elm_object_item_disabled_set(menu_it2, !stopped);
    elm_menu_item_add(menu, menu_it, evisum_icon_path_get("kill"), "Kill",
                    _item_menu_kill_cb, proc);
 
diff --git a/src/bin/ui/ui_misc.c b/src/bin/ui/ui_misc.c
index e978041..9a4cf27 100644
--- a/src/bin/ui/ui_misc.c
+++ b/src/bin/ui/ui_misc.c
@@ -289,12 +289,13 @@ ui_tab_misc_update(Ui *ui, Sys_Info *sysinfo)
    evas_object_size_hint_weight_set(box, EXPAND, EXPAND);
    evas_object_show(box);
 
+   _network_usage_add(ui, box, sysinfo->incoming, EINA_TRUE);
+   _network_usage_add(ui, box, sysinfo->outgoing, EINA_FALSE);
+   _separator_add(box);
    if (_battery_usage_add(box, &sysinfo->power))
      _separator_add(box);
    if (_sensor_usage_add(box, sysinfo))
      _separator_add(box);
-   _network_usage_add(ui, box, sysinfo->incoming, EINA_TRUE);
-   _network_usage_add(ui, box, sysinfo->outgoing, EINA_FALSE);
 
    frame = elm_frame_add(ui->misc_activity);
    evas_object_size_hint_align_set(frame, FILL, FILL);
diff --git a/src/bin/ui/ui_process_view.c b/src/bin/ui/ui_process_view.c
index 1099592..7c8f4ec 100644
--- a/src/bin/ui/ui_process_view.c
+++ b/src/bin/ui/ui_process_view.c
@@ -360,9 +360,23 @@ _proc_info_update(void *data)
         _win_title_set(ui->win, _("%s (%d) - Not running"), ui->selected_cmd,
                        ui->selected_pid);
 
+        elm_object_disabled_set(ui->btn_start, EINA_TRUE);
+        elm_object_disabled_set(ui->btn_stop, EINA_TRUE);
+        elm_object_disabled_set(ui->btn_kill, EINA_TRUE);
         return ECORE_CALLBACK_CANCEL;
      }
 
+   if (!strcmp(proc->state, "stop"))
+     {
+        elm_object_disabled_set(ui->btn_stop, EINA_TRUE);
+        elm_object_disabled_set(ui->btn_start, EINA_FALSE);
+     }
+   else
+     {
+        elm_object_disabled_set(ui->btn_stop, EINA_FALSE);
+        elm_object_disabled_set(ui->btn_start, EINA_TRUE);
+     }
+
    elm_object_text_set(ui->entry_pid_cmd, proc->command);
    pwd_entry = getpwuid(proc->uid);
    if (pwd_entry)
@@ -587,7 +601,7 @@ _process_tab_add(Evas_Object *parent, Ui_Process *ui)
    elm_object_style_set(border, "pad_small");
    evas_object_show(border);
 
-   button = elm_button_add(parent);
+   ui->btn_stop = button = elm_button_add(parent);
    evas_object_size_hint_weight_set(button, EXPAND, EXPAND);
    evas_object_size_hint_align_set(button, FILL, FILL);
    elm_object_text_set(button, _("Stop"));
@@ -602,7 +616,7 @@ _process_tab_add(Evas_Object *parent, Ui_Process *ui)
    elm_object_style_set(border, "pad_small");
    evas_object_show(border);
 
-   button = elm_button_add(parent);
+   ui->btn_start = button = elm_button_add(parent);
    evas_object_size_hint_weight_set(button, EXPAND, EXPAND);
    evas_object_size_hint_align_set(button, FILL, FILL);
    elm_object_text_set(button, _("Start"));
@@ -617,7 +631,7 @@ _process_tab_add(Evas_Object *parent, Ui_Process *ui)
    elm_object_style_set(border, "pad_small");
    evas_object_show(border);
 
-   button = elm_button_add(parent);
+   ui->btn_kill = button = elm_button_add(parent);
    evas_object_size_hint_weight_set(button, EXPAND, EXPAND);
    evas_object_size_hint_align_set(button, FILL, FILL);
    elm_object_text_set(button, _("Kill"));
diff --git a/src/bin/ui/ui_process_view.h b/src/bin/ui/ui_process_view.h
index e382a4a..19a3876 100644
--- a/src/bin/ui/ui_process_view.h
+++ b/src/bin/ui/ui_process_view.h
@@ -36,6 +36,9 @@ typedef struct _Ui_Process {
    Evas_Object  *entry_pid_pri;
    Evas_Object  *entry_pid_state;
    Evas_Object  *entry_pid_cpu_usage;
+   Evas_Object  *btn_start;
+   Evas_Object  *btn_stop;
+   Evas_Object  *btn_kill;
 
    Evas_Object  *btn_thread_id;
    Evas_Object  *btn_thread_name;

-- 


Reply via email to