diff --git a/core/embed/rust/src/ui/layout_eckhart/flow/confirm_output.rs b/core/embed/rust/src/ui/layout_eckhart/flow/confirm_output.rs index a714af1f08..1b64db4a98 100644 --- a/core/embed/rust/src/ui/layout_eckhart/flow/confirm_output.rs +++ b/core/embed/rust/src/ui/layout_eckhart/flow/confirm_output.rs @@ -15,7 +15,7 @@ use crate::{ base::{Decision, DecisionBuilder as _}, FlowController, FlowMsg, SwipeFlow, }, - geometry::{Alignment, Direction, LinearPlacement, Offset}, + geometry::{Direction, LinearPlacement}, layout::util::StrOrBytes, }, }; @@ -218,29 +218,23 @@ fn content_main_menu( let mut main_menu = VerticalMenu::::empty(); let mut main_menu_items = Vec::::new(); if address_params { - main_menu.item( - Button::with_text(address_title) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + main_menu.item(Button::new_menu_item( + address_title, + theme::menu_item_title(), + )); unwrap!(main_menu_items.push(MENU_ITEM_ADDRESS_INFO)); } if account_params { - main_menu.item( - Button::with_text(TR::address_details__account_info.into()) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + main_menu.item(Button::new_menu_item( + TR::address_details__account_info.into(), + theme::menu_item_title(), + )); unwrap!(main_menu_items.push(MENU_ITEM_ACCOUNT_INFO)); } - main_menu.item( - Button::with_text(cancel_menu_label) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + main_menu.item(Button::new_menu_item( + cancel_menu_label, + theme::menu_item_title_orange(), + )); unwrap!(main_menu_items.push(MENU_ITEM_CANCEL)); VerticalMenuScreen::::new(main_menu) @@ -436,29 +430,23 @@ pub fn new_confirm_output( let mut summary_menu_items = Vec::::new(); if extra_menu_item { - summary_menu.item( - Button::with_text(extra_title.unwrap_or(TString::empty())) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + summary_menu.item(Button::new_menu_item( + extra_title.unwrap_or(TString::empty()), + theme::menu_item_title(), + )); unwrap!(summary_menu_items.push(MENU_ITEM_EXTRA_INFO)); } if fee_menu_item { - summary_menu.item( - Button::with_text(TR::confirm_total__title_fee.into()) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + summary_menu.item(Button::new_menu_item( + TR::confirm_total__title_fee.into(), + theme::menu_item_title(), + )); unwrap!(summary_menu_items.push(MENU_ITEM_FEE_INFO)); } - summary_menu.item( - Button::with_text(cancel_menu_label) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + summary_menu.item(Button::new_menu_item( + cancel_menu_label, + theme::menu_item_title_orange(), + )); unwrap!(summary_menu_items.push(MENU_ITEM_CANCEL)); let content_summary_menu = VerticalMenuScreen::new(summary_menu) .with_header(Header::new(TString::empty()).with_close_button()) diff --git a/core/embed/rust/src/ui/layout_eckhart/flow/confirm_reset.rs b/core/embed/rust/src/ui/layout_eckhart/flow/confirm_reset.rs index 6158f71646..43d2ab766b 100644 --- a/core/embed/rust/src/ui/layout_eckhart/flow/confirm_reset.rs +++ b/core/embed/rust/src/ui/layout_eckhart/flow/confirm_reset.rs @@ -8,7 +8,7 @@ use crate::{ base::{Decision, DecisionBuilder as _}, FlowController, FlowMsg, SwipeFlow, }, - geometry::{Alignment, Direction, Offset}, + geometry::{Alignment, Direction}, layout_eckhart::{component::Button, firmware::ShortMenuVec}, }, }; @@ -83,14 +83,9 @@ pub fn new_confirm_reset(recovery: bool) -> Result { }) .one_button_request(br); - let content_menu = VerticalMenuScreen::new( - VerticalMenu::::empty().with_item( - Button::with_text(TR::buttons__cancel.into()) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ), - ) + let content_menu = VerticalMenuScreen::new(VerticalMenu::::empty().with_item( + Button::new_menu_item(TR::buttons__cancel.into(), theme::menu_item_title_orange()), + )) .with_header( Header::new(title) .with_right_button(Button::with_icon(theme::ICON_CROSS), HeaderMsg::Cancelled), diff --git a/core/embed/rust/src/ui/layout_eckhart/flow/confirm_summary.rs b/core/embed/rust/src/ui/layout_eckhart/flow/confirm_summary.rs index 83b738ae99..b6384a1a2c 100644 --- a/core/embed/rust/src/ui/layout_eckhart/flow/confirm_summary.rs +++ b/core/embed/rust/src/ui/layout_eckhart/flow/confirm_summary.rs @@ -13,7 +13,7 @@ use crate::{ base::{Decision, DecisionBuilder as _}, FlowController, FlowMsg, SwipeFlow, }, - geometry::{Alignment, Direction, LinearPlacement, Offset}, + geometry::{Direction, LinearPlacement}, }, }; @@ -135,29 +135,23 @@ pub fn new_confirm_summary( let mut menu_items = Vec::::new(); if account_paragraphs.is_some() { - menu.item( - Button::with_text(TR::address_details__account_info.into()) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + menu.item(Button::new_menu_item( + TR::address_details__account_info.into(), + theme::menu_item_title(), + )); unwrap!(menu_items.push(MENU_ITEM_ACCOUNT_INFO)); } if extra_paragraphs.is_some() { - menu.item( - Button::with_text(extra_title.unwrap_or(TR::buttons__more_info.into())) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + menu.item(Button::new_menu_item( + extra_title.unwrap_or(TR::buttons__more_info.into()), + theme::menu_item_title(), + )); unwrap!(menu_items.push(MENU_ITEM_EXTRA_INFO)); } - menu.item( - Button::with_text(verb_cancel.unwrap_or(TR::buttons__cancel.into())) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + menu.item(Button::new_menu_item( + verb_cancel.unwrap_or(TR::buttons__cancel.into()), + theme::menu_item_title_orange(), + )); unwrap!(menu_items.push(MENU_ITEM_CANCEL)); let content_menu = VerticalMenuScreen::new(menu) .with_header(Header::new(title).with_close_button()) diff --git a/core/embed/rust/src/ui/layout_eckhart/flow/confirm_value_intro.rs b/core/embed/rust/src/ui/layout_eckhart/flow/confirm_value_intro.rs index d718d9833f..2732eda0c7 100644 --- a/core/embed/rust/src/ui/layout_eckhart/flow/confirm_value_intro.rs +++ b/core/embed/rust/src/ui/layout_eckhart/flow/confirm_value_intro.rs @@ -12,7 +12,7 @@ use crate::{ base::{Decision, DecisionBuilder as _}, FlowController, FlowMsg, SwipeFlow, }, - geometry::{Alignment, Direction, LinearPlacement, Offset}, + geometry::{Direction, LinearPlacement}, layout::util::StrOrBytes, }, }; @@ -105,18 +105,14 @@ pub fn new_confirm_value_intro( }); let menu_items = VerticalMenu::::empty() - .with_item( - Button::with_text(value_menu_label) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ) - .with_item( - Button::with_text(cancel_menu_label) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + .with_item(Button::new_menu_item( + value_menu_label, + theme::menu_item_title(), + )) + .with_item(Button::new_menu_item( + cancel_menu_label, + theme::menu_item_title_orange(), + )); let content_menu = VerticalMenuScreen::new(menu_items) .with_header(Header::new(TString::empty()).with_close_button()) diff --git a/core/embed/rust/src/ui/layout_eckhart/flow/confirm_with_menu.rs b/core/embed/rust/src/ui/layout_eckhart/flow/confirm_with_menu.rs index c187e8cb58..7271eacd5b 100644 --- a/core/embed/rust/src/ui/layout_eckhart/flow/confirm_with_menu.rs +++ b/core/embed/rust/src/ui/layout_eckhart/flow/confirm_with_menu.rs @@ -9,7 +9,7 @@ use crate::{ base::{Decision, DecisionBuilder as _}, FlowController, FlowMsg, SwipeFlow, }, - geometry::{Alignment, Direction, Offset}, + geometry::Direction, }, }; @@ -83,20 +83,16 @@ pub fn new_confirm_with_menu( let mut menu_items = VerticalMenu::::empty(); if let Some(extra_menu_label) = extra_menu_label { - menu_items.item( - Button::with_text(extra_menu_label) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + menu_items.item(Button::new_menu_item( + extra_menu_label, + theme::menu_item_title(), + )); } - menu_items.item( - Button::with_text(cancel_menu_label) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + menu_items.item(Button::new_menu_item( + cancel_menu_label, + theme::menu_item_title_orange(), + )); let content_menu = VerticalMenuScreen::new(menu_items) .with_header(Header::new(TString::empty()).with_close_button()) diff --git a/core/embed/rust/src/ui/layout_eckhart/flow/continue_recovery_homepage.rs b/core/embed/rust/src/ui/layout_eckhart/flow/continue_recovery_homepage.rs index 6bfa10c6f0..a366bd2cce 100644 --- a/core/embed/rust/src/ui/layout_eckhart/flow/continue_recovery_homepage.rs +++ b/core/embed/rust/src/ui/layout_eckhart/flow/continue_recovery_homepage.rs @@ -15,7 +15,7 @@ use crate::{ base::{Decision, DecisionBuilder as _}, FlowController, FlowMsg, SwipeFlow, }, - geometry::{Alignment, Direction, LinearPlacement, Offset}, + geometry::{Direction, LinearPlacement}, layout::util::RecoveryType, }, }; @@ -207,20 +207,16 @@ pub fn new_continue_recovery_homepage( )); let res = if show_instructions { - let content_menu = VerticalMenuScreen::new( - VerticalMenu::::empty().with_item( - Button::with_text(cancel_btn.into()) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ), - ) - .with_header(Header::new(TString::empty()).with_close_button()) - .map(|msg| match msg { - VerticalMenuScreenMsg::Selected(i) => Some(FlowMsg::Choice(i)), - VerticalMenuScreenMsg::Close => Some(FlowMsg::Cancelled), - _ => None, - }); + let content_menu = + VerticalMenuScreen::new(VerticalMenu::::empty().with_item( + Button::new_menu_item(cancel_btn.into(), theme::menu_item_title_orange()), + )) + .with_header(Header::new(TString::empty()).with_close_button()) + .map(|msg| match msg { + VerticalMenuScreenMsg::Selected(i) => Some(FlowMsg::Choice(i)), + VerticalMenuScreenMsg::Close => Some(FlowMsg::Cancelled), + _ => None, + }); let mut res = SwipeFlow::new(&ContinueRecoveryBeforeShares::Main)?; res.add_page(&ContinueRecoveryBeforeShares::Main, content_main)? @@ -229,22 +225,16 @@ pub fn new_continue_recovery_homepage( } else if pages.is_none() { let content_menu = VerticalMenuScreen::new( VerticalMenu::::empty() - .with_item( - Button::with_text_and_subtext( - TR::words__recovery_share.into(), - TR::buttons__more_info.into(), - None, - ) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ) - .with_item( - Button::with_text(cancel_btn.into()) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ), + .with_item(Button::new_menu_item_with_subtext( + TR::words__recovery_share.into(), + theme::menu_item_title(), + TR::buttons__more_info.into(), + None, + )) + .with_item(Button::new_menu_item( + cancel_btn.into(), + theme::menu_item_title_orange(), + )), ) .with_header(Header::new(TR::recovery__title.into()).with_close_button()) .map(|msg| match msg { @@ -281,18 +271,14 @@ pub fn new_continue_recovery_homepage( } else { let content_menu = VerticalMenuScreen::new( VerticalMenu::::empty() - .with_item( - Button::with_text(TR::recovery__title_remaining_shares.into()) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ) - .with_item( - Button::with_text(cancel_btn.into()) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ), + .with_item(Button::new_menu_item( + TR::recovery__title_remaining_shares.into(), + theme::menu_item_title(), + )) + .with_item(Button::new_menu_item( + cancel_btn.into(), + theme::menu_item_title_orange(), + )), ) .with_header(Header::new(TString::empty()).with_close_button()) .map(|msg| match msg { diff --git a/core/embed/rust/src/ui/layout_eckhart/flow/get_address.rs b/core/embed/rust/src/ui/layout_eckhart/flow/get_address.rs index 5bf21dd2a1..1bb570eb09 100644 --- a/core/embed/rust/src/ui/layout_eckhart/flow/get_address.rs +++ b/core/embed/rust/src/ui/layout_eckhart/flow/get_address.rs @@ -13,7 +13,7 @@ use crate::{ base::{Decision, DecisionBuilder as _}, FlowController, FlowMsg, SwipeFlow, }, - geometry::{Alignment, Direction, LinearPlacement, Offset}, + geometry::{Direction, LinearPlacement}, }, }; use heapless::Vec; @@ -135,24 +135,18 @@ pub fn new_get_address( let content_menu = VerticalMenuScreen::new( VerticalMenu::::empty() - .with_item( - Button::with_text(TR::address__qr_code.into()) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ) - .with_item( - Button::with_text(TR::address_details__account_info.into()) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ) - .with_item( - Button::with_text(TR::buttons__cancel.into()) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ), + .with_item(Button::new_menu_item( + TR::address__qr_code.into(), + theme::menu_item_title(), + )) + .with_item(Button::new_menu_item( + TR::address_details__account_info.into(), + theme::menu_item_title(), + )) + .with_item(Button::new_menu_item( + TR::buttons__cancel.into(), + theme::menu_item_title_orange(), + )), ) .with_header( Header::new(flow_title) diff --git a/core/embed/rust/src/ui/layout_eckhart/flow/prompt_backup.rs b/core/embed/rust/src/ui/layout_eckhart/flow/prompt_backup.rs index 5bcbf0b000..bf21a7fdae 100644 --- a/core/embed/rust/src/ui/layout_eckhart/flow/prompt_backup.rs +++ b/core/embed/rust/src/ui/layout_eckhart/flow/prompt_backup.rs @@ -11,7 +11,7 @@ use crate::{ base::{Decision, DecisionBuilder as _}, FlowController, FlowMsg, SwipeFlow, }, - geometry::{Alignment, Direction, LinearPlacement, Offset}, + geometry::{Direction, LinearPlacement}, }, }; @@ -72,14 +72,12 @@ pub fn new_prompt_backup() -> Result { _ => None, }); - let content_menu = VerticalMenuScreen::new( - VerticalMenu::::empty().with_item( - Button::with_text(TR::backup__title_skip.into()) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), + let content_menu = VerticalMenuScreen::new(VerticalMenu::::empty().with_item( + Button::new_menu_item( + TR::backup__title_skip.into(), + theme::menu_item_title_orange(), ), - ) + )) .with_header( Header::new(title) .with_right_button(Button::with_icon(theme::ICON_CROSS), HeaderMsg::Cancelled), diff --git a/core/embed/rust/src/ui/layout_eckhart/flow/request_number.rs b/core/embed/rust/src/ui/layout_eckhart/flow/request_number.rs index 74cc443401..b5c2237caa 100644 --- a/core/embed/rust/src/ui/layout_eckhart/flow/request_number.rs +++ b/core/embed/rust/src/ui/layout_eckhart/flow/request_number.rs @@ -8,7 +8,7 @@ use crate::{ base::{Decision, DecisionBuilder as _}, FlowController, FlowMsg, SwipeFlow, }, - geometry::{Alignment, Direction, Offset}, + geometry::Direction, }, }; @@ -88,18 +88,14 @@ pub fn new_request_number( }); let menu_items = VerticalMenu::::empty() - .with_item( - Button::with_text(TR::buttons__more_info.into()) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ) - .with_item( - Button::with_text(TR::buttons__cancel.into()) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ); + .with_item(Button::new_menu_item( + TR::buttons__more_info.into(), + theme::menu_item_title(), + )) + .with_item(Button::new_menu_item( + TR::buttons__cancel.into(), + theme::menu_item_title_orange(), + )); let content_menu = VerticalMenuScreen::new(menu_items) .with_header(Header::new(TString::empty()).with_close_button()) diff --git a/core/embed/rust/src/ui/layout_eckhart/flow/show_danger.rs b/core/embed/rust/src/ui/layout_eckhart/flow/show_danger.rs index 072a3cc29a..1937952f13 100644 --- a/core/embed/rust/src/ui/layout_eckhart/flow/show_danger.rs +++ b/core/embed/rust/src/ui/layout_eckhart/flow/show_danger.rs @@ -11,7 +11,7 @@ use crate::{ base::{Decision, DecisionBuilder as _}, FlowController, FlowMsg, SwipeFlow, }, - geometry::{Alignment, Direction, LinearPlacement, Offset}, + geometry::{Direction, LinearPlacement}, }, }; @@ -91,18 +91,11 @@ pub fn new_show_danger( let content_menu = VerticalMenuScreen::new( VerticalMenu::::empty() .with_separators() - .with_item( - Button::with_text(verb_cancel) - .styled(theme::menu_item_title()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ) - .with_item( - Button::with_text(TR::words__continue_anyway.into()) - .styled(theme::menu_item_title_orange()) - .with_text_align(Alignment::Start) - .with_content_offset(Offset::x(12)), - ), + .with_item(Button::new_menu_item(verb_cancel, theme::menu_item_title())) + .with_item(Button::new_menu_item( + TR::words__continue_anyway.into(), + theme::menu_item_title_orange(), + )), ) .with_header( Header::new(menu_title.unwrap_or("".into()))