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 764ad73f8d91422a967074bdfb767d8c5f9d735b
Author: Alastair Poole <[email protected]>
AuthorDate: Mon Mar 30 05:43:44 2026 +0100
bugs bugs bugs
---
NEWS | 1 +
src/bin/ui/evisum_ui.c | 7 ++++++-
src/bin/ui/evisum_ui_process_list.c | 1 +
src/bin/ui/evisum_ui_widget_exel.c | 7 +++++--
4 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/NEWS b/NEWS
index ecf3365..2bb94ae 100644
--- a/NEWS
+++ b/NEWS
@@ -16,6 +16,7 @@ Evisum 1.2.0-beta
* Use evas_vg and vectors for our graphs.
* Add disk i/o tracking (Linux only).
* Fix process view window resize so it remembers.
+ * Columns in widget can reorder.
============
Evisum 1.1.0
diff --git a/src/bin/ui/evisum_ui.c b/src/bin/ui/evisum_ui.c
index 4c4b7ab..bff9d67 100644
--- a/src/bin/ui/evisum_ui.c
+++ b/src/bin/ui/evisum_ui.c
@@ -24,10 +24,15 @@ static void
_proc_field_order_sanitize(int *order) {
unsigned char seen[EVISUM_PROC_FIELD_WIDTHS_MAX] = { 0 };
int out[EVISUM_PROC_FIELD_WIDTHS_MAX] = { 0 };
- int pos = PROC_FIELD_CMD;
+ int pos;
if (!order) return;
+ /* Keep command fixed in the first position. */
+ out[PROC_FIELD_CMD] = PROC_FIELD_CMD;
+ seen[PROC_FIELD_CMD] = 1;
+ pos = PROC_FIELD_CMD + 1;
+
for (int i = PROC_FIELD_CMD; i < PROC_FIELD_MAX; i++) {
int id = order[i];
if ((id >= PROC_FIELD_CMD) && (id < PROC_FIELD_MAX) && !seen[id]) {
diff --git a/src/bin/ui/evisum_ui_process_list.c b/src/bin/ui/evisum_ui_process_list.c
index c4d7eda..1ac50c5 100644
--- a/src/bin/ui/evisum_ui_process_list.c
+++ b/src/bin/ui/evisum_ui_process_list.c
@@ -1687,6 +1687,7 @@ evisum_ui_process_list_win_add(Evisum_Ui *ui) {
_evisum_ui_process_list_feedback_cb(view, NULL, _evisum_ui_process_list_get(view));
_evisum_ui_process_list_win_resize_cb(view, NULL, win, NULL);
+ view->skip_wait = 1;
view->thread = ecore_thread_feedback_run(_evisum_ui_process_list_process_list, _evisum_ui_process_list_feedback_cb,
NULL, NULL, view, 0);
}
diff --git a/src/bin/ui/evisum_ui_widget_exel.c b/src/bin/ui/evisum_ui_widget_exel.c
index c283ebd..87ae20c 100644
--- a/src/bin/ui/evisum_ui_widget_exel.c
+++ b/src/bin/ui/evisum_ui_widget_exel.c
@@ -98,7 +98,10 @@ _evisum_ui_widget_exel_field_order_sanitize(Evisum_Ui_Widget_Exel *wx) {
if (!wx || !wx->p.field_order) return;
- pos = wx->p.field_first;
+ /* Keep the first field pinned (e.g. command column). */
+ out[wx->p.field_first] = wx->p.field_first;
+ seen[wx->p.field_first] = 1;
+ pos = wx->p.field_first + 1;
for (int i = wx->p.field_first; i < wx->p.field_max; i++) {
int id = wx->p.field_order[i];
if (id < wx->p.field_first || id >= wx->p.field_max) continue;
@@ -422,7 +425,7 @@ _evisum_ui_widget_exel_reorder_commit(Evisum_Ui_Widget_Exel *wx, Evas_Coord x) {
if (!changed) return EINA_FALSE;
wx->ignore_sort_click = 1;
- if (wx->header_tb) {
+ if (!wx->p.fields_reordered_cb && wx->header_tb) {
elm_table_clear(wx->header_tb, EINA_FALSE);
evisum_ui_widget_exel_fields_pack_visible(wx, wx->header_tb, 0);
}
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.