mirror of
https://github.com/trezor/trezor-firmware.git
synced 2025-07-24 15:38:22 +00:00
chore(eckhart): replace-by-fee update
[no changelog]
This commit is contained in:
parent
17f2d05baa
commit
3f14cd1d27
@ -52,7 +52,7 @@ pub enum TranslatedString {
|
||||
bitcoin__title_confirm_details = 50, // "Confirm details"
|
||||
bitcoin__title_finalize_transaction = 51, // "Finalize transaction"
|
||||
bitcoin__title_high_mining_fee = 52, // "High mining fee"
|
||||
bitcoin__title_meld_transaction = 53, // "Meld transactions"
|
||||
bitcoin__title_meld_transaction = 53, // "Meld transaction"
|
||||
bitcoin__title_modify_amount = 54, // "Modify amount"
|
||||
bitcoin__title_payjoin = 55, // "Payjoin"
|
||||
bitcoin__title_proof_of_ownership = 56, // "Proof of ownership"
|
||||
@ -543,17 +543,17 @@ pub enum TranslatedString {
|
||||
misc__decrypt_value = 349, // "Decrypt value"
|
||||
misc__encrypt_value = 350, // "Encrypt value"
|
||||
misc__title_suite_labeling = 351, // "Suite labeling"
|
||||
modify_amount__decrease_amount = 352, // "Decrease amount by:"
|
||||
modify_amount__increase_amount = 353, // "Increase amount by:"
|
||||
modify_amount__new_amount = 354, // "New amount:"
|
||||
modify_amount__decrease_amount = 352, // {"Bolt": "Decrease amount by:", "Caesar": "Decrease amount by:", "Delizia": "Decrease amount by:", "Eckhart": "Decrease amount by"}
|
||||
modify_amount__increase_amount = 353, // {"Bolt": "Increase amount by:", "Caesar": "Increase amount by:", "Delizia": "Increase amount by:", "Eckhart": "Increase amount by"}
|
||||
modify_amount__new_amount = 354, // {"Bolt": "New amount:", "Caesar": "New amount:", "Delizia": "New amount:", "Eckhart": "New amount"}
|
||||
modify_amount__title = 355, // "Modify amount"
|
||||
modify_fee__decrease_fee = 356, // "Decrease fee by:"
|
||||
modify_fee__decrease_fee = 356, // {"Bolt": "Decrease fee by:", "Caesar": "Decrease fee by:", "Delizia": "Decrease fee by:", "Eckhart": "Decrease fee by"}
|
||||
modify_fee__fee_rate = 357, // "Fee rate:"
|
||||
modify_fee__increase_fee = 358, // "Increase fee by:"
|
||||
modify_fee__new_transaction_fee = 359, // "New transaction fee:"
|
||||
modify_fee__no_change = 360, // "Fee did not change.\n"
|
||||
modify_fee__increase_fee = 358, // {"Bolt": "Increase fee by:", "Caesar": "Increase fee by:", "Delizia": "Increase fee by:", "Eckhart": "Increase fee by"}
|
||||
modify_fee__new_transaction_fee = 359, // {"Bolt": "New transaction fee:", "Caesar": "New transaction fee:", "Delizia": "New transaction fee:", "Eckhart": "New transaction fee"}
|
||||
modify_fee__no_change = 360, // {"Bolt": "Fee did not change.\n", "Caesar": "Fee did not change.\n", "Delizia": "Fee did not change.\n", "Eckhart": "Fee did not change"}
|
||||
modify_fee__title = 361, // "Modify fee"
|
||||
modify_fee__transaction_fee = 362, // "Transaction fee:"
|
||||
modify_fee__transaction_fee = 362, // {"Bolt": "Transaction fee:", "Caesar": "Transaction fee:", "Delizia": "Transaction fee:", "Eckhart": "Transaction fee"}
|
||||
#[cfg(feature = "universal_fw")]
|
||||
monero__confirm_export = 363, // "Confirm export"
|
||||
#[cfg(feature = "universal_fw")]
|
||||
@ -1499,7 +1499,7 @@ impl TranslatedString {
|
||||
(Self::bitcoin__title_confirm_details, "Confirm details"),
|
||||
(Self::bitcoin__title_finalize_transaction, "Finalize transaction"),
|
||||
(Self::bitcoin__title_high_mining_fee, "High mining fee"),
|
||||
(Self::bitcoin__title_meld_transaction, "Meld transactions"),
|
||||
(Self::bitcoin__title_meld_transaction, "Meld transaction"),
|
||||
(Self::bitcoin__title_modify_amount, "Modify amount"),
|
||||
(Self::bitcoin__title_payjoin, "Payjoin"),
|
||||
(Self::bitcoin__title_proof_of_ownership, "Proof of ownership"),
|
||||
@ -2020,17 +2020,73 @@ impl TranslatedString {
|
||||
(Self::misc__decrypt_value, "Decrypt value"),
|
||||
(Self::misc__encrypt_value, "Encrypt value"),
|
||||
(Self::misc__title_suite_labeling, "Suite labeling"),
|
||||
#[cfg(feature = "layout_bolt")]
|
||||
(Self::modify_amount__decrease_amount, "Decrease amount by:"),
|
||||
#[cfg(feature = "layout_caesar")]
|
||||
(Self::modify_amount__decrease_amount, "Decrease amount by:"),
|
||||
#[cfg(feature = "layout_delizia")]
|
||||
(Self::modify_amount__decrease_amount, "Decrease amount by:"),
|
||||
#[cfg(feature = "layout_eckhart")]
|
||||
(Self::modify_amount__decrease_amount, "Decrease amount by"),
|
||||
#[cfg(feature = "layout_bolt")]
|
||||
(Self::modify_amount__increase_amount, "Increase amount by:"),
|
||||
#[cfg(feature = "layout_caesar")]
|
||||
(Self::modify_amount__increase_amount, "Increase amount by:"),
|
||||
#[cfg(feature = "layout_delizia")]
|
||||
(Self::modify_amount__increase_amount, "Increase amount by:"),
|
||||
#[cfg(feature = "layout_eckhart")]
|
||||
(Self::modify_amount__increase_amount, "Increase amount by"),
|
||||
#[cfg(feature = "layout_bolt")]
|
||||
(Self::modify_amount__new_amount, "New amount:"),
|
||||
#[cfg(feature = "layout_caesar")]
|
||||
(Self::modify_amount__new_amount, "New amount:"),
|
||||
#[cfg(feature = "layout_delizia")]
|
||||
(Self::modify_amount__new_amount, "New amount:"),
|
||||
#[cfg(feature = "layout_eckhart")]
|
||||
(Self::modify_amount__new_amount, "New amount"),
|
||||
(Self::modify_amount__title, "Modify amount"),
|
||||
#[cfg(feature = "layout_bolt")]
|
||||
(Self::modify_fee__decrease_fee, "Decrease fee by:"),
|
||||
#[cfg(feature = "layout_caesar")]
|
||||
(Self::modify_fee__decrease_fee, "Decrease fee by:"),
|
||||
#[cfg(feature = "layout_delizia")]
|
||||
(Self::modify_fee__decrease_fee, "Decrease fee by:"),
|
||||
#[cfg(feature = "layout_eckhart")]
|
||||
(Self::modify_fee__decrease_fee, "Decrease fee by"),
|
||||
(Self::modify_fee__fee_rate, "Fee rate:"),
|
||||
#[cfg(feature = "layout_bolt")]
|
||||
(Self::modify_fee__increase_fee, "Increase fee by:"),
|
||||
#[cfg(feature = "layout_caesar")]
|
||||
(Self::modify_fee__increase_fee, "Increase fee by:"),
|
||||
#[cfg(feature = "layout_delizia")]
|
||||
(Self::modify_fee__increase_fee, "Increase fee by:"),
|
||||
#[cfg(feature = "layout_eckhart")]
|
||||
(Self::modify_fee__increase_fee, "Increase fee by"),
|
||||
#[cfg(feature = "layout_bolt")]
|
||||
(Self::modify_fee__new_transaction_fee, "New transaction fee:"),
|
||||
#[cfg(feature = "layout_caesar")]
|
||||
(Self::modify_fee__new_transaction_fee, "New transaction fee:"),
|
||||
#[cfg(feature = "layout_delizia")]
|
||||
(Self::modify_fee__new_transaction_fee, "New transaction fee:"),
|
||||
#[cfg(feature = "layout_eckhart")]
|
||||
(Self::modify_fee__new_transaction_fee, "New transaction fee"),
|
||||
#[cfg(feature = "layout_bolt")]
|
||||
(Self::modify_fee__no_change, "Fee did not change.\n"),
|
||||
#[cfg(feature = "layout_caesar")]
|
||||
(Self::modify_fee__no_change, "Fee did not change.\n"),
|
||||
#[cfg(feature = "layout_delizia")]
|
||||
(Self::modify_fee__no_change, "Fee did not change.\n"),
|
||||
#[cfg(feature = "layout_eckhart")]
|
||||
(Self::modify_fee__no_change, "Fee did not change"),
|
||||
(Self::modify_fee__title, "Modify fee"),
|
||||
#[cfg(feature = "layout_bolt")]
|
||||
(Self::modify_fee__transaction_fee, "Transaction fee:"),
|
||||
#[cfg(feature = "layout_caesar")]
|
||||
(Self::modify_fee__transaction_fee, "Transaction fee:"),
|
||||
#[cfg(feature = "layout_delizia")]
|
||||
(Self::modify_fee__transaction_fee, "Transaction fee:"),
|
||||
#[cfg(feature = "layout_eckhart")]
|
||||
(Self::modify_fee__transaction_fee, "Transaction fee"),
|
||||
#[cfg(feature = "universal_fw")]
|
||||
(Self::monero__confirm_export, "Confirm export"),
|
||||
#[cfg(feature = "universal_fw")]
|
||||
|
@ -16,7 +16,7 @@ use crate::{
|
||||
use super::super::{
|
||||
component::Button,
|
||||
firmware::{
|
||||
ActionBar, AllowedTextContent, Header, ShortMenuVec, TextScreen, TextScreenMsg,
|
||||
ActionBar, AllowedTextContent, Header, Hint, ShortMenuVec, TextScreen, TextScreenMsg,
|
||||
VerticalMenu, VerticalMenuScreen, VerticalMenuScreenMsg,
|
||||
},
|
||||
theme,
|
||||
@ -57,6 +57,7 @@ pub fn new_confirm_with_menu<T: AllowedTextContent + MaybeTrace + 'static>(
|
||||
title: TString<'static>,
|
||||
subtitle: Option<TString<'static>>,
|
||||
content: T,
|
||||
hint: Option<TString<'static>>,
|
||||
confirm_label: Option<TString<'static>>,
|
||||
hold: bool,
|
||||
extra_menu_label: Option<TString<'static>>,
|
||||
@ -68,21 +69,26 @@ pub fn new_confirm_with_menu<T: AllowedTextContent + MaybeTrace + 'static>(
|
||||
let confirm_button = if hold {
|
||||
let confirm_label = confirm_label.unwrap_or(TR::buttons__hold_to_confirm.into());
|
||||
Button::with_text(confirm_label)
|
||||
.styled(theme::button_confirm())
|
||||
.with_long_press(theme::LOCK_HOLD_DURATION)
|
||||
.with_long_press(theme::CONFIRM_HOLD_DURATION)
|
||||
.styled(theme::firmware::button_confirm())
|
||||
} else if let Some(confirm_label) = confirm_label {
|
||||
Button::with_text(confirm_label)
|
||||
} else {
|
||||
let confirm_label = confirm_label.unwrap_or(TR::buttons__confirm.into());
|
||||
Button::with_text(confirm_label).styled(theme::button_default())
|
||||
Button::with_text(TR::buttons__confirm.into()).styled(theme::firmware::button_confirm())
|
||||
};
|
||||
let content_value = TextScreen::new(content)
|
||||
|
||||
let mut value_screen = TextScreen::new(content)
|
||||
.with_header(Header::new(title).with_menu_button())
|
||||
.with_action_bar(ActionBar::new_single(confirm_button))
|
||||
.with_subtitle(subtitle.unwrap_or(TString::empty()))
|
||||
.map(|msg| match msg {
|
||||
TextScreenMsg::Confirmed => Some(FlowMsg::Confirmed),
|
||||
TextScreenMsg::Cancelled => Some(FlowMsg::Cancelled),
|
||||
TextScreenMsg::Menu => Some(FlowMsg::Info),
|
||||
});
|
||||
.with_subtitle(subtitle.unwrap_or(TString::empty()));
|
||||
if let Some(hint) = hint {
|
||||
value_screen = value_screen.with_hint(Hint::new_instruction(hint, Some(theme::ICON_INFO)));
|
||||
}
|
||||
let content_value = value_screen.map(|msg| match msg {
|
||||
TextScreenMsg::Confirmed => Some(FlowMsg::Confirmed),
|
||||
TextScreenMsg::Cancelled => Some(FlowMsg::Cancelled),
|
||||
TextScreenMsg::Menu => Some(FlowMsg::Info),
|
||||
});
|
||||
|
||||
let mut menu_items = VerticalMenu::<ShortMenuVec>::empty();
|
||||
|
||||
|
@ -206,40 +206,52 @@ impl FirmwareUI for UIEckhart {
|
||||
total_fee_new: TString<'static>,
|
||||
_fee_rate_amount: Option<TString<'static>>,
|
||||
) -> Result<impl LayoutMaybeTrace, Error> {
|
||||
let (description, change, total_label) = match sign {
|
||||
let (description, change, total_label, info_hint) = match sign {
|
||||
s if s < 0 => (
|
||||
TR::modify_fee__decrease_fee,
|
||||
Some(TR::modify_fee__decrease_fee),
|
||||
user_fee_change,
|
||||
TR::modify_fee__new_transaction_fee,
|
||||
None,
|
||||
),
|
||||
s if s > 0 => (
|
||||
TR::modify_fee__increase_fee,
|
||||
Some(TR::modify_fee__increase_fee),
|
||||
user_fee_change,
|
||||
TR::modify_fee__new_transaction_fee,
|
||||
None,
|
||||
),
|
||||
_ => (
|
||||
TR::modify_fee__no_change,
|
||||
"".into(),
|
||||
None,
|
||||
TString::empty(),
|
||||
TR::modify_fee__transaction_fee,
|
||||
Some(TR::modify_fee__no_change.into()),
|
||||
),
|
||||
};
|
||||
|
||||
let paragraphs = ParagraphVecShort::from_iter([
|
||||
Paragraph::new(&theme::TEXT_SMALL_LIGHT, description),
|
||||
Paragraph::new(&theme::TEXT_MONO_MEDIUM_LIGHT, change),
|
||||
Paragraph::new(&theme::TEXT_SMALL_LIGHT, total_label),
|
||||
Paragraph::new(&theme::TEXT_MONO_MEDIUM_LIGHT, total_fee_new),
|
||||
]);
|
||||
let mut paragraphs = ParagraphVecShort::new();
|
||||
if let Some(description) = description {
|
||||
paragraphs.add(
|
||||
Paragraph::new(&theme::TEXT_SMALL_LIGHT, description)
|
||||
.with_bottom_padding(theme::PARAGRAPHS_SPACING),
|
||||
);
|
||||
paragraphs
|
||||
.add(Paragraph::new(&theme::TEXT_MONO_EXTRA_LIGHT, change).with_bottom_padding(16));
|
||||
}
|
||||
paragraphs.add(
|
||||
Paragraph::new(&theme::TEXT_SMALL_LIGHT, total_label)
|
||||
.with_bottom_padding(theme::PARAGRAPHS_SPACING),
|
||||
);
|
||||
paragraphs.add(Paragraph::new(&theme::TEXT_MONO_EXTRA_LIGHT, total_fee_new));
|
||||
|
||||
let flow = flow::new_confirm_with_menu(
|
||||
title,
|
||||
None,
|
||||
paragraphs.into_paragraphs().with_placement(
|
||||
LinearPlacement::vertical().with_spacing(theme::PARAGRAPHS_SPACING),
|
||||
),
|
||||
paragraphs
|
||||
.into_paragraphs()
|
||||
.with_placement(LinearPlacement::vertical()),
|
||||
info_hint,
|
||||
None,
|
||||
false,
|
||||
Some(TR::words__title_information.into()),
|
||||
Some(TR::confirm_total__title_fee.into()),
|
||||
None,
|
||||
)?;
|
||||
Ok(flow)
|
||||
@ -258,9 +270,9 @@ impl FirmwareUI for UIEckhart {
|
||||
|
||||
let paragraphs = ParagraphVecShort::from_iter([
|
||||
Paragraph::new(&theme::TEXT_SMALL_LIGHT, description),
|
||||
Paragraph::new(&theme::TEXT_MONO_MEDIUM_LIGHT, amount_change),
|
||||
Paragraph::new(&theme::TEXT_MONO_EXTRA_LIGHT, amount_change),
|
||||
Paragraph::new(&theme::TEXT_SMALL_LIGHT, TR::modify_amount__new_amount),
|
||||
Paragraph::new(&theme::TEXT_MONO_MEDIUM_LIGHT, amount_new),
|
||||
Paragraph::new(&theme::TEXT_MONO_EXTRA_LIGHT, amount_new),
|
||||
]);
|
||||
|
||||
let layout = RootComponent::new(
|
||||
@ -268,10 +280,7 @@ impl FirmwareUI for UIEckhart {
|
||||
LinearPlacement::vertical().with_spacing(theme::PARAGRAPHS_SPACING),
|
||||
))
|
||||
.with_header(Header::new(TR::modify_amount__title.into()))
|
||||
.with_action_bar(ActionBar::new_double(
|
||||
Button::with_icon(theme::ICON_CROSS),
|
||||
Button::with_text(TR::buttons__confirm.into()),
|
||||
)),
|
||||
.with_action_bar(ActionBar::new_cancel_confirm()),
|
||||
);
|
||||
Ok(layout)
|
||||
}
|
||||
@ -362,6 +371,7 @@ impl FirmwareUI for UIEckhart {
|
||||
LinearPlacement::vertical().with_spacing(theme::PARAGRAPHS_SPACING),
|
||||
),
|
||||
None,
|
||||
None,
|
||||
hold,
|
||||
None,
|
||||
None,
|
||||
@ -501,6 +511,7 @@ impl FirmwareUI for UIEckhart {
|
||||
.into_paragraphs()
|
||||
.with_placement(LinearPlacement::vertical())
|
||||
.with_spacing(12),
|
||||
None,
|
||||
Some(verb),
|
||||
false,
|
||||
Some(verb_info),
|
||||
|
@ -59,7 +59,7 @@ class TR:
|
||||
bitcoin__title_confirm_details: str = "Confirm details"
|
||||
bitcoin__title_finalize_transaction: str = "Finalize transaction"
|
||||
bitcoin__title_high_mining_fee: str = "High mining fee"
|
||||
bitcoin__title_meld_transaction: str = "Meld transactions"
|
||||
bitcoin__title_meld_transaction: str = "Meld transaction"
|
||||
bitcoin__title_modify_amount: str = "Modify amount"
|
||||
bitcoin__title_payjoin: str = "Payjoin"
|
||||
bitcoin__title_proof_of_ownership: str = "Proof of ownership"
|
||||
|
@ -1143,7 +1143,7 @@ def confirm_replacement(title: str, txid: str) -> Awaitable[None]:
|
||||
"confirm_replacement",
|
||||
title,
|
||||
txid,
|
||||
TR.send__transaction_id,
|
||||
subtitle=TR.send__transaction_id,
|
||||
verb=TR.buttons__continue,
|
||||
info=False,
|
||||
br_code=ButtonRequestType.SignTx,
|
||||
@ -1158,10 +1158,12 @@ async def confirm_modify_output(
|
||||
) -> None:
|
||||
address_layout = trezorui_api.confirm_value(
|
||||
title=TR.modify_amount__title,
|
||||
subtitle=TR.words__address,
|
||||
value=address,
|
||||
verb=TR.buttons__continue,
|
||||
description=f"{TR.words__address}:",
|
||||
cancel=True,
|
||||
is_data=True,
|
||||
description=None,
|
||||
)
|
||||
modify_layout = trezorui_api.confirm_modify_output(
|
||||
sign=sign,
|
||||
@ -1257,7 +1259,7 @@ async def confirm_signverify(
|
||||
address_layout = trezorui_api.confirm_value(
|
||||
title=address_title,
|
||||
value=address,
|
||||
description="",
|
||||
description=None,
|
||||
is_data=True,
|
||||
verb=TR.buttons__continue,
|
||||
info=True,
|
||||
|
@ -86,7 +86,7 @@
|
||||
"bitcoin__title_confirm_details": "Confirm details",
|
||||
"bitcoin__title_finalize_transaction": "Finalize transaction",
|
||||
"bitcoin__title_high_mining_fee": "High mining fee",
|
||||
"bitcoin__title_meld_transaction": "Meld transactions",
|
||||
"bitcoin__title_meld_transaction": "Meld transaction",
|
||||
"bitcoin__title_modify_amount": "Modify amount",
|
||||
"bitcoin__title_payjoin": "Payjoin",
|
||||
"bitcoin__title_proof_of_ownership": "Proof of ownership",
|
||||
@ -487,17 +487,57 @@
|
||||
"misc__enable_labeling": "Enable labeling?",
|
||||
"misc__encrypt_value": "Encrypt value",
|
||||
"misc__title_suite_labeling": "Suite labeling",
|
||||
"modify_amount__decrease_amount": "Decrease amount by:",
|
||||
"modify_amount__increase_amount": "Increase amount by:",
|
||||
"modify_amount__new_amount": "New amount:",
|
||||
"modify_amount__decrease_amount": {
|
||||
"Bolt": "Decrease amount by:",
|
||||
"Caesar": "Decrease amount by:",
|
||||
"Delizia": "Decrease amount by:",
|
||||
"Eckhart": "Decrease amount by"
|
||||
},
|
||||
"modify_amount__increase_amount": {
|
||||
"Bolt": "Increase amount by:",
|
||||
"Caesar": "Increase amount by:",
|
||||
"Delizia": "Increase amount by:",
|
||||
"Eckhart": "Increase amount by"
|
||||
},
|
||||
"modify_amount__new_amount": {
|
||||
"Bolt": "New amount:",
|
||||
"Caesar": "New amount:",
|
||||
"Delizia": "New amount:",
|
||||
"Eckhart": "New amount"
|
||||
},
|
||||
"modify_amount__title": "Modify amount",
|
||||
"modify_fee__decrease_fee": "Decrease fee by:",
|
||||
"modify_fee__decrease_fee": {
|
||||
"Bolt": "Decrease fee by:",
|
||||
"Caesar": "Decrease fee by:",
|
||||
"Delizia": "Decrease fee by:",
|
||||
"Eckhart": "Decrease fee by"
|
||||
},
|
||||
"modify_fee__fee_rate": "Fee rate:",
|
||||
"modify_fee__increase_fee": "Increase fee by:",
|
||||
"modify_fee__new_transaction_fee": "New transaction fee:",
|
||||
"modify_fee__no_change": "Fee did not change.\n",
|
||||
"modify_fee__increase_fee": {
|
||||
"Bolt": "Increase fee by:",
|
||||
"Caesar": "Increase fee by:",
|
||||
"Delizia": "Increase fee by:",
|
||||
"Eckhart": "Increase fee by"
|
||||
},
|
||||
"modify_fee__new_transaction_fee": {
|
||||
"Bolt": "New transaction fee:",
|
||||
"Caesar": "New transaction fee:",
|
||||
"Delizia": "New transaction fee:",
|
||||
"Eckhart": "New transaction fee"
|
||||
},
|
||||
"modify_fee__no_change": {
|
||||
"Bolt": "Fee did not change.\n",
|
||||
"Caesar": "Fee did not change.\n",
|
||||
"Delizia": "Fee did not change.\n",
|
||||
"Eckhart": "Fee did not change"
|
||||
},
|
||||
"modify_fee__title": "Modify fee",
|
||||
"modify_fee__transaction_fee": "Transaction fee:",
|
||||
"modify_fee__transaction_fee": {
|
||||
"Bolt": "Transaction fee:",
|
||||
"Caesar": "Transaction fee:",
|
||||
"Delizia": "Transaction fee:",
|
||||
"Eckhart": "Transaction fee"
|
||||
},
|
||||
"monero__confirm_export": "Confirm export",
|
||||
"monero__confirm_ki_sync": "Confirm ki sync",
|
||||
"monero__confirm_refresh": "Confirm refresh",
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user