[pdm-devel] [PATCH yew-comp 2/2] tasks: add loading animation for running tasks
Dominik Csapak
d.csapak at proxmox.com
Tue Mar 18 15:32:51 CET 2025
when there is no endtime and the status is either empty or "RUNNING"
(for PVE), render a spinning loading icon, like we do in the ExtJS UI.
Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
src/tasks.rs | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)
diff --git a/src/tasks.rs b/src/tasks.rs
index 499f5b9..1d3b0bf 100644
--- a/src/tasks.rs
+++ b/src/tasks.rs
@@ -17,7 +17,7 @@ use pwt::state::{PersistentState, Selection, Store};
use pwt::widget::data_table::{
DataTable, DataTableColumn, DataTableHeader, DataTableRowRenderCallback,
};
-use pwt::widget::{Button, Column, Toolbar};
+use pwt::widget::{Button, Column, Fa, Row, Toolbar};
use crate::utils::{format_upid, render_epoch_short};
@@ -122,7 +122,11 @@ impl ProxmoxTasks {
.width("130px")
.render(|item: &TaskListItem| match item.endtime {
Some(endtime) => render_epoch_short(endtime).into(),
- None => html! {},
+ None => Row::new()
+ .with_flex_spacer()
+ .with_child(Fa::new("").class("pwt-loading-icon"))
+ .with_flex_spacer()
+ .into(),
})
.into(),
DataTableColumn::new(tr!("User name"))
@@ -139,7 +143,14 @@ impl ProxmoxTasks {
.width("200px")
.render(|item: &TaskListItem| {
let text = item.status.as_deref().unwrap_or("");
- html! {text}
+ match text {
+ "" | "RUNNING" => Row::new()
+ .with_flex_spacer()
+ .with_child(Fa::new("").class("pwt-loading-icon"))
+ .with_flex_spacer()
+ .into(),
+ text => html! {text},
+ }
})
.into(),
])
--
2.39.5
More information about the pdm-devel
mailing list