From 7ab6d05f0bc0c00cfe9a160e8320f4c7de1ae212 Mon Sep 17 00:00:00 2001 From: pythcoiner Date: Mon, 4 Nov 2024 08:26:08 +0100 Subject: [PATCH] gui(send): display max calculated amount w/ 8 decimals --- liana-gui/src/app/view/spend/mod.rs | 16 ++++++++-------- liana-ui/src/component/amount.rs | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/liana-gui/src/app/view/spend/mod.rs b/liana-gui/src/app/view/spend/mod.rs index ec2a26b3..23e7b83f 100644 --- a/liana-gui/src/app/view/spend/mod.rs +++ b/liana-gui/src/app/view/spend/mod.rs @@ -8,7 +8,7 @@ use iced::{ use liana::{ descriptors::LianaPolicy, - miniscript::bitcoin::{bip32::Fingerprint, Amount, Network}, + miniscript::bitcoin::{bip32::Fingerprint, Amount, Denomination, Network}, }; use liana_ui::{ @@ -379,14 +379,14 @@ pub fn recipient_view<'a>( .width(Length::Fixed(110.0)), ) .push_maybe(if is_max_selected { + let amount_txt = Amount::from_str_in(&amount.value, Denomination::Bitcoin) + .ok() + .map(amount_as_string) + .unwrap_or(amount.value.clone()); Some( - Container::new( - text(amount.value.clone()) - .size(P1_SIZE) - .style(color::GREY_2), - ) - .padding(10) - .width(Length::Fill), + Container::new(text(amount_txt).size(P1_SIZE).style(color::GREY_2)) + .padding(10) + .width(Length::Fill), ) } else { None diff --git a/liana-ui/src/component/amount.rs b/liana-ui/src/component/amount.rs index c270462c..603d32c1 100644 --- a/liana-ui/src/component/amount.rs +++ b/liana-ui/src/component/amount.rs @@ -39,7 +39,7 @@ pub fn unconfirmed_amount_with_size<'a, T: 'a>(a: &Amount, size: u16) -> Row<'a, // // Format a BTC amount as a string for display. -fn amount_as_string(a: Amount) -> String { +pub fn amount_as_string(a: Amount) -> String { let amount = a.to_btc().to_string(); // Reformat the integer portion of the amount with space separation.