[pdm-devel] [PATCH datacenter-manager] ui: remotes: use ConfirmButton component instead of ConfirmDialog

Dominik Csapak d.csapak at proxmox.com
Thu Dec 19 13:32:50 CET 2024


content and functionality wise all 3 patches look good to me
(and work fine in my testing)

On 12/19/24 12:00, Shannon Sterz wrote:
> Signed-off-by: Shannon Sterz <s.sterz at proxmox.com>
> ---
>   ui/src/remotes/mod.rs | 26 +++++++++-----------------
>   1 file changed, 9 insertions(+), 17 deletions(-)
> 
> diff --git a/ui/src/remotes/mod.rs b/ui/src/remotes/mod.rs
> index c9a4e43..9b9de06 100644
> --- a/ui/src/remotes/mod.rs
> +++ b/ui/src/remotes/mod.rs
> @@ -27,8 +27,6 @@ use anyhow::Error;
>   use edit_remote::EditRemote;
>   //use pwt::widget::form::{Field, FormContext, InputType};
>   
> -use pwt::widget::ConfirmDialog;
> -
>   use pdm_api_types::remotes::Remote;
>   //use proxmox_schema::{property_string::PropertyString, ApiType};
>   use proxmox_yew_comp::percent_encoding::percent_encode_component;
> @@ -54,7 +52,9 @@ use pwt::widget::{
>   //use pwt::widget::InputPanel;
>   
>   //use proxmox_yew_comp::EditWindow;
> -use proxmox_yew_comp::{LoadableComponent, LoadableComponentContext, LoadableComponentMaster};
> +use proxmox_yew_comp::{
> +    ConfirmButton, LoadableComponent, LoadableComponentContext, LoadableComponentMaster,
> +};
>   
>   use pdm_api_types::remotes::{NodeUrl, RemoteType};
>   
> @@ -120,7 +120,6 @@ impl RemoteConfigPanel {
>   pub enum ViewState {
>       Add(RemoteType),
>       Edit,
> -    ConfirmRemove,
>   }
>   
>   pub enum Msg {
> @@ -220,10 +219,12 @@ impl LoadableComponent for PbsRemoteConfigPanel {
>                       .disabled(disabled)
>                       .onclick(link.change_view_callback(|_| Some(ViewState::Edit))),
>               )
> -            .with_child(Button::new(tr!("Remove")).disabled(disabled).onclick({
> -                let link = link.clone();
> -                move |_| link.change_view(Some(ViewState::ConfirmRemove))
> -            }))
> +            .with_child(
> +                ConfirmButton::new(tr!("Remove"))
> +                    .confirm_message(tr!("Are you sure you want to remove this remote?"))
> +                    .disabled(disabled)
> +                    .on_activate(link.callback(|_| Msg::RemoveItem)),
> +            )
>               .with_flex_spacer()
>               .with_child({
>                   let loading = ctx.loading();
> @@ -257,15 +258,6 @@ impl LoadableComponent for PbsRemoteConfigPanel {
>                   .selection
>                   .selected_key()
>                   .map(|key| self.create_edit_dialog(ctx, key)),
> -            ViewState::ConfirmRemove => self.selection.selected_key().map(|key| {
> -                ConfirmDialog::new()
> -                    .title(tr!("Confirm: Remove Remote"))
> -                    .confirm_text(tr!("Remove"))
> -                    .confirm_message(tr!("Are you sure you want to remove the remote '{0}' ?", key))
> -                    .on_confirm(ctx.link().callback(|_| Msg::RemoveItem))
> -                    .on_done(ctx.link().change_view_callback(|_| None))
> -                    .into()
> -            }),

this hunk has a merge conflict with:

https://lists.proxmox.com/pipermail/pdm-devel/2024-December/000012.html

due to an accidental rustfmt hunk there

>           }
>       }
>   }





More information about the pdm-devel mailing list