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