mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-11-26 01:18:28 +00:00
refactor(core): move show_mismatch to UiFeatures
This commit is contained in:
parent
c4bd129ddc
commit
2692743608
@ -299,6 +299,16 @@ extern "C" fn new_show_lockscreen(n_args: usize, args: *const Obj, kwargs: *mut
|
|||||||
unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) }
|
unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern "C" fn new_show_mismatch(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
||||||
|
let block = move |_args: &[Obj], kwargs: &Map| {
|
||||||
|
let title: TString = kwargs.get(Qstr::MP_QSTR_title)?.try_into()?;
|
||||||
|
|
||||||
|
let layout = ModelUI::show_mismatch(title)?;
|
||||||
|
Ok(LayoutObj::new_root(layout)?.into())
|
||||||
|
};
|
||||||
|
unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) }
|
||||||
|
}
|
||||||
|
|
||||||
extern "C" fn new_show_progress(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
extern "C" fn new_show_progress(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
||||||
let block = move |_args: &[Obj], kwargs: &Map| {
|
let block = move |_args: &[Obj], kwargs: &Map| {
|
||||||
let description: TString = kwargs.get(Qstr::MP_QSTR_description)?.try_into()?;
|
let description: TString = kwargs.get(Qstr::MP_QSTR_description)?.try_into()?;
|
||||||
@ -600,6 +610,10 @@ pub static mp_module_trezorui_api: Module = obj_module! {
|
|||||||
/// """Homescreen for locked device."""
|
/// """Homescreen for locked device."""
|
||||||
Qstr::MP_QSTR_show_lockscreen => obj_fn_kw!(0, new_show_lockscreen).as_obj(),
|
Qstr::MP_QSTR_show_lockscreen => obj_fn_kw!(0, new_show_lockscreen).as_obj(),
|
||||||
|
|
||||||
|
/// def show_mismatch(*, title: str) -> LayoutObj[UiResult]:
|
||||||
|
/// """Warning of receiving address mismatch."""
|
||||||
|
Qstr::MP_QSTR_show_mismatch => obj_fn_kw!(0, new_show_mismatch).as_obj(),
|
||||||
|
|
||||||
/// def show_progress(
|
/// def show_progress(
|
||||||
/// *,
|
/// *,
|
||||||
/// description: str,
|
/// description: str,
|
||||||
|
@ -853,31 +853,6 @@ extern "C" fn new_show_success(n_args: usize, args: *const Obj, kwargs: *mut Map
|
|||||||
unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) }
|
unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) }
|
||||||
}
|
}
|
||||||
|
|
||||||
extern "C" fn new_show_mismatch(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
|
||||||
let block = move |_args: &[Obj], kwargs: &Map| {
|
|
||||||
let title: TString = kwargs.get(Qstr::MP_QSTR_title)?.try_into()?;
|
|
||||||
let description: TString = TR::addr_mismatch__contact_support_at.into();
|
|
||||||
let url: TString = TR::addr_mismatch__support_url.into();
|
|
||||||
let button: TString = TR::buttons__quit.into();
|
|
||||||
|
|
||||||
let paragraphs = ParagraphVecShort::from_iter([
|
|
||||||
Paragraph::new(&theme::TEXT_NORMAL, description).centered(),
|
|
||||||
Paragraph::new(&theme::TEXT_DEMIBOLD, url).centered(),
|
|
||||||
])
|
|
||||||
.into_paragraphs();
|
|
||||||
|
|
||||||
let obj = LayoutObj::new(SwipeUpScreen::new(
|
|
||||||
Frame::left_aligned(title, SwipeContent::new(paragraphs))
|
|
||||||
.with_cancel_button()
|
|
||||||
.with_footer(TR::instructions__swipe_up.into(), Some(button))
|
|
||||||
.with_swipe(Direction::Up, SwipeSettings::default()),
|
|
||||||
))?;
|
|
||||||
|
|
||||||
Ok(obj.into())
|
|
||||||
};
|
|
||||||
unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) }
|
|
||||||
}
|
|
||||||
|
|
||||||
extern "C" fn new_show_simple(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
extern "C" fn new_show_simple(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
||||||
let block = move |_args: &[Obj], kwargs: &Map| {
|
let block = move |_args: &[Obj], kwargs: &Map| {
|
||||||
let description: TString = kwargs.get_or(Qstr::MP_QSTR_description, "".into())?;
|
let description: TString = kwargs.get_or(Qstr::MP_QSTR_description, "".into())?;
|
||||||
@ -1289,10 +1264,6 @@ pub static mp_module_trezorui2: Module = obj_module! {
|
|||||||
/// """Success screen. Description is used in the footer."""
|
/// """Success screen. Description is used in the footer."""
|
||||||
Qstr::MP_QSTR_show_success => obj_fn_kw!(0, new_show_success).as_obj(),
|
Qstr::MP_QSTR_show_success => obj_fn_kw!(0, new_show_success).as_obj(),
|
||||||
|
|
||||||
/// def show_mismatch(*, title: str) -> LayoutObj[UiResult]:
|
|
||||||
/// """Warning modal, receiving address mismatch."""
|
|
||||||
Qstr::MP_QSTR_show_mismatch => obj_fn_kw!(0, new_show_mismatch).as_obj(),
|
|
||||||
|
|
||||||
/// def show_simple(
|
/// def show_simple(
|
||||||
/// *,
|
/// *,
|
||||||
/// title: str | None,
|
/// title: str | None,
|
||||||
|
@ -292,6 +292,27 @@ impl UIFeaturesFirmware for ModelMercuryFeatures {
|
|||||||
Ok(layout)
|
Ok(layout)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn show_mismatch(title: TString<'static>) -> Result<impl LayoutMaybeTrace, Error> {
|
||||||
|
let description: TString = TR::addr_mismatch__contact_support_at.into();
|
||||||
|
let url: TString = TR::addr_mismatch__support_url.into();
|
||||||
|
let button: TString = TR::buttons__quit.into();
|
||||||
|
|
||||||
|
let paragraphs = ParagraphVecShort::from_iter([
|
||||||
|
Paragraph::new(&theme::TEXT_NORMAL, description).centered(),
|
||||||
|
Paragraph::new(&theme::TEXT_DEMIBOLD, url).centered(),
|
||||||
|
])
|
||||||
|
.into_paragraphs();
|
||||||
|
|
||||||
|
let layout = RootComponent::new(SwipeUpScreen::new(
|
||||||
|
Frame::left_aligned(title, SwipeContent::new(paragraphs))
|
||||||
|
.with_cancel_button()
|
||||||
|
.with_footer(TR::instructions__swipe_up.into(), Some(button))
|
||||||
|
.with_swipe(Direction::Up, SwipeSettings::default()),
|
||||||
|
));
|
||||||
|
|
||||||
|
Ok(layout)
|
||||||
|
}
|
||||||
|
|
||||||
fn show_progress(
|
fn show_progress(
|
||||||
description: TString<'static>,
|
description: TString<'static>,
|
||||||
indeterminate: bool,
|
indeterminate: bool,
|
||||||
|
@ -1072,33 +1072,6 @@ extern "C" fn new_show_waiting_text(message: Obj) -> Obj {
|
|||||||
unsafe { util::try_or_raise(block) }
|
unsafe { util::try_or_raise(block) }
|
||||||
}
|
}
|
||||||
|
|
||||||
extern "C" fn new_show_mismatch(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
|
||||||
let block = move |_args: &[Obj], kwargs: &Map| {
|
|
||||||
let title: TString = kwargs.get(Qstr::MP_QSTR_title)?.try_into()?;
|
|
||||||
|
|
||||||
let get_page = move |page_index| {
|
|
||||||
assert!(page_index == 0);
|
|
||||||
|
|
||||||
let btn_layout = ButtonLayout::arrow_none_text(TR::buttons__quit.into());
|
|
||||||
let btn_actions = ButtonActions::cancel_none_confirm();
|
|
||||||
let ops = OpTextLayout::new(theme::TEXT_NORMAL)
|
|
||||||
.text_bold_upper(title)
|
|
||||||
.newline()
|
|
||||||
.newline_half()
|
|
||||||
.text_normal(TR::addr_mismatch__contact_support_at)
|
|
||||||
.newline()
|
|
||||||
.text_bold(TR::addr_mismatch__support_url);
|
|
||||||
let formatted = FormattedText::new(ops);
|
|
||||||
Page::new(btn_layout, btn_actions, formatted)
|
|
||||||
};
|
|
||||||
let pages = FlowPages::new(get_page, 1);
|
|
||||||
|
|
||||||
let obj = LayoutObj::new(Flow::new(pages))?;
|
|
||||||
Ok(obj.into())
|
|
||||||
};
|
|
||||||
unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) }
|
|
||||||
}
|
|
||||||
|
|
||||||
extern "C" fn new_confirm_with_info(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
extern "C" fn new_confirm_with_info(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
||||||
let block = move |_args: &[Obj], kwargs: &Map| {
|
let block = move |_args: &[Obj], kwargs: &Map| {
|
||||||
let title: TString = kwargs.get(Qstr::MP_QSTR_title)?.try_into()?;
|
let title: TString = kwargs.get(Qstr::MP_QSTR_title)?.try_into()?;
|
||||||
@ -1467,10 +1440,6 @@ pub static mp_module_trezorui2: Module = obj_module! {
|
|||||||
/// """Show passphrase on host dialog."""
|
/// """Show passphrase on host dialog."""
|
||||||
Qstr::MP_QSTR_show_passphrase => obj_fn_0!(new_show_passphrase).as_obj(),
|
Qstr::MP_QSTR_show_passphrase => obj_fn_0!(new_show_passphrase).as_obj(),
|
||||||
|
|
||||||
/// def show_mismatch(*, title: str) -> LayoutObj[UiResult]:
|
|
||||||
/// """Warning modal, receiving address mismatch."""
|
|
||||||
Qstr::MP_QSTR_show_mismatch => obj_fn_kw!(0, new_show_mismatch).as_obj(),
|
|
||||||
|
|
||||||
/// def confirm_with_info(
|
/// def confirm_with_info(
|
||||||
/// *,
|
/// *,
|
||||||
/// title: str,
|
/// title: str,
|
||||||
|
@ -10,25 +10,27 @@ use crate::{
|
|||||||
ui::{
|
ui::{
|
||||||
component::{
|
component::{
|
||||||
connect::Connect,
|
connect::Connect,
|
||||||
text::paragraphs::{
|
text::{
|
||||||
Checklist, Paragraph, ParagraphSource, ParagraphVecLong, ParagraphVecShort,
|
op::OpTextLayout,
|
||||||
Paragraphs, VecExt,
|
paragraphs::{
|
||||||
|
Checklist, Paragraph, ParagraphSource, ParagraphVecLong, ParagraphVecShort,
|
||||||
|
Paragraphs, VecExt,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
Component, ComponentExt, Empty, Label, LineBreaking, Paginate, Timeout,
|
Component, ComponentExt, Empty, FormattedText, Label, LineBreaking, Paginate, Timeout,
|
||||||
},
|
},
|
||||||
layout::{
|
layout::{
|
||||||
obj::{LayoutMaybeTrace, LayoutObj, RootComponent},
|
obj::{LayoutMaybeTrace, LayoutObj, RootComponent},
|
||||||
util::RecoveryType,
|
util::RecoveryType,
|
||||||
},
|
},
|
||||||
|
model_tr::component::{ButtonActions, ButtonLayout, Page},
|
||||||
ui_features_fw::UIFeaturesFirmware,
|
ui_features_fw::UIFeaturesFirmware,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
use super::{
|
use super::{
|
||||||
component::{
|
component::{
|
||||||
ButtonDetails, ButtonPage, CoinJoinProgress, ConfirmHomescreen, Frame, Homescreen,
|
ButtonDetails, ButtonPage, CoinJoinProgress, ConfirmHomescreen, Flow, FlowPages, Frame, Homescreen, Lockscreen, NumberInput, PassphraseEntry, PinEntry, Progress, ScrollableFrame, SimpleChoice, WordlistEntry, WordlistType
|
||||||
Lockscreen, NumberInput, PassphraseEntry, PinEntry, Progress, ScrollableFrame,
|
|
||||||
SimpleChoice, WordlistEntry, WordlistType,
|
|
||||||
},
|
},
|
||||||
theme, ModelTRFeatures,
|
theme, ModelTRFeatures,
|
||||||
};
|
};
|
||||||
@ -303,6 +305,28 @@ impl UIFeaturesFirmware for ModelTRFeatures {
|
|||||||
Ok(layout)
|
Ok(layout)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn show_mismatch(title: TString<'static>) -> Result<impl LayoutMaybeTrace, Error> {
|
||||||
|
let get_page = move |page_index| {
|
||||||
|
assert!(page_index == 0);
|
||||||
|
|
||||||
|
let btn_layout = ButtonLayout::arrow_none_text(TR::buttons__quit.into());
|
||||||
|
let btn_actions = ButtonActions::cancel_none_confirm();
|
||||||
|
let ops = OpTextLayout::new(theme::TEXT_NORMAL)
|
||||||
|
.text_bold_upper(title)
|
||||||
|
.newline()
|
||||||
|
.newline_half()
|
||||||
|
.text_normal(TR::addr_mismatch__contact_support_at)
|
||||||
|
.newline()
|
||||||
|
.text_bold(TR::addr_mismatch__support_url);
|
||||||
|
let formatted = FormattedText::new(ops);
|
||||||
|
Page::new(btn_layout, btn_actions, formatted)
|
||||||
|
};
|
||||||
|
let pages = FlowPages::new(get_page, 1);
|
||||||
|
|
||||||
|
let obj = RootComponent::new(Flow::new(pages));
|
||||||
|
Ok(obj)
|
||||||
|
}
|
||||||
|
|
||||||
fn show_progress(
|
fn show_progress(
|
||||||
description: TString<'static>,
|
description: TString<'static>,
|
||||||
indeterminate: bool,
|
indeterminate: bool,
|
||||||
|
@ -947,46 +947,6 @@ extern "C" fn new_show_success(n_args: usize, args: *const Obj, kwargs: *mut Map
|
|||||||
unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) }
|
unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) }
|
||||||
}
|
}
|
||||||
|
|
||||||
extern "C" fn new_show_mismatch(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
|
||||||
let block = move |_args: &[Obj], kwargs: &Map| {
|
|
||||||
let title: TString = kwargs.get(Qstr::MP_QSTR_title)?.try_into()?;
|
|
||||||
let description: TString = TR::addr_mismatch__contact_support_at.into();
|
|
||||||
let url: TString = TR::addr_mismatch__support_url.into();
|
|
||||||
let button: TString = TR::buttons__quit.into();
|
|
||||||
|
|
||||||
let icon = BlendedImage::new(
|
|
||||||
theme::IMAGE_BG_OCTAGON,
|
|
||||||
theme::IMAGE_FG_WARN,
|
|
||||||
theme::WARN_COLOR,
|
|
||||||
theme::FG,
|
|
||||||
theme::BG,
|
|
||||||
);
|
|
||||||
let obj = LayoutObj::new(
|
|
||||||
IconDialog::new(
|
|
||||||
icon,
|
|
||||||
title,
|
|
||||||
Button::cancel_confirm(
|
|
||||||
Button::with_icon(theme::ICON_BACK),
|
|
||||||
Button::with_text(button).styled(theme::button_reset()),
|
|
||||||
true,
|
|
||||||
),
|
|
||||||
)
|
|
||||||
.with_paragraph(
|
|
||||||
Paragraph::new(&theme::TEXT_NORMAL, description)
|
|
||||||
.centered()
|
|
||||||
.with_bottom_padding(
|
|
||||||
theme::TEXT_NORMAL.text_font.text_height()
|
|
||||||
- theme::TEXT_DEMIBOLD.text_font.text_height(),
|
|
||||||
),
|
|
||||||
)
|
|
||||||
.with_text(&theme::TEXT_DEMIBOLD, url),
|
|
||||||
)?;
|
|
||||||
|
|
||||||
Ok(obj.into())
|
|
||||||
};
|
|
||||||
unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) }
|
|
||||||
}
|
|
||||||
|
|
||||||
extern "C" fn new_show_simple(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
extern "C" fn new_show_simple(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj {
|
||||||
let block = move |_args: &[Obj], kwargs: &Map| {
|
let block = move |_args: &[Obj], kwargs: &Map| {
|
||||||
let title: Option<TString> = kwargs.get(Qstr::MP_QSTR_title)?.try_into_option()?;
|
let title: Option<TString> = kwargs.get(Qstr::MP_QSTR_title)?.try_into_option()?;
|
||||||
@ -1417,10 +1377,6 @@ pub static mp_module_trezorui2: Module = obj_module! {
|
|||||||
/// """Success modal. No buttons shown when `button` is empty string."""
|
/// """Success modal. No buttons shown when `button` is empty string."""
|
||||||
Qstr::MP_QSTR_show_success => obj_fn_kw!(0, new_show_success).as_obj(),
|
Qstr::MP_QSTR_show_success => obj_fn_kw!(0, new_show_success).as_obj(),
|
||||||
|
|
||||||
/// def show_mismatch(*, title: str) -> LayoutObj[UiResult]:
|
|
||||||
/// """Warning modal, receiving address mismatch."""
|
|
||||||
Qstr::MP_QSTR_show_mismatch => obj_fn_kw!(0, new_show_mismatch).as_obj(),
|
|
||||||
|
|
||||||
/// def show_simple(
|
/// def show_simple(
|
||||||
/// *,
|
/// *,
|
||||||
/// title: str | None,
|
/// title: str | None,
|
||||||
|
@ -335,6 +335,42 @@ impl UIFeaturesFirmware for ModelTTFeatures {
|
|||||||
Ok(layout)
|
Ok(layout)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn show_mismatch(title: TString<'static>) -> Result<impl LayoutMaybeTrace, Error> {
|
||||||
|
let description: TString = TR::addr_mismatch__contact_support_at.into();
|
||||||
|
let url: TString = TR::addr_mismatch__support_url.into();
|
||||||
|
let button: TString = TR::buttons__quit.into();
|
||||||
|
|
||||||
|
let icon = BlendedImage::new(
|
||||||
|
theme::IMAGE_BG_OCTAGON,
|
||||||
|
theme::IMAGE_FG_WARN,
|
||||||
|
theme::WARN_COLOR,
|
||||||
|
theme::FG,
|
||||||
|
theme::BG,
|
||||||
|
);
|
||||||
|
let layout = RootComponent::new(
|
||||||
|
IconDialog::new(
|
||||||
|
icon,
|
||||||
|
title,
|
||||||
|
Button::cancel_confirm(
|
||||||
|
Button::with_icon(theme::ICON_BACK),
|
||||||
|
Button::with_text(button).styled(theme::button_reset()),
|
||||||
|
true,
|
||||||
|
),
|
||||||
|
)
|
||||||
|
.with_paragraph(
|
||||||
|
Paragraph::new(&theme::TEXT_NORMAL, description)
|
||||||
|
.centered()
|
||||||
|
.with_bottom_padding(
|
||||||
|
theme::TEXT_NORMAL.text_font.text_height()
|
||||||
|
- theme::TEXT_DEMIBOLD.text_font.text_height(),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
.with_text(&theme::TEXT_DEMIBOLD, url),
|
||||||
|
);
|
||||||
|
|
||||||
|
Ok(layout)
|
||||||
|
}
|
||||||
|
|
||||||
fn show_progress(
|
fn show_progress(
|
||||||
description: TString<'static>,
|
description: TString<'static>,
|
||||||
indeterminate: bool,
|
indeterminate: bool,
|
||||||
|
@ -102,6 +102,8 @@ pub trait UIFeaturesFirmware {
|
|||||||
coinjoin_authorized: bool,
|
coinjoin_authorized: bool,
|
||||||
) -> Result<impl LayoutMaybeTrace, Error>;
|
) -> Result<impl LayoutMaybeTrace, Error>;
|
||||||
|
|
||||||
|
fn show_mismatch(title: TString<'static>) -> Result<impl LayoutMaybeTrace, Error>;
|
||||||
|
|
||||||
fn show_progress(
|
fn show_progress(
|
||||||
description: TString<'static>,
|
description: TString<'static>,
|
||||||
indeterminate: bool,
|
indeterminate: bool,
|
||||||
|
@ -186,11 +186,6 @@ def show_success(
|
|||||||
"""Success screen. Description is used in the footer."""
|
"""Success screen. Description is used in the footer."""
|
||||||
|
|
||||||
|
|
||||||
# rust/src/ui/model_mercury/layout.rs
|
|
||||||
def show_mismatch(*, title: str) -> LayoutObj[UiResult]:
|
|
||||||
"""Warning modal, receiving address mismatch."""
|
|
||||||
|
|
||||||
|
|
||||||
# rust/src/ui/model_mercury/layout.rs
|
# rust/src/ui/model_mercury/layout.rs
|
||||||
def show_simple(
|
def show_simple(
|
||||||
*,
|
*,
|
||||||
@ -555,11 +550,6 @@ def show_passphrase() -> LayoutObj[UiResult]:
|
|||||||
"""Show passphrase on host dialog."""
|
"""Show passphrase on host dialog."""
|
||||||
|
|
||||||
|
|
||||||
# rust/src/ui/model_tr/layout.rs
|
|
||||||
def show_mismatch(*, title: str) -> LayoutObj[UiResult]:
|
|
||||||
"""Warning modal, receiving address mismatch."""
|
|
||||||
|
|
||||||
|
|
||||||
# rust/src/ui/model_tr/layout.rs
|
# rust/src/ui/model_tr/layout.rs
|
||||||
def confirm_with_info(
|
def confirm_with_info(
|
||||||
*,
|
*,
|
||||||
@ -845,11 +835,6 @@ def show_success(
|
|||||||
"""Success modal. No buttons shown when `button` is empty string."""
|
"""Success modal. No buttons shown when `button` is empty string."""
|
||||||
|
|
||||||
|
|
||||||
# rust/src/ui/model_tt/layout.rs
|
|
||||||
def show_mismatch(*, title: str) -> LayoutObj[UiResult]:
|
|
||||||
"""Warning modal, receiving address mismatch."""
|
|
||||||
|
|
||||||
|
|
||||||
# rust/src/ui/model_tt/layout.rs
|
# rust/src/ui/model_tt/layout.rs
|
||||||
def show_simple(
|
def show_simple(
|
||||||
*,
|
*,
|
||||||
|
@ -242,6 +242,11 @@ def show_lockscreen(
|
|||||||
"""Homescreen for locked device."""
|
"""Homescreen for locked device."""
|
||||||
|
|
||||||
|
|
||||||
|
# rust/src/ui/api/firmware_upy.rs
|
||||||
|
def show_mismatch(*, title: str) -> LayoutObj[UiResult]:
|
||||||
|
"""Warning of receiving address mismatch."""
|
||||||
|
|
||||||
|
|
||||||
# rust/src/ui/api/firmware_upy.rs
|
# rust/src/ui/api/firmware_upy.rs
|
||||||
def show_progress(
|
def show_progress(
|
||||||
*,
|
*,
|
||||||
|
@ -1042,7 +1042,7 @@ async def confirm_signverify(
|
|||||||
await with_info(address_layout, info_layout, br_name, br_code=BR_CODE_OTHER)
|
await with_info(address_layout, info_layout, br_name, br_code=BR_CODE_OTHER)
|
||||||
except ActionCancelled:
|
except ActionCancelled:
|
||||||
result = await interact(
|
result = await interact(
|
||||||
trezorui2.show_mismatch(title=TR.addr_mismatch__mismatch),
|
trezorui_api.show_mismatch(title=TR.addr_mismatch__mismatch),
|
||||||
None,
|
None,
|
||||||
raise_on_cancel=None,
|
raise_on_cancel=None,
|
||||||
)
|
)
|
||||||
|
@ -306,7 +306,7 @@ async def show_address(
|
|||||||
# User pressed left cancel button, show mismatch dialogue.
|
# User pressed left cancel button, show mismatch dialogue.
|
||||||
else:
|
else:
|
||||||
result = await interact(
|
result = await interact(
|
||||||
trezorui2.show_mismatch(title=mismatch_title),
|
trezorui_api.show_mismatch(title=mismatch_title),
|
||||||
None,
|
None,
|
||||||
raise_on_cancel=None,
|
raise_on_cancel=None,
|
||||||
)
|
)
|
||||||
|
@ -289,7 +289,7 @@ async def show_address(
|
|||||||
|
|
||||||
else:
|
else:
|
||||||
result = await interact(
|
result = await interact(
|
||||||
trezorui2.show_mismatch(title=mismatch_title),
|
trezorui_api.show_mismatch(title=mismatch_title),
|
||||||
None,
|
None,
|
||||||
raise_on_cancel=None,
|
raise_on_cancel=None,
|
||||||
)
|
)
|
||||||
@ -1097,7 +1097,7 @@ async def confirm_signverify(
|
|||||||
await with_info(address_layout, info_layout, br_name, br_code=BR_CODE_OTHER)
|
await with_info(address_layout, info_layout, br_name, br_code=BR_CODE_OTHER)
|
||||||
except ActionCancelled:
|
except ActionCancelled:
|
||||||
result = await interact(
|
result = await interact(
|
||||||
trezorui2.show_mismatch(title=TR.addr_mismatch__mismatch),
|
trezorui_api.show_mismatch(title=TR.addr_mismatch__mismatch),
|
||||||
None,
|
None,
|
||||||
raise_on_cancel=None,
|
raise_on_cancel=None,
|
||||||
)
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user