This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch master
in repository evisum.

View the commit online.

commit 13ef05e7a1ce931e5d05861e2f4f071953701e9d
Author: Alastair Poole <[email protected]>
AuthorDate: Tue Apr 28 18:47:28 2026 +0100

    process_list: recreate progressbar.
    
    Ensure our progress bar will pulse on each snapshot change.
---
 src/bin/ui/evisum_ui_process_list.c | 40 ++++++++++++++++++++++++++-----------
 1 file changed, 28 insertions(+), 12 deletions(-)

diff --git a/src/bin/ui/evisum_ui_process_list.c b/src/bin/ui/evisum_ui_process_list.c
index 206cf14..9fbfd33 100644
--- a/src/bin/ui/evisum_ui_process_list.c
+++ b/src/bin/ui/evisum_ui_process_list.c
@@ -51,6 +51,7 @@ typedef struct {
 
     struct {
         Evas_Object *pop;
+        Evas_Object *fr;
         Evas_Object *pb;
         Eina_Bool visible;
     } loader;
@@ -718,15 +719,37 @@ _evisum_ui_process_list_loader_position(Evisum_Ui_Process_List_View *view) {
     evas_object_move(view->loader.pop, w / 2, h / 2);
 }
 
+static void
+_evisum_ui_process_list_loader_progressbar_reset(Evisum_Ui_Process_List_View *view) {
+    Evas_Object *pb;
+
+    if (!view->loader.fr) return;
+
+    if (view->loader.pb) {
+        evas_object_del(view->loader.pb);
+        view->loader.pb = NULL;
+    }
+
+    view->loader.pb = pb = elm_progressbar_add(view->loader.fr);
+    elm_progressbar_unit_format_set(pb, "");
+    elm_progressbar_span_size_set(pb, ELM_SCALE_SIZE(220));
+    elm_progressbar_pulse_set(pb, EINA_TRUE);
+    evas_object_size_hint_weight_set(pb, 0, 0);
+    evas_object_size_hint_align_set(pb, FILL, 0.5);
+    evas_object_show(pb);
+    elm_object_content_set(view->loader.fr, pb);
+}
+
 static void
 _evisum_ui_process_list_loader_show(Evisum_Ui_Process_List_View *view) {
     if (!view->loader.pop) return;
     if (view->loader.visible) return;
 
+    _evisum_ui_process_list_loader_progressbar_reset(view);
     _evisum_ui_process_list_loader_position(view);
     evas_object_raise(view->loader.pop);
-    elm_progressbar_pulse(view->loader.pb, EINA_TRUE);
     evas_object_show(view->loader.pop);
+    if (view->loader.pb) elm_progressbar_pulse(view->loader.pb, EINA_TRUE);
     view->loader.visible = EINA_TRUE;
 }
 
@@ -734,7 +757,7 @@ static void
 _evisum_ui_process_list_loader_hide(Evisum_Ui_Process_List_View *view) {
     if (!view->loader.pop || !view->loader.visible) return;
 
-    elm_progressbar_pulse(view->loader.pb, EINA_FALSE);
+    if (view->loader.pb) elm_progressbar_pulse(view->loader.pb, EINA_FALSE);
     evas_object_lower(view->loader.pop);
     evas_object_hide(view->loader.pop);
     view->loader.visible = EINA_FALSE;
@@ -742,7 +765,7 @@ _evisum_ui_process_list_loader_hide(Evisum_Ui_Process_List_View *view) {
 
 static void
 _evisum_ui_process_list_loader_add(Evisum_Ui_Process_List_View *view) {
-    Evas_Object *tb, *fr, *rec, *pb;
+    Evas_Object *tb, *fr, *rec;
 
     view->loader.pop = tb = elm_table_add(view->win);
     evas_object_lower(tb);
@@ -752,19 +775,12 @@ _evisum_ui_process_list_loader_add(Evisum_Ui_Process_List_View *view) {
     evas_object_size_hint_max_set(rec, ELM_SCALE_SIZE(220), ELM_SCALE_SIZE(128));
     elm_table_pack(tb, rec, 0, 0, 1, 1);
 
-    fr = elm_frame_add(view->win);
+    view->loader.fr = fr = elm_frame_add(view->win);
     elm_object_text_set(fr, _("Loading snapshot"));
     evas_object_size_hint_weight_set(fr, 0, 0);
     evas_object_size_hint_align_set(fr, FILL, 0.5);
 
-    view->loader.pb = pb = elm_progressbar_add(fr);
-    elm_progressbar_unit_format_set(pb, "");
-    elm_progressbar_span_size_set(pb, ELM_SCALE_SIZE(220));
-    elm_progressbar_pulse_set(pb, EINA_TRUE);
-    evas_object_size_hint_weight_set(pb, 0, 0);
-    evas_object_size_hint_align_set(pb, FILL, 0.5);
-    evas_object_show(pb);
-    elm_object_content_set(fr, pb);
+    _evisum_ui_process_list_loader_progressbar_reset(view);
     elm_table_pack(tb, fr, 0, 0, 1, 1);
     evas_object_show(fr);
 }

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to