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 059a3065a5c4e357bf0d3f76992c7b385ecc93b5
Author: Alastair Poole <[email protected]>
AuthorDate: Mon Jun 1 18:35:57 2026 +0100
disk: use "double" progressbar style for read/write.
---
src/bin/ui/evisum_ui_disk.c | 34 ++++++++++++++++++++++++++++++----
1 file changed, 30 insertions(+), 4 deletions(-)
diff --git a/src/bin/ui/evisum_ui_disk.c b/src/bin/ui/evisum_ui_disk.c
index de434aa..38ff6f9 100644
--- a/src/bin/ui/evisum_ui_disk.c
+++ b/src/bin/ui/evisum_ui_disk.c
@@ -203,10 +203,12 @@ _evisum_ui_disk_legend_swatch_add(Disk_History *entry, Disk_Line line, Evas_Obje
static void
_evisum_ui_disk_history_legend_add(Evisum_Ui_Disk_View *view, Disk_History *entry, Disk_Line line) {
Evas_Object *left, *lb, *pb;
+ Eina_Bool transfer_mode;
if (!view->legend_tb) return;
- if (_evisum_ui_disk_transfer_mode_get(view)) {
+ transfer_mode = _evisum_ui_disk_transfer_mode_get(view);
+ if (transfer_mode) {
line = DISK_LINE_READ;
if (entry->legend_row[line]) return;
} else if (entry->legend_row[line]) return;
@@ -218,7 +220,7 @@ _evisum_ui_disk_history_legend_add(Evisum_Ui_Disk_View *view, Disk_History *entr
evas_object_size_hint_align_set(left, EVAS_HINT_FILL, 0.5);
evas_object_show(left);
- if (_evisum_ui_disk_transfer_mode_get(view)) {
+ if (transfer_mode) {
_evisum_ui_disk_legend_swatch_add(entry, DISK_LINE_READ, left);
_evisum_ui_disk_legend_swatch_add(entry, DISK_LINE_WRITE, left);
} else _evisum_ui_disk_legend_swatch_add(entry, DISK_LINE_USAGE, left);
@@ -231,9 +233,14 @@ _evisum_ui_disk_history_legend_add(Evisum_Ui_Disk_View *view, Disk_History *entr
evas_object_show(lb);
pb = elm_progressbar_add(view->legend_tb);
+ if (transfer_mode) elm_object_style_set(pb, "double");
elm_object_text_set(pb, NULL);
elm_progressbar_span_size_set(pb, ELM_SCALE_SIZE(220));
elm_progressbar_unit_format_set(pb, _("0 B / 0 B"));
+ if (transfer_mode) {
+ elm_progressbar_part_value_set(pb, "elm.cur.progressbar", 0.0);
+ elm_progressbar_part_value_set(pb, "elm.cur.progressbar1", 0.0);
+ }
evas_object_size_hint_weight_set(pb, EVAS_HINT_EXPAND, 0.0);
evas_object_size_hint_align_set(pb, EVAS_HINT_FILL, 0.5);
evas_object_show(pb);
@@ -267,6 +274,19 @@ _evisum_ui_disk_transfer_format(char *buf, size_t buflen, uint64_t rate) {
snprintf(buf, buflen, "%s/s", evisum_size_format(rate, 0));
}
+static double
+_evisum_ui_disk_progress_ratio_get(uint64_t value, double max) {
+ double ratio;
+
+ if (max < 1.0) return 0.0;
+
+ ratio = (double)value / max;
+ if (ratio < 0.0) return 0.0;
+ if (ratio > 1.0) return 1.0;
+
+ return ratio;
+}
+
static void
_evisum_ui_disk_history_legend_update(Disk_History *entry, const File_System *fs, double used_percent,
double transfer_peak) {
@@ -281,9 +301,15 @@ _evisum_ui_disk_history_legend_update(Disk_History *entry, const File_System *fs
if (entry->legend_label[DISK_LINE_READ])
elm_object_text_set(entry->legend_label[DISK_LINE_READ], entry->name ? entry->name : entry->key);
if (entry->legend_pb[DISK_LINE_READ]) {
- double value = fs->usage.read > fs->usage.write ? (double) fs->usage.read : (double) fs->usage.write;
+ double read = entry->enabled[DISK_LINE_READ]
+ ? _evisum_ui_disk_progress_ratio_get(fs->usage.read, transfer_peak)
+ : 0.0;
+ double write = entry->enabled[DISK_LINE_WRITE]
+ ? _evisum_ui_disk_progress_ratio_get(fs->usage.write, transfer_peak)
+ : 0.0;
- elm_progressbar_value_set(entry->legend_pb[DISK_LINE_READ], value / transfer_peak);
+ elm_progressbar_part_value_set(entry->legend_pb[DISK_LINE_READ], "elm.cur.progressbar", read);
+ elm_progressbar_part_value_set(entry->legend_pb[DISK_LINE_READ], "elm.cur.progressbar1", write);
elm_progressbar_unit_format_set(entry->legend_pb[DISK_LINE_READ],
eina_slstr_printf(_("Read %s | Write %s"), read_buf, write_buf));
}
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.