Remove bitcoind from settings panel if remote backend
This commit is contained in:
parent
5e2fe3b6c1
commit
3b60a57bd4
@ -58,6 +58,7 @@ impl Panels {
|
|||||||
cache: &Cache,
|
cache: &Cache,
|
||||||
wallet: Arc<Wallet>,
|
wallet: Arc<Wallet>,
|
||||||
data_dir: PathBuf,
|
data_dir: PathBuf,
|
||||||
|
daemon_backend: DaemonBackend,
|
||||||
internal_bitcoind: Option<&Bitcoind>,
|
internal_bitcoind: Option<&Bitcoind>,
|
||||||
) -> Panels {
|
) -> Panels {
|
||||||
Self {
|
Self {
|
||||||
@ -77,6 +78,7 @@ impl Panels {
|
|||||||
settings: state::SettingsState::new(
|
settings: state::SettingsState::new(
|
||||||
data_dir,
|
data_dir,
|
||||||
wallet.clone(),
|
wallet.clone(),
|
||||||
|
daemon_backend,
|
||||||
internal_bitcoind.is_some(),
|
internal_bitcoind.is_some(),
|
||||||
),
|
),
|
||||||
}
|
}
|
||||||
@ -134,7 +136,13 @@ impl App {
|
|||||||
data_dir: PathBuf,
|
data_dir: PathBuf,
|
||||||
internal_bitcoind: Option<Bitcoind>,
|
internal_bitcoind: Option<Bitcoind>,
|
||||||
) -> (App, Command<Message>) {
|
) -> (App, Command<Message>) {
|
||||||
let mut panels = Panels::new(&cache, wallet.clone(), data_dir, internal_bitcoind.as_ref());
|
let mut panels = Panels::new(
|
||||||
|
&cache,
|
||||||
|
wallet.clone(),
|
||||||
|
data_dir,
|
||||||
|
daemon.backend(),
|
||||||
|
internal_bitcoind.as_ref(),
|
||||||
|
);
|
||||||
let cmd = panels.home.reload(daemon.clone(), wallet.clone());
|
let cmd = panels.home.reload(daemon.clone(), wallet.clone());
|
||||||
(
|
(
|
||||||
Self {
|
Self {
|
||||||
|
|||||||
@ -21,15 +21,22 @@ pub struct SettingsState {
|
|||||||
data_dir: PathBuf,
|
data_dir: PathBuf,
|
||||||
wallet: Arc<Wallet>,
|
wallet: Arc<Wallet>,
|
||||||
setting: Option<Box<dyn State>>,
|
setting: Option<Box<dyn State>>,
|
||||||
|
daemon_backend: DaemonBackend,
|
||||||
internal_bitcoind: bool,
|
internal_bitcoind: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl SettingsState {
|
impl SettingsState {
|
||||||
pub fn new(data_dir: PathBuf, wallet: Arc<Wallet>, internal_bitcoind: bool) -> Self {
|
pub fn new(
|
||||||
|
data_dir: PathBuf,
|
||||||
|
wallet: Arc<Wallet>,
|
||||||
|
daemon_backend: DaemonBackend,
|
||||||
|
internal_bitcoind: bool,
|
||||||
|
) -> Self {
|
||||||
Self {
|
Self {
|
||||||
data_dir,
|
data_dir,
|
||||||
wallet,
|
wallet,
|
||||||
setting: None,
|
setting: None,
|
||||||
|
daemon_backend,
|
||||||
internal_bitcoind,
|
internal_bitcoind,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -97,7 +104,7 @@ impl State for SettingsState {
|
|||||||
if let Some(setting) = &self.setting {
|
if let Some(setting) = &self.setting {
|
||||||
setting.view(cache)
|
setting.view(cache)
|
||||||
} else {
|
} else {
|
||||||
view::settings::list(cache)
|
view::settings::list(cache, self.daemon_backend == DaemonBackend::RemoteBackend)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -32,7 +32,7 @@ use crate::{
|
|||||||
hw::HardwareWallet,
|
hw::HardwareWallet,
|
||||||
};
|
};
|
||||||
|
|
||||||
pub fn list(cache: &Cache) -> Element<Message> {
|
pub fn list(cache: &Cache, is_remote_backend: bool) -> Element<Message> {
|
||||||
dashboard(
|
dashboard(
|
||||||
&Menu::Settings,
|
&Menu::Settings,
|
||||||
cache,
|
cache,
|
||||||
@ -44,23 +44,27 @@ pub fn list(cache: &Cache) -> Element<Message> {
|
|||||||
Button::new(text("Settings").size(30).bold())
|
Button::new(text("Settings").size(30).bold())
|
||||||
.style(theme::Button::Transparent)
|
.style(theme::Button::Transparent)
|
||||||
.on_press(Message::Menu(Menu::Settings)))
|
.on_press(Message::Menu(Menu::Settings)))
|
||||||
.push(
|
.push_maybe(
|
||||||
Container::new(
|
if !is_remote_backend {
|
||||||
Button::new(
|
Some(Container::new(
|
||||||
Row::new()
|
Button::new(
|
||||||
.push(badge::Badge::new(icon::bitcoin_icon()))
|
Row::new()
|
||||||
.push(text("Bitcoin Core").bold())
|
.push(badge::Badge::new(icon::bitcoin_icon()))
|
||||||
.padding(10)
|
.push(text("Bitcoin Core").bold())
|
||||||
.spacing(20)
|
.padding(10)
|
||||||
.align_items(Alignment::Center)
|
.spacing(20)
|
||||||
.width(Length::Fill),
|
.align_items(Alignment::Center)
|
||||||
|
.width(Length::Fill),
|
||||||
|
)
|
||||||
|
.width(Length::Fill)
|
||||||
|
.style(theme::Button::TransparentBorder)
|
||||||
|
.on_press(Message::Settings(SettingsMessage::EditBitcoindSettings))
|
||||||
)
|
)
|
||||||
.width(Length::Fill)
|
.width(Length::Fill)
|
||||||
.style(theme::Button::TransparentBorder)
|
.style(theme::Container::Card(theme::Card::Simple)))
|
||||||
.on_press(Message::Settings(SettingsMessage::EditBitcoindSettings))
|
} else {
|
||||||
)
|
None
|
||||||
.width(Length::Fill)
|
}
|
||||||
.style(theme::Container::Card(theme::Card::Simple))
|
|
||||||
)
|
)
|
||||||
.push(
|
.push(
|
||||||
Container::new(
|
Container::new(
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user