fix receive panel: reset addresses on reload

We reintroduce previous behaviour:
Reset the list when user leave and come back to the receive panel.
This commit is contained in:
edouardparis 2024-03-25 14:56:07 +01:00
parent 05e4e38e68
commit 65f4a75813

View File

@ -40,12 +40,6 @@ pub struct Addresses {
labels: HashMap<String, String>,
}
impl Addresses {
fn is_empty(&self) -> bool {
self.list.is_empty()
}
}
impl Labelled for Addresses {
fn labelled(&self) -> Vec<LabelItem> {
self.list
@ -200,21 +194,17 @@ impl State for ReceivePanel {
wallet: Arc<Wallet>,
) -> Command<Message> {
self.wallet = wallet;
// Fill at least with one address, user will then use the generate button.
if self.addresses.is_empty() {
let daemon = daemon.clone();
Command::perform(
async move {
daemon
.get_new_address()
.map(|res| (res.address, res.derivation_index))
.map_err(|e| e.into())
},
Message::ReceiveAddress,
)
} else {
Command::none()
}
self.addresses = Addresses::default();
let daemon = daemon.clone();
Command::perform(
async move {
daemon
.get_new_address()
.map(|res| (res.address, res.derivation_index))
.map_err(|e| e.into())
},
Message::ReceiveAddress,
)
}
}