diff --git a/common/protob/messages-debug.proto b/common/protob/messages-debug.proto index 9028b8168a..88d2820259 100644 --- a/common/protob/messages-debug.proto +++ b/common/protob/messages-debug.proto @@ -40,7 +40,7 @@ message DebugLinkDecision { } /** - * Structure representing button presses of UI samson + * Structure representing button presses of UI Caesar */ // TODO: probably delete the middle_btn as it is not a physical one enum DebugPhysicalButton { diff --git a/core/Makefile b/core/Makefile index 4e67e612b6..2246c15db4 100644 --- a/core/Makefile +++ b/core/Makefile @@ -57,15 +57,15 @@ LAYOUT_FEATURE = layout_bolt else ifeq ($(TREZOR_MODEL),$(filter $(TREZOR_MODEL),T2B1)) MCU = STM32F4 OPENOCD_TARGET = target/stm32f4x.cfg -LAYOUT_FEATURE = layout_samson +LAYOUT_FEATURE = layout_caesar else ifeq ($(TREZOR_MODEL),$(filter $(TREZOR_MODEL),T3T1)) MCU = STM32U5 OPENOCD_TARGET = target/stm32u5x.cfg -LAYOUT_FEATURE = layout_quicksilver +LAYOUT_FEATURE = layout_delizia else ifeq ($(TREZOR_MODEL),$(filter $(TREZOR_MODEL),T3B1)) MCU = STM32U5 OPENOCD_TARGET = target/stm32u5x.cfg -LAYOUT_FEATURE = layout_samson +LAYOUT_FEATURE = layout_caesar else ifeq ($(TREZOR_MODEL),$(filter $(TREZOR_MODEL),T3W1)) MCU = STM32U5 OPENOCD_TARGET = target/stm32u5x.cfg diff --git a/core/embed/rust/Cargo.toml b/core/embed/rust/Cargo.toml index 984e7e8bd5..1735c38e59 100644 --- a/core/embed/rust/Cargo.toml +++ b/core/embed/rust/Cargo.toml @@ -9,8 +9,8 @@ build = "build.rs" default = ["layout_bolt"] crypto = ["zeroize"] layout_bolt = ["jpeg"] -layout_samson = [] -layout_quicksilver = ["jpeg", "dma2d"] +layout_caesar = [] +layout_delizia = ["jpeg", "dma2d"] micropython = [] protobuf = ["micropython"] ui = [] diff --git a/core/embed/rust/build.rs b/core/embed/rust/build.rs index 9c20f380d0..ebcc083bc7 100644 --- a/core/embed/rust/build.rs +++ b/core/embed/rust/build.rs @@ -68,7 +68,7 @@ const DEFAULT_BINDGEN_MACROS_T2T1: &[&str] = &[ #[cfg(not(feature = "layout_bolt"))] const DEFAULT_BINDGEN_MACROS_T2T1: &[&str] = &[]; -#[cfg(feature = "layout_samson")] +#[cfg(feature = "layout_caesar")] const DEFAULT_BINDGEN_MACROS_T2B1: &[&str] = &[ "-DSTM32F427", "-DTREZOR_MODEL_T2B1", @@ -78,10 +78,10 @@ const DEFAULT_BINDGEN_MACROS_T2B1: &[&str] = &[ "-DDISPLAY_RESY=64", "-DTREZOR_BOARD=\"T2B1/boards/t2b1-unix.h\"", ]; -#[cfg(not(feature = "layout_samson"))] +#[cfg(not(feature = "layout_caesar"))] const DEFAULT_BINDGEN_MACROS_T2B1: &[&str] = &[]; -#[cfg(feature = "layout_quicksilver")] +#[cfg(feature = "layout_delizia")] const DEFAULT_BINDGEN_MACROS_T3T1: &[&str] = &[ "-DSTM32U5", "-DTREZOR_MODEL_T3T1", @@ -91,7 +91,7 @@ const DEFAULT_BINDGEN_MACROS_T3T1: &[&str] = &[ "-DDISPLAY_RESY=240", "-DTREZOR_BOARD=\"T3T1/boards/t3t1-unix.h\"", ]; -#[cfg(not(feature = "layout_quicksilver"))] +#[cfg(not(feature = "layout_delizia"))] const DEFAULT_BINDGEN_MACROS_T3T1: &[&str] = &[]; fn add_bindgen_macros<'a>(clang_args: &mut Vec<&'a str>, envvar: Option<&'a str>) { diff --git a/core/embed/rust/librust_qstr.h b/core/embed/rust/librust_qstr.h index 6b0e7c3e49..a10c7c0fd0 100644 --- a/core/embed/rust/librust_qstr.h +++ b/core/embed/rust/librust_qstr.h @@ -649,7 +649,7 @@ static void _librust_qstrs(void) { MP_QSTR_show_progress_coinjoin; MP_QSTR_show_remaining_shares; MP_QSTR_show_share_words; - MP_QSTR_show_share_words_quicksilver; + MP_QSTR_show_share_words_delizia; MP_QSTR_show_simple; MP_QSTR_show_success; MP_QSTR_show_wait_text; diff --git a/core/embed/rust/src/ui/api/firmware_micropython.rs b/core/embed/rust/src/ui/api/firmware_micropython.rs index 3cc636cd60..74cf837027 100644 --- a/core/embed/rust/src/ui/api/firmware_micropython.rs +++ b/core/embed/rust/src/ui/api/firmware_micropython.rs @@ -927,7 +927,7 @@ extern "C" fn new_show_share_words(n_args: usize, args: *const Obj, kwargs: *mut unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) } } -extern "C" fn new_show_share_words_quicksilver( +extern "C" fn new_show_share_words_delizia( n_args: usize, args: *const Obj, kwargs: *mut Map, @@ -947,7 +947,7 @@ extern "C" fn new_show_share_words_quicksilver( let words: Vec = util::iter_into_vec(words)?; - let layout = ModelUI::show_share_words_quicksilver( + let layout = ModelUI::show_share_words_delizia( words, subtitle, instructions, @@ -1280,7 +1280,7 @@ pub static mp_module_trezorui_api: Module = obj_module! { /// items: Iterable[tuple[int, str | bytes]], /// ) -> LayoutObj[UiResult]: /// """Confirm long content with the possibility to go back from any page. - /// Meant to be used with confirm_with_info on UI bolt and samson.""" + /// Meant to be used with confirm_with_info on UI Bolt and Caesar.""" Qstr::MP_QSTR_confirm_more => obj_fn_kw!(0, new_confirm_more).as_obj(), /// def confirm_properties( @@ -1338,7 +1338,7 @@ pub static mp_module_trezorui_api: Module = obj_module! { /// items: Iterable[tuple[int, str | bytes]], /// ) -> LayoutObj[UiResult]: /// """Confirm given items but with third button. Always single page - /// without scrolling. In Quicksilver, the button is placed in + /// without scrolling. In Delizia, the button is placed in /// context menu.""" Qstr::MP_QSTR_confirm_with_info => obj_fn_kw!(0, new_confirm_with_info).as_obj(), @@ -1378,7 +1378,7 @@ pub static mp_module_trezorui_api: Module = obj_module! { /// """Confirm the recipient, (optionally) confirm the amount and (optionally) confirm the summary and present a Hold to Sign page.""" Qstr::MP_QSTR_flow_confirm_output => obj_fn_kw!(0, new_flow_confirm_output).as_obj(), - // TODO: supply more arguments for Wipe code setting (quicksilver) + // TODO: supply more arguments for Wipe code setting (delizia) /// /// def flow_confirm_set_new_pin( /// *, @@ -1625,7 +1625,7 @@ pub static mp_module_trezorui_api: Module = obj_module! { /// """Show mnemonic for backup.""" Qstr::MP_QSTR_show_share_words => obj_fn_kw!(0, new_show_share_words).as_obj(), - /// def show_share_words_quicksilver( + /// def show_share_words_delizia( /// *, /// words: Iterable[str], /// subtitle: str | None, @@ -1635,7 +1635,7 @@ pub static mp_module_trezorui_api: Module = obj_module! { /// ) -> LayoutObj[UiResult]: /// """Show mnemonic for wallet backup preceded by an instruction screen and followed by a /// confirmation screen.""" - Qstr::MP_QSTR_show_share_words_quicksilver => obj_fn_kw!(0, new_show_share_words_quicksilver).as_obj(), + Qstr::MP_QSTR_show_share_words_delizia => obj_fn_kw!(0, new_show_share_words_delizia).as_obj(), /// def show_simple( /// *, @@ -1670,7 +1670,7 @@ pub static mp_module_trezorui_api: Module = obj_module! { /// allow_cancel: bool = True, /// danger: bool = False, # unused on bolt /// ) -> LayoutObj[UiResult]: - /// """Warning modal. bolt: No buttons shown when `button` is empty string. samson: middle button and centered text.""" + /// """Warning modal. Bolt: No buttons shown when `button` is empty string. Caesar: middle button and centered text.""" Qstr::MP_QSTR_show_warning => obj_fn_kw!(0, new_show_warning).as_obj(), /// def tutorial() -> LayoutObj[UiResult]: diff --git a/core/embed/rust/src/ui/constant.rs b/core/embed/rust/src/ui/constant.rs index fa6eef8e28..059e3bebb4 100644 --- a/core/embed/rust/src/ui/constant.rs +++ b/core/embed/rust/src/ui/constant.rs @@ -3,11 +3,11 @@ #[cfg(all( feature = "layout_bolt", - not(feature = "layout_quicksilver"), - not(feature = "layout_samson") + not(feature = "layout_delizia"), + not(feature = "layout_caesar") ))] pub use super::layout_bolt::constant::*; -#[cfg(all(feature = "layout_quicksilver", not(feature = "layout_bolt")))] -pub use super::layout_quicksilver::constant::*; -#[cfg(feature = "layout_samson")] -pub use super::layout_samson::constant::*; +#[cfg(all(feature = "layout_caesar", not(feature = "layout_delizia")))] +pub use super::layout_caesar::constant::*; +#[cfg(feature = "layout_delizia")] +pub use super::layout_delizia::constant::*; diff --git a/core/embed/rust/src/ui/layout_bolt/bootloader/intro.rs b/core/embed/rust/src/ui/layout_bolt/bootloader/intro.rs index 90cd2b72c1..65b222ed11 100644 --- a/core/embed/rust/src/ui/layout_bolt/bootloader/intro.rs +++ b/core/embed/rust/src/ui/layout_bolt/bootloader/intro.rs @@ -5,18 +5,19 @@ use crate::{ constant::screen, display::Icon, geometry::{Alignment, Insets, Point, Rect}, - layout_bolt::{ - component::{Button, ButtonMsg::Clicked}, - constant::WIDTH, - theme::bootloader::{ - button_bld, button_bld_menu, text_title, BLD_BG, BUTTON_AREA_START, BUTTON_HEIGHT, - CONTENT_PADDING, CORNER_BUTTON_AREA, MENU32, TEXT_NORMAL, TEXT_WARNING, TITLE_AREA, - }, - }, shape::Renderer, }, }; +use super::super::{ + component::{Button, ButtonMsg::Clicked}, + constant::WIDTH, + theme::bootloader::{ + button_bld, button_bld_menu, text_title, BLD_BG, BUTTON_AREA_START, BUTTON_HEIGHT, + CONTENT_PADDING, CORNER_BUTTON_AREA, MENU32, TEXT_NORMAL, TEXT_WARNING, TITLE_AREA, + }, +}; + #[repr(u32)] #[derive(Copy, Clone, ToPrimitive)] pub enum IntroMsg { diff --git a/core/embed/rust/src/ui/layout_bolt/bootloader/menu.rs b/core/embed/rust/src/ui/layout_bolt/bootloader/menu.rs index c8c9a61b71..25e152b54d 100644 --- a/core/embed/rust/src/ui/layout_bolt/bootloader/menu.rs +++ b/core/embed/rust/src/ui/layout_bolt/bootloader/menu.rs @@ -5,18 +5,18 @@ use crate::{ constant::{screen, WIDTH}, display::Icon, geometry::{Insets, Point, Rect}, - layout_bolt::{ - component::{Button, ButtonMsg::Clicked, IconText}, - theme::bootloader::{ - button_bld, button_bld_menu, text_title, BLD_BG, BUTTON_HEIGHT, CONTENT_PADDING, - CORNER_BUTTON_AREA, CORNER_BUTTON_TOUCH_EXPANSION, FIRE24, REFRESH24, TITLE_AREA, - X32, - }, - }, shape::Renderer, }, }; +use super::super::{ + component::{Button, ButtonMsg::Clicked, IconText}, + theme::bootloader::{ + button_bld, button_bld_menu, text_title, BLD_BG, BUTTON_HEIGHT, CONTENT_PADDING, + CORNER_BUTTON_AREA, CORNER_BUTTON_TOUCH_EXPANSION, FIRE24, REFRESH24, TITLE_AREA, X32, + }, +}; + const BUTTON_AREA_START: i16 = 56; const BUTTON_SPACING: i16 = 8; diff --git a/core/embed/rust/src/ui/layout_bolt/bootloader/welcome.rs b/core/embed/rust/src/ui/layout_bolt/bootloader/welcome.rs index d1aaffbe48..f62272334a 100644 --- a/core/embed/rust/src/ui/layout_bolt/bootloader/welcome.rs +++ b/core/embed/rust/src/ui/layout_bolt/bootloader/welcome.rs @@ -3,14 +3,15 @@ use crate::ui::{ constant::screen, display::{toif::Toif, Font}, geometry::{Alignment, Alignment2D, Offset, Rect}, - layout_bolt::theme::{ - bootloader::{START_URL, WELCOME_COLOR}, - GREY_MEDIUM, WHITE, - }, shape, shape::Renderer, }; +use super::super::theme::{ + bootloader::{START_URL, WELCOME_COLOR}, + GREY_MEDIUM, WHITE, +}; + pub struct Welcome { bg: Pad, } diff --git a/core/embed/rust/src/ui/layout_bolt/component/bl_confirm.rs b/core/embed/rust/src/ui/layout_bolt/component/bl_confirm.rs index cce2bb3794..acc45b8196 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/bl_confirm.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/bl_confirm.rs @@ -6,23 +6,27 @@ use crate::{ constant::screen, display::{Color, Icon}, geometry::{Alignment2D, Insets, Offset, Point, Rect}, - layout_bolt::{ - component::{Button, ButtonMsg::Clicked, ButtonStyleSheet}, - constant::WIDTH, - theme::{ - bootloader::{ - text_fingerprint, text_title, BUTTON_AREA_START, BUTTON_HEIGHT, - CONTENT_PADDING, CORNER_BUTTON_AREA, CORNER_BUTTON_TOUCH_EXPANSION, INFO32, - TITLE_AREA, X32, - }, - WHITE, - }, - }, shape, shape::Renderer, }, }; +use super::{ + super::{ + constant::WIDTH, + theme::{ + bootloader::{ + text_fingerprint, text_title, BUTTON_AREA_START, BUTTON_HEIGHT, CONTENT_PADDING, + CORNER_BUTTON_AREA, CORNER_BUTTON_TOUCH_EXPANSION, INFO32, TITLE_AREA, X32, + }, + WHITE, + }, + }, + Button, + ButtonMsg::Clicked, + ButtonStyleSheet, +}; + const ICON_TOP: i16 = 17; const CONTENT_START: i16 = 72; diff --git a/core/embed/rust/src/ui/layout_bolt/component/error.rs b/core/embed/rust/src/ui/layout_bolt/component/error.rs index a70f2d5204..d7fb3ce2b3 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/error.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/error.rs @@ -9,10 +9,14 @@ use crate::{ }, }; -use crate::ui::layout_bolt::{ - component::{ResultFooter, ResultStyle}, - constant::WIDTH, - theme::{FATAL_ERROR_COLOR, ICON_WARNING40, RESULT_FOOTER_START, RESULT_PADDING, WHITE}, +use super::{ + super::{ + constant::WIDTH, + theme::{ + self, FATAL_ERROR_COLOR, ICON_WARNING40, RESULT_FOOTER_START, RESULT_PADDING, WHITE, + }, + }, + ResultFooter, ResultStyle, }; const ICON_TOP: i16 = 23; @@ -20,9 +24,9 @@ const TITLE_AREA_START: i16 = 70; const MESSAGE_AREA_START: i16 = 116; #[cfg(feature = "bootloader")] -const STYLE: &ResultStyle = &crate::ui::layout_bolt::theme::bootloader::RESULT_WIPE; +const STYLE: &ResultStyle = &theme::bootloader::RESULT_WIPE; #[cfg(not(feature = "bootloader"))] -const STYLE: &ResultStyle = &super::theme::RESULT_ERROR; +const STYLE: &ResultStyle = &theme::RESULT_ERROR; pub struct ErrorScreen<'a> { bg: Pad, diff --git a/core/embed/rust/src/ui/layout_bolt/component/fido.rs b/core/embed/rust/src/ui/layout_bolt/component/fido.rs index a8f1a67dfa..41b2be5281 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/fido.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/fido.rs @@ -4,17 +4,17 @@ use crate::{ component::{image::Image, Child, Component, Event, EventCtx, Label}, display, geometry::{Insets, Rect}, - layout_bolt::component::{ - fido_icons::get_fido_icon_data, - swipe::{Swipe, SwipeDirection}, - theme, ScrollBar, - }, shape, shape::Renderer, }, }; -use super::CancelConfirmMsg; +use super::{ + fido_icons::get_fido_icon_data, + swipe::{Swipe, SwipeDirection}, + theme, CancelConfirmMsg, ScrollBar, +}; + use core::cell::Cell; const ICON_HEIGHT: i16 = 70; diff --git a/core/embed/rust/src/ui/layout_bolt/component/frame.rs b/core/embed/rust/src/ui/layout_bolt/component/frame.rs index 245336c047..091a42e80f 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/frame.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/frame.rs @@ -7,11 +7,12 @@ use crate::{ }, display::Icon, geometry::{Alignment, Insets, Offset, Rect}, - layout_bolt::component::{Button, ButtonMsg, CancelInfoConfirmMsg}, shape::Renderer, }, }; +use super::{Button, ButtonMsg, CancelInfoConfirmMsg}; + pub struct Frame { border: Insets, title: Child>, diff --git a/core/embed/rust/src/ui/layout_bolt/component/homescreen.rs b/core/embed/rust/src/ui/layout_bolt/component/homescreen.rs index d57af7159f..f9e7948b24 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/homescreen.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/homescreen.rs @@ -14,14 +14,16 @@ use crate::{ event::TouchEvent, geometry::{Alignment, Alignment2D, Insets, Offset, Point, Rect}, layout::util::get_user_custom_image, - layout_bolt::{constant, theme::IMAGE_HOMESCREEN}, shape::{self, Renderer}, }, }; use crate::ui::constant::{HEIGHT, WIDTH}; -use super::{theme, Loader, LoaderMsg}; +use super::{ + super::{constant, theme::IMAGE_HOMESCREEN}, + theme, Loader, LoaderMsg, +}; const AREA: Rect = constant::screen(); const TOP_CENTER: Point = AREA.top_center(); diff --git a/core/embed/rust/src/ui/layout_bolt/component/keyboard/bip39.rs b/core/embed/rust/src/ui/layout_bolt/component/keyboard/bip39.rs index 8be2648377..9ba528d58f 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/keyboard/bip39.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/keyboard/bip39.rs @@ -3,21 +3,20 @@ use crate::{ ui::{ component::{text::common::TextBox, Component, Event, EventCtx}, geometry::{Alignment2D, Offset, Rect}, - layout_bolt::{ - component::{ - keyboard::{ - common::{render_pending_marker, MultiTapKeyboard}, - mnemonic::{MnemonicInput, MnemonicInputMsg, MNEMONIC_KEY_COUNT}, - }, - Button, ButtonContent, ButtonMsg, - }, - theme, - }, shape, shape::Renderer, }, }; +use super::super::{ + super::theme, + keyboard::{ + common::{render_pending_marker, MultiTapKeyboard}, + mnemonic::{MnemonicInput, MnemonicInputMsg, MNEMONIC_KEY_COUNT}, + }, + Button, ButtonContent, ButtonMsg, +}; + const MAX_LENGTH: usize = 8; pub struct Bip39Input { diff --git a/core/embed/rust/src/ui/layout_bolt/component/keyboard/mnemonic.rs b/core/embed/rust/src/ui/layout_bolt/component/keyboard/mnemonic.rs index 6c7b378005..b63e01d02d 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/keyboard/mnemonic.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/keyboard/mnemonic.rs @@ -3,14 +3,12 @@ use crate::{ ui::{ component::{Child, Component, Event, EventCtx, Label, Maybe}, geometry::{Alignment2D, Grid, Offset, Rect}, - layout_bolt::{ - component::{Button, ButtonMsg, Swipe, SwipeDirection}, - theme, - }, shape::Renderer, }, }; +use super::super::{super::theme, Button, ButtonMsg, Swipe, SwipeDirection}; + pub const MNEMONIC_KEY_COUNT: usize = 9; #[cfg_attr(feature = "debug", derive(ufmt::derive::uDebug))] diff --git a/core/embed/rust/src/ui/layout_bolt/component/keyboard/passphrase.rs b/core/embed/rust/src/ui/layout_bolt/component/keyboard/passphrase.rs index a26ddbc1c1..5bdde78d83 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/keyboard/passphrase.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/keyboard/passphrase.rs @@ -6,18 +6,19 @@ use crate::{ }, display, geometry::{Grid, Offset, Rect}, - layout_bolt::component::{ - button::{Button, ButtonContent, ButtonMsg}, - keyboard::common::{render_pending_marker, MultiTapKeyboard}, - swipe::{Swipe, SwipeDirection}, - theme, ScrollBar, - }, shape, shape::Renderer, util::long_line_content_with_ellipsis, }, }; +use super::super::{ + button::{Button, ButtonContent, ButtonMsg}, + keyboard::common::{render_pending_marker, MultiTapKeyboard}, + swipe::{Swipe, SwipeDirection}, + theme, ScrollBar, +}; + use core::cell::Cell; #[cfg_attr(feature = "debug", derive(ufmt::derive::uDebug))] diff --git a/core/embed/rust/src/ui/layout_bolt/component/keyboard/pin.rs b/core/embed/rust/src/ui/layout_bolt/component/keyboard/pin.rs index 4417d4a27c..88dee381fa 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/keyboard/pin.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/keyboard/pin.rs @@ -12,17 +12,18 @@ use crate::{ display::Font, event::TouchEvent, geometry::{Alignment, Alignment2D, Grid, Insets, Offset, Rect}, - layout_bolt::component::{ - button::{ - Button, ButtonContent, - ButtonMsg::{self, Clicked}, - }, - theme, - }, shape::{self, Renderer}, }, }; +use super::super::{ + button::{ + Button, ButtonContent, + ButtonMsg::{self, Clicked}, + }, + theme, +}; + #[cfg_attr(feature = "debug", derive(ufmt::derive::uDebug))] pub enum PinKeyboardMsg { Confirmed, diff --git a/core/embed/rust/src/ui/layout_bolt/component/keyboard/slip39.rs b/core/embed/rust/src/ui/layout_bolt/component/keyboard/slip39.rs index 05ee3fe5b4..e1fa99222e 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/keyboard/slip39.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/keyboard/slip39.rs @@ -9,21 +9,20 @@ use crate::{ Component, Event, EventCtx, }, geometry::{Alignment2D, Offset, Rect}, - layout_bolt::{ - component::{ - keyboard::{ - common::{render_pending_marker, MultiTapKeyboard}, - mnemonic::{MnemonicInput, MnemonicInputMsg, MNEMONIC_KEY_COUNT}, - }, - Button, ButtonContent, ButtonMsg, - }, - theme, - }, shape::{self, Renderer}, util::ResultExt, }, }; +use super::super::{ + super::theme, + keyboard::{ + common::{render_pending_marker, MultiTapKeyboard}, + mnemonic::{MnemonicInput, MnemonicInputMsg, MNEMONIC_KEY_COUNT}, + }, + Button, ButtonContent, ButtonMsg, +}; + const MAX_LENGTH: usize = 8; pub struct Slip39Input { diff --git a/core/embed/rust/src/ui/layout_bolt/component/keyboard/word_count.rs b/core/embed/rust/src/ui/layout_bolt/component/keyboard/word_count.rs index 110589d2ed..95dbe65541 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/keyboard/word_count.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/keyboard/word_count.rs @@ -1,12 +1,14 @@ use crate::ui::{ component::{Component, Event, EventCtx}, geometry::{Grid, GridCellSpan, Rect}, - layout_bolt::{ - component::button::{Button, ButtonMsg}, - theme, - }, shape::Renderer, }; + +use super::super::{ + super::theme, + button::{Button, ButtonMsg}, +}; + use heapless::Vec; #[cfg_attr(feature = "debug", derive(ufmt::derive::uDebug))] diff --git a/core/embed/rust/src/ui/layout_bolt/component/loader.rs b/core/embed/rust/src/ui/layout_bolt/component/loader.rs index dae236ca71..7789f95647 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/loader.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/loader.rs @@ -11,12 +11,13 @@ use crate::{ component::{Component, Event, EventCtx, Pad}, display::{self, toif::Icon, Color, LOADER_MAX}, geometry::{Alignment2D, Offset, Rect}, - layout_bolt::constant, shape::{self, Renderer}, util::animation_disabled, }, }; +use super::super::constant; + const GROWING_DURATION_MS: u32 = 1000; const SHRINKING_DURATION_MS: u32 = 500; diff --git a/core/embed/rust/src/ui/layout_bolt/component/page.rs b/core/embed/rust/src/ui/layout_bolt/component/page.rs index d4cd835691..b656337f5a 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/page.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/page.rs @@ -487,11 +487,10 @@ mod tests { component::text::paragraphs::{Paragraph, Paragraphs}, event::TouchEvent, geometry::Point, - layout_bolt::constant, }, }; - use super::*; + use super::{super::super::constant, *}; const SCREEN: Rect = constant::screen().inset(theme::borders()); diff --git a/core/embed/rust/src/ui/layout_bolt/component/progress.rs b/core/embed/rust/src/ui/layout_bolt/component/progress.rs index d31a3f9274..7a75637565 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/progress.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/progress.rs @@ -15,12 +15,13 @@ use crate::{ }, display::{Font, LOADER_MAX}, geometry::{Insets, Offset, Rect}, - layout_bolt::constant, shape::Renderer, util::animation_disabled, }, }; +use super::super::constant; + pub struct Progress { title: Child>, value: u16, diff --git a/core/embed/rust/src/ui/layout_bolt/component/result.rs b/core/embed/rust/src/ui/layout_bolt/component/result.rs index 29058cdedf..f5de9e2263 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/result.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/result.rs @@ -5,15 +5,14 @@ use crate::{ constant::screen, display::{Color, Font, Icon}, geometry::{Alignment2D, Insets, Offset, Point, Rect}, - layout_bolt::theme::FG, shape, shape::Renderer, }, }; -use crate::ui::layout_bolt::{ +use super::super::{ constant::WIDTH, - theme::{RESULT_FOOTER_START, RESULT_PADDING}, + theme::{FG, RESULT_FOOTER_START, RESULT_PADDING}, }; const MESSAGE_AREA_START: i16 = 97; diff --git a/core/embed/rust/src/ui/layout_bolt/component/share_words.rs b/core/embed/rust/src/ui/layout_bolt/component/share_words.rs index 3f38703992..12fe1e677d 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/share_words.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/share_words.rs @@ -4,10 +4,12 @@ use crate::{ component::{Component, Event, EventCtx, Never, Paginate}, display::Font, geometry::{Offset, Rect}, - layout_bolt::theme, shape::{self, Renderer}, }, }; + +use super::super::theme; + use heapless::Vec; use ufmt::uwrite; diff --git a/core/embed/rust/src/ui/layout_bolt/component/swipe.rs b/core/embed/rust/src/ui/layout_bolt/component/swipe.rs index f845fa7c42..9d44456559 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/swipe.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/swipe.rs @@ -3,10 +3,11 @@ use crate::ui::{ display, event::TouchEvent, geometry::{Point, Rect}, - layout_bolt::theme::backlight, shape::Renderer, }; +use super::super::theme::backlight; + pub enum SwipeDirection { Up, Down, diff --git a/core/embed/rust/src/ui/layout_bolt/component/welcome_screen.rs b/core/embed/rust/src/ui/layout_bolt/component/welcome_screen.rs index f3b7f03192..82cb957917 100644 --- a/core/embed/rust/src/ui/layout_bolt/component/welcome_screen.rs +++ b/core/embed/rust/src/ui/layout_bolt/component/welcome_screen.rs @@ -1,12 +1,15 @@ use crate::ui::{ component::{Component, Event, EventCtx, Never}, geometry::{Alignment2D, Offset, Rect}, - layout_bolt::theme, shape, shape::Renderer, }; + +use super::theme; #[cfg(feature = "bootloader")] -use crate::ui::{display::toif::Toif, layout_bolt::theme::bootloader::DEVICE_NAME}; +use super::theme::bootloader::DEVICE_NAME; +#[cfg(feature = "bootloader")] +use crate::ui::display::toif::Toif; const TEXT_BOTTOM_MARGIN: i16 = 24; // matching the homescreen label margin const ICON_TOP_MARGIN: i16 = 48; diff --git a/core/embed/rust/src/ui/layout_bolt/mod.rs b/core/embed/rust/src/ui/layout_bolt/mod.rs index f70b9fe821..64d5446320 100644 --- a/core/embed/rust/src/ui/layout_bolt/mod.rs +++ b/core/embed/rust/src/ui/layout_bolt/mod.rs @@ -7,16 +7,15 @@ pub mod constant; pub mod theme; #[cfg(feature = "backlight")] -use crate::ui::layout_bolt::theme::backlight; +use theme::backlight; #[cfg(feature = "micropython")] pub mod component_msg_obj; pub mod cshape; -use crate::ui::{ - layout::simplified::show, - layout_bolt::component::{ErrorScreen, WelcomeScreen}, -}; +use crate::ui::layout::simplified::show; + +use component::{ErrorScreen, WelcomeScreen}; pub struct UIBolt; diff --git a/core/embed/rust/src/ui/layout_bolt/theme/bootloader.rs b/core/embed/rust/src/ui/layout_bolt/theme/bootloader.rs index 0d099bbbd3..cbbbe2d0f9 100644 --- a/core/embed/rust/src/ui/layout_bolt/theme/bootloader.rs +++ b/core/embed/rust/src/ui/layout_bolt/theme/bootloader.rs @@ -3,13 +3,14 @@ use crate::ui::{ constant::{HEIGHT, WIDTH}, display::{Color, Font}, geometry::{Offset, Point, Rect}, - layout_bolt::{ - component::{ButtonStyle, ButtonStyleSheet, ResultStyle}, - theme::{BLACK, FG, GREY_DARK, GREY_LIGHT, WHITE}, - }, util::include_res, }; +use super::super::{ + component::{ButtonStyle, ButtonStyleSheet, ResultStyle}, + theme::{BLACK, FG, GREY_DARK, GREY_LIGHT, WHITE}, +}; + pub const BLD_BG: Color = Color::rgb(0x00, 0x1E, 0xAD); pub const BLD_FG: Color = WHITE; pub const BLD_WIPE_COLOR: Color = Color::rgb(0xE7, 0x0E, 0x0E); diff --git a/core/embed/rust/src/ui/layout_bolt/ui_firmware.rs b/core/embed/rust/src/ui/layout_bolt/ui_firmware.rs index a6e7764fb0..f2b819c2fd 100644 --- a/core/embed/rust/src/ui/layout_bolt/ui_firmware.rs +++ b/core/embed/rust/src/ui/layout_bolt/ui_firmware.rs @@ -1024,7 +1024,7 @@ impl FirmwareUI for UIBolt { Ok(layout) } - fn show_share_words_quicksilver( + fn show_share_words_delizia( _words: heapless::Vec, 33>, _subtitle: Option>, _instructions: Obj, @@ -1330,11 +1330,10 @@ mod tests { ui::{ component::{text::op::OpTextLayout, Component}, geometry::Rect, - layout_bolt::constant, }, }; - use super::*; + use super::{super::constant, *}; const SCREEN: Rect = constant::screen().inset(theme::borders()); diff --git a/core/embed/rust/src/ui/layout_samson/bootloader/intro.rs b/core/embed/rust/src/ui/layout_caesar/bootloader/intro.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/bootloader/intro.rs rename to core/embed/rust/src/ui/layout_caesar/bootloader/intro.rs diff --git a/core/embed/rust/src/ui/layout_samson/bootloader/menu.rs b/core/embed/rust/src/ui/layout_caesar/bootloader/menu.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/bootloader/menu.rs rename to core/embed/rust/src/ui/layout_caesar/bootloader/menu.rs diff --git a/core/embed/rust/src/ui/layout_samson/bootloader/mod.rs b/core/embed/rust/src/ui/layout_caesar/bootloader/mod.rs similarity index 98% rename from core/embed/rust/src/ui/layout_samson/bootloader/mod.rs rename to core/embed/rust/src/ui/layout_caesar/bootloader/mod.rs index 41d9131831..bd12429423 100644 --- a/core/embed/rust/src/ui/layout_samson/bootloader/mod.rs +++ b/core/embed/rust/src/ui/layout_caesar/bootloader/mod.rs @@ -17,17 +17,15 @@ use super::{ bl_confirm::{Confirm, ConfirmMsg}, ResultScreen, WelcomeScreen, }, + cshape, theme::{ bootloader::{BLD_BG, BLD_FG, ICON_ALERT, ICON_SPINNER, ICON_SUCCESS}, ICON_ARM_LEFT, ICON_ARM_RIGHT, TEXT_BOLD, TEXT_NORMAL, }, - UISamson, + UICaesar, }; -use crate::ui::{ - display::toif::Toif, geometry::Alignment, layout_samson::cshape, shape, - shape::render_on_display, -}; +use crate::ui::{display::toif::Toif, geometry::Alignment, shape, shape::render_on_display}; use ufmt::uwrite; @@ -48,7 +46,7 @@ impl ReturnToC for ConfirmMsg { } } -impl UISamson { +impl UICaesar { fn screen_progress( text: &str, text2: &str, @@ -93,7 +91,7 @@ impl UISamson { } } -impl BootloaderUI for UISamson { +impl BootloaderUI for UICaesar { fn screen_welcome() { let mut frame = Welcome::new(); show(&mut frame, true); diff --git a/core/embed/rust/src/ui/layout_samson/bootloader/welcome.rs b/core/embed/rust/src/ui/layout_caesar/bootloader/welcome.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/bootloader/welcome.rs rename to core/embed/rust/src/ui/layout_caesar/bootloader/welcome.rs diff --git a/core/embed/rust/src/ui/layout_samson/common_messages.rs b/core/embed/rust/src/ui/layout_caesar/common_messages.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/common_messages.rs rename to core/embed/rust/src/ui/layout_caesar/common_messages.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/address_details.rs b/core/embed/rust/src/ui/layout_caesar/component/address_details.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/address_details.rs rename to core/embed/rust/src/ui/layout_caesar/component/address_details.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/bl_confirm.rs b/core/embed/rust/src/ui/layout_caesar/component/bl_confirm.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/bl_confirm.rs rename to core/embed/rust/src/ui/layout_caesar/component/bl_confirm.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/button.rs b/core/embed/rust/src/ui/layout_caesar/component/button.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/button.rs rename to core/embed/rust/src/ui/layout_caesar/component/button.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/button_controller.rs b/core/embed/rust/src/ui/layout_caesar/component/button_controller.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/button_controller.rs rename to core/embed/rust/src/ui/layout_caesar/component/button_controller.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/changing_text.rs b/core/embed/rust/src/ui/layout_caesar/component/changing_text.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/changing_text.rs rename to core/embed/rust/src/ui/layout_caesar/component/changing_text.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/coinjoin_progress.rs b/core/embed/rust/src/ui/layout_caesar/component/coinjoin_progress.rs similarity index 98% rename from core/embed/rust/src/ui/layout_samson/component/coinjoin_progress.rs rename to core/embed/rust/src/ui/layout_caesar/component/coinjoin_progress.rs index a3f652c2b5..63d6862884 100644 --- a/core/embed/rust/src/ui/layout_samson/component/coinjoin_progress.rs +++ b/core/embed/rust/src/ui/layout_caesar/component/coinjoin_progress.rs @@ -11,14 +11,13 @@ use crate::{ }, display::Font, geometry::{Alignment, Alignment2D, Insets, Offset, Rect}, - layout_samson::cshape, shape, shape::Renderer, util::animation_disabled, }, }; -use super::theme; +use super::super::{cshape, theme}; const FOOTER_TEXT_MARGIN: i16 = 8; const LOADER_OFFSET: i16 = -15; diff --git a/core/embed/rust/src/ui/layout_samson/component/error.rs b/core/embed/rust/src/ui/layout_caesar/component/error.rs similarity index 98% rename from core/embed/rust/src/ui/layout_samson/component/error.rs rename to core/embed/rust/src/ui/layout_caesar/component/error.rs index 45d297af3f..dd250eb25e 100644 --- a/core/embed/rust/src/ui/layout_samson/component/error.rs +++ b/core/embed/rust/src/ui/layout_caesar/component/error.rs @@ -4,14 +4,13 @@ use crate::{ component::{Child, Component, Event, EventCtx, Label, Never, Pad}, constant::{screen, WIDTH}, geometry::{Alignment2D, Offset, Point, Rect}, - layout_samson::cshape, shape, shape::Renderer, }, }; use super::super::{ - theme, + cshape, theme, theme::{BG, FG, TITLE_AREA_HEIGHT}, }; diff --git a/core/embed/rust/src/ui/layout_samson/component/flow.rs b/core/embed/rust/src/ui/layout_caesar/component/flow.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/flow.rs rename to core/embed/rust/src/ui/layout_caesar/component/flow.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/flow_pages.rs b/core/embed/rust/src/ui/layout_caesar/component/flow_pages.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/flow_pages.rs rename to core/embed/rust/src/ui/layout_caesar/component/flow_pages.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/frame.rs b/core/embed/rust/src/ui/layout_caesar/component/frame.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/frame.rs rename to core/embed/rust/src/ui/layout_caesar/component/frame.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/hold_to_confirm.rs b/core/embed/rust/src/ui/layout_caesar/component/hold_to_confirm.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/hold_to_confirm.rs rename to core/embed/rust/src/ui/layout_caesar/component/hold_to_confirm.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/homescreen.rs b/core/embed/rust/src/ui/layout_caesar/component/homescreen.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/homescreen.rs rename to core/embed/rust/src/ui/layout_caesar/component/homescreen.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/input_methods/choice.rs b/core/embed/rust/src/ui/layout_caesar/component/input_methods/choice.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/input_methods/choice.rs rename to core/embed/rust/src/ui/layout_caesar/component/input_methods/choice.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/input_methods/choice_item.rs b/core/embed/rust/src/ui/layout_caesar/component/input_methods/choice_item.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/input_methods/choice_item.rs rename to core/embed/rust/src/ui/layout_caesar/component/input_methods/choice_item.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/input_methods/mod.rs b/core/embed/rust/src/ui/layout_caesar/component/input_methods/mod.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/input_methods/mod.rs rename to core/embed/rust/src/ui/layout_caesar/component/input_methods/mod.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/input_methods/number_input.rs b/core/embed/rust/src/ui/layout_caesar/component/input_methods/number_input.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/input_methods/number_input.rs rename to core/embed/rust/src/ui/layout_caesar/component/input_methods/number_input.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/input_methods/passphrase.rs b/core/embed/rust/src/ui/layout_caesar/component/input_methods/passphrase.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/input_methods/passphrase.rs rename to core/embed/rust/src/ui/layout_caesar/component/input_methods/passphrase.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/input_methods/pin.rs b/core/embed/rust/src/ui/layout_caesar/component/input_methods/pin.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/input_methods/pin.rs rename to core/embed/rust/src/ui/layout_caesar/component/input_methods/pin.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/input_methods/simple_choice.rs b/core/embed/rust/src/ui/layout_caesar/component/input_methods/simple_choice.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/input_methods/simple_choice.rs rename to core/embed/rust/src/ui/layout_caesar/component/input_methods/simple_choice.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/input_methods/wordlist.rs b/core/embed/rust/src/ui/layout_caesar/component/input_methods/wordlist.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/input_methods/wordlist.rs rename to core/embed/rust/src/ui/layout_caesar/component/input_methods/wordlist.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/loader.rs b/core/embed/rust/src/ui/layout_caesar/component/loader.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/loader.rs rename to core/embed/rust/src/ui/layout_caesar/component/loader.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/mod.rs b/core/embed/rust/src/ui/layout_caesar/component/mod.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/mod.rs rename to core/embed/rust/src/ui/layout_caesar/component/mod.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/page.rs b/core/embed/rust/src/ui/layout_caesar/component/page.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/page.rs rename to core/embed/rust/src/ui/layout_caesar/component/page.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/progress.rs b/core/embed/rust/src/ui/layout_caesar/component/progress.rs similarity index 98% rename from core/embed/rust/src/ui/layout_samson/component/progress.rs rename to core/embed/rust/src/ui/layout_caesar/component/progress.rs index 2a1fdc5009..ad19d56932 100644 --- a/core/embed/rust/src/ui/layout_samson/component/progress.rs +++ b/core/embed/rust/src/ui/layout_caesar/component/progress.rs @@ -11,14 +11,13 @@ use crate::{ constant, display::{Font, Icon, LOADER_MAX}, geometry::{Alignment2D, Offset, Rect}, - layout_samson::cshape, shape, shape::Renderer, util::animation_disabled, }, }; -use super::super::theme; +use super::super::{cshape, theme}; const BOTTOM_DESCRIPTION_MARGIN: i16 = 10; const LOADER_Y_OFFSET_TITLE: i16 = -10; diff --git a/core/embed/rust/src/ui/layout_samson/component/result.rs b/core/embed/rust/src/ui/layout_caesar/component/result.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/result.rs rename to core/embed/rust/src/ui/layout_caesar/component/result.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/scrollbar.rs b/core/embed/rust/src/ui/layout_caesar/component/scrollbar.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/scrollbar.rs rename to core/embed/rust/src/ui/layout_caesar/component/scrollbar.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/share_words.rs b/core/embed/rust/src/ui/layout_caesar/component/share_words.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/share_words.rs rename to core/embed/rust/src/ui/layout_caesar/component/share_words.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/show_more.rs b/core/embed/rust/src/ui/layout_caesar/component/show_more.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/show_more.rs rename to core/embed/rust/src/ui/layout_caesar/component/show_more.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/title.rs b/core/embed/rust/src/ui/layout_caesar/component/title.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/title.rs rename to core/embed/rust/src/ui/layout_caesar/component/title.rs diff --git a/core/embed/rust/src/ui/layout_samson/component/welcome_screen.rs b/core/embed/rust/src/ui/layout_caesar/component/welcome_screen.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component/welcome_screen.rs rename to core/embed/rust/src/ui/layout_caesar/component/welcome_screen.rs diff --git a/core/embed/rust/src/ui/layout_samson/component_msg_obj.rs b/core/embed/rust/src/ui/layout_caesar/component_msg_obj.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/component_msg_obj.rs rename to core/embed/rust/src/ui/layout_caesar/component_msg_obj.rs diff --git a/core/embed/rust/src/ui/layout_samson/constant.rs b/core/embed/rust/src/ui/layout_caesar/constant.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/constant.rs rename to core/embed/rust/src/ui/layout_caesar/constant.rs diff --git a/core/embed/rust/src/ui/layout_samson/cshape/dotted_line.rs b/core/embed/rust/src/ui/layout_caesar/cshape/dotted_line.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/cshape/dotted_line.rs rename to core/embed/rust/src/ui/layout_caesar/cshape/dotted_line.rs diff --git a/core/embed/rust/src/ui/layout_samson/cshape/loader_circular.rs b/core/embed/rust/src/ui/layout_caesar/cshape/loader_circular.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/cshape/loader_circular.rs rename to core/embed/rust/src/ui/layout_caesar/cshape/loader_circular.rs diff --git a/core/embed/rust/src/ui/layout_samson/cshape/loader_small.rs b/core/embed/rust/src/ui/layout_caesar/cshape/loader_small.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/cshape/loader_small.rs rename to core/embed/rust/src/ui/layout_caesar/cshape/loader_small.rs diff --git a/core/embed/rust/src/ui/layout_samson/cshape/loader_starry.rs b/core/embed/rust/src/ui/layout_caesar/cshape/loader_starry.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/cshape/loader_starry.rs rename to core/embed/rust/src/ui/layout_caesar/cshape/loader_starry.rs diff --git a/core/embed/rust/src/ui/layout_samson/cshape/mod.rs b/core/embed/rust/src/ui/layout_caesar/cshape/mod.rs similarity index 100% rename from core/embed/rust/src/ui/layout_samson/cshape/mod.rs rename to core/embed/rust/src/ui/layout_caesar/cshape/mod.rs diff --git a/core/embed/rust/src/ui/layout_samson/mod.rs b/core/embed/rust/src/ui/layout_caesar/mod.rs similarity index 91% rename from core/embed/rust/src/ui/layout_samson/mod.rs rename to core/embed/rust/src/ui/layout_caesar/mod.rs index 758f5ba6b6..807ab172d8 100644 --- a/core/embed/rust/src/ui/layout_samson/mod.rs +++ b/core/embed/rust/src/ui/layout_caesar/mod.rs @@ -11,12 +11,12 @@ pub mod cshape; mod screens; pub mod theme; -pub struct UISamson {} +pub struct UICaesar {} #[cfg(feature = "micropython")] pub mod ui_firmware; -impl CommonUI for UISamson { +impl CommonUI for UICaesar { const SCREEN: Rect = constant::SCREEN; fn screen_fatal_error(title: &str, msg: &str, footer: &str) { diff --git a/core/embed/rust/src/ui/layout_samson/res/alert.toif b/core/embed/rust/src/ui/layout_caesar/res/alert.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/alert.toif rename to core/embed/rust/src/ui/layout_caesar/res/alert.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/amount.toif b/core/embed/rust/src/ui/layout_caesar/res/amount.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/amount.toif rename to core/embed/rust/src/ui/layout_caesar/res/amount.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/amount_smaller.toif b/core/embed/rust/src/ui/layout_caesar/res/amount_smaller.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/amount_smaller.toif rename to core/embed/rust/src/ui/layout_caesar/res/amount_smaller.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/arm_left.toif b/core/embed/rust/src/ui/layout_caesar/res/arm_left.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/arm_left.toif rename to core/embed/rust/src/ui/layout_caesar/res/arm_left.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/arm_right.toif b/core/embed/rust/src/ui/layout_caesar/res/arm_right.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/arm_right.toif rename to core/embed/rust/src/ui/layout_caesar/res/arm_right.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/arrow_back_up.toif b/core/embed/rust/src/ui/layout_caesar/res/arrow_back_up.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/arrow_back_up.toif rename to core/embed/rust/src/ui/layout_caesar/res/arrow_back_up.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/arrow_down.toif b/core/embed/rust/src/ui/layout_caesar/res/arrow_down.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/arrow_down.toif rename to core/embed/rust/src/ui/layout_caesar/res/arrow_down.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/arrow_left.toif b/core/embed/rust/src/ui/layout_caesar/res/arrow_left.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/arrow_left.toif rename to core/embed/rust/src/ui/layout_caesar/res/arrow_left.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/arrow_left_big.toif b/core/embed/rust/src/ui/layout_caesar/res/arrow_left_big.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/arrow_left_big.toif rename to core/embed/rust/src/ui/layout_caesar/res/arrow_left_big.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/arrow_right.toif b/core/embed/rust/src/ui/layout_caesar/res/arrow_right.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/arrow_right.toif rename to core/embed/rust/src/ui/layout_caesar/res/arrow_right.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/arrow_right_fat.toif b/core/embed/rust/src/ui/layout_caesar/res/arrow_right_fat.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/arrow_right_fat.toif rename to core/embed/rust/src/ui/layout_caesar/res/arrow_right_fat.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/arrow_up.toif b/core/embed/rust/src/ui/layout_caesar/res/arrow_up.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/arrow_up.toif rename to core/embed/rust/src/ui/layout_caesar/res/arrow_up.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/bin.toif b/core/embed/rust/src/ui/layout_caesar/res/bin.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/bin.toif rename to core/embed/rust/src/ui/layout_caesar/res/bin.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/bld_header_warn.toif b/core/embed/rust/src/ui/layout_caesar/res/bld_header_warn.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/bld_header_warn.toif rename to core/embed/rust/src/ui/layout_caesar/res/bld_header_warn.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/cancel.toif b/core/embed/rust/src/ui/layout_caesar/res/cancel.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/cancel.toif rename to core/embed/rust/src/ui/layout_caesar/res/cancel.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/coinjoin.toif b/core/embed/rust/src/ui/layout_caesar/res/coinjoin.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/coinjoin.toif rename to core/embed/rust/src/ui/layout_caesar/res/coinjoin.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/delete.toif b/core/embed/rust/src/ui/layout_caesar/res/delete.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/delete.toif rename to core/embed/rust/src/ui/layout_caesar/res/delete.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/device_name.toif b/core/embed/rust/src/ui/layout_caesar/res/device_name.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/device_name.toif rename to core/embed/rust/src/ui/layout_caesar/res/device_name.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/download.toif b/core/embed/rust/src/ui/layout_caesar/res/download.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/download.toif rename to core/embed/rust/src/ui/layout_caesar/res/download.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/exit.toif b/core/embed/rust/src/ui/layout_caesar/res/exit.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/exit.toif rename to core/embed/rust/src/ui/layout_caesar/res/exit.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/eye.toif b/core/embed/rust/src/ui/layout_caesar/res/eye.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/eye.toif rename to core/embed/rust/src/ui/layout_caesar/res/eye.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/eye_round.toif b/core/embed/rust/src/ui/layout_caesar/res/eye_round.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/eye_round.toif rename to core/embed/rust/src/ui/layout_caesar/res/eye_round.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/fail.toif b/core/embed/rust/src/ui/layout_caesar/res/fail.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/fail.toif rename to core/embed/rust/src/ui/layout_caesar/res/fail.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/lock.toif b/core/embed/rust/src/ui/layout_caesar/res/lock.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/lock.toif rename to core/embed/rust/src/ui/layout_caesar/res/lock.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/lock_small.toif b/core/embed/rust/src/ui/layout_caesar/res/lock_small.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/lock_small.toif rename to core/embed/rust/src/ui/layout_caesar/res/lock_small.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/logo_22_33.toif b/core/embed/rust/src/ui/layout_caesar/res/logo_22_33.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/logo_22_33.toif rename to core/embed/rust/src/ui/layout_caesar/res/logo_22_33.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/logo_22_33_empty.toif b/core/embed/rust/src/ui/layout_caesar/res/logo_22_33_empty.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/logo_22_33_empty.toif rename to core/embed/rust/src/ui/layout_caesar/res/logo_22_33_empty.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/next_page.toif b/core/embed/rust/src/ui/layout_caesar/res/next_page.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/next_page.toif rename to core/embed/rust/src/ui/layout_caesar/res/next_page.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/param.toif b/core/embed/rust/src/ui/layout_caesar/res/param.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/param.toif rename to core/embed/rust/src/ui/layout_caesar/res/param.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/param_smaller.toif b/core/embed/rust/src/ui/layout_caesar/res/param_smaller.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/param_smaller.toif rename to core/embed/rust/src/ui/layout_caesar/res/param_smaller.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/prev_page.toif b/core/embed/rust/src/ui/layout_caesar/res/prev_page.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/prev_page.toif rename to core/embed/rust/src/ui/layout_caesar/res/prev_page.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/redo.toif b/core/embed/rust/src/ui/layout_caesar/res/redo.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/redo.toif rename to core/embed/rust/src/ui/layout_caesar/res/redo.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/space.toif b/core/embed/rust/src/ui/layout_caesar/res/space.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/space.toif rename to core/embed/rust/src/ui/layout_caesar/res/space.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/spinner.toif b/core/embed/rust/src/ui/layout_caesar/res/spinner.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/spinner.toif rename to core/embed/rust/src/ui/layout_caesar/res/spinner.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/success.toif b/core/embed/rust/src/ui/layout_caesar/res/success.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/success.toif rename to core/embed/rust/src/ui/layout_caesar/res/success.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/tick.toif b/core/embed/rust/src/ui/layout_caesar/res/tick.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/tick.toif rename to core/embed/rust/src/ui/layout_caesar/res/tick.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/tick_fat.toif b/core/embed/rust/src/ui/layout_caesar/res/tick_fat.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/tick_fat.toif rename to core/embed/rust/src/ui/layout_caesar/res/tick_fat.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/trash.toif b/core/embed/rust/src/ui/layout_caesar/res/trash.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/trash.toif rename to core/embed/rust/src/ui/layout_caesar/res/trash.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/trezor_empty.toif b/core/embed/rust/src/ui/layout_caesar/res/trezor_empty.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/trezor_empty.toif rename to core/embed/rust/src/ui/layout_caesar/res/trezor_empty.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/user.toif b/core/embed/rust/src/ui/layout_caesar/res/user.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/user.toif rename to core/embed/rust/src/ui/layout_caesar/res/user.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/user_smaller.toif b/core/embed/rust/src/ui/layout_caesar/res/user_smaller.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/user_smaller.toif rename to core/embed/rust/src/ui/layout_caesar/res/user_smaller.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/wallet.toif b/core/embed/rust/src/ui/layout_caesar/res/wallet.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/wallet.toif rename to core/embed/rust/src/ui/layout_caesar/res/wallet.toif diff --git a/core/embed/rust/src/ui/layout_samson/res/warning.toif b/core/embed/rust/src/ui/layout_caesar/res/warning.toif similarity index 100% rename from core/embed/rust/src/ui/layout_samson/res/warning.toif rename to core/embed/rust/src/ui/layout_caesar/res/warning.toif diff --git a/core/embed/rust/src/ui/layout_samson/screens.rs b/core/embed/rust/src/ui/layout_caesar/screens.rs similarity index 79% rename from core/embed/rust/src/ui/layout_samson/screens.rs rename to core/embed/rust/src/ui/layout_caesar/screens.rs index c50857a4b3..70065304ba 100644 --- a/core/embed/rust/src/ui/layout_samson/screens.rs +++ b/core/embed/rust/src/ui/layout_caesar/screens.rs @@ -1,10 +1,11 @@ -use crate::ui::{ - component::base::Component, constant::screen, display, layout_samson::component::WelcomeScreen, -}; +use crate::ui::{component::base::Component, constant::screen, display}; use crate::ui::{display::Color, shape::render_on_display}; -use super::{component::ErrorScreen, constant}; +use super::{ + component::{ErrorScreen, WelcomeScreen}, + constant, +}; pub fn screen_fatal_error(title: &str, msg: &str, footer: &str) { let mut frame = ErrorScreen::new(title.into(), msg.into(), footer.into()); diff --git a/core/embed/rust/src/ui/layout_samson/theme/bootloader.rs b/core/embed/rust/src/ui/layout_caesar/theme/bootloader.rs similarity index 53% rename from core/embed/rust/src/ui/layout_samson/theme/bootloader.rs rename to core/embed/rust/src/ui/layout_caesar/theme/bootloader.rs index f131afe7a1..d008d26c7f 100644 --- a/core/embed/rust/src/ui/layout_samson/theme/bootloader.rs +++ b/core/embed/rust/src/ui/layout_caesar/theme/bootloader.rs @@ -9,12 +9,12 @@ pub use super::super::theme::{BLACK, WHITE}; pub const BLD_BG: Color = BLACK; pub const BLD_FG: Color = WHITE; -include_icon!(ICON_TRASH, "layout_samson/res/trash.toif"); -include_icon!(ICON_ALERT, "layout_samson/res/alert.toif"); -include_icon!(ICON_SPINNER, "layout_samson/res/spinner.toif"); -include_icon!(ICON_SUCCESS, "layout_samson/res/success.toif"); -include_icon!(ICON_REDO, "layout_samson/res/redo.toif"); -include_icon!(ICON_EXIT, "layout_samson/res/exit.toif"); +include_icon!(ICON_TRASH, "layout_caesar/res/trash.toif"); +include_icon!(ICON_ALERT, "layout_caesar/res/alert.toif"); +include_icon!(ICON_SPINNER, "layout_caesar/res/spinner.toif"); +include_icon!(ICON_SUCCESS, "layout_caesar/res/success.toif"); +include_icon!(ICON_REDO, "layout_caesar/res/redo.toif"); +include_icon!(ICON_EXIT, "layout_caesar/res/exit.toif"); pub const TEXT_NORMAL: TextStyle = TextStyle::new(Font::NORMAL, BLD_FG, BLD_BG, BLD_FG, BLD_FG); pub const TEXT_BOLD: TextStyle = TextStyle::new(Font::BOLD, BLD_FG, BLD_BG, BLD_FG, BLD_FG); diff --git a/core/embed/rust/src/ui/layout_samson/theme/mod.rs b/core/embed/rust/src/ui/layout_caesar/theme/mod.rs similarity index 69% rename from core/embed/rust/src/ui/layout_samson/theme/mod.rs rename to core/embed/rust/src/ui/layout_caesar/theme/mod.rs index 952f107946..608dc1fcdf 100644 --- a/core/embed/rust/src/ui/layout_samson/theme/mod.rs +++ b/core/embed/rust/src/ui/layout_caesar/theme/mod.rs @@ -65,35 +65,35 @@ pub fn textstyle_number(num: i32) -> &'static TextStyle { } // Firmware icons -include_icon!(ICON_ARM_LEFT, "layout_samson/res/arm_left.toif"); // 10*6 -include_icon!(ICON_ARM_RIGHT, "layout_samson/res/arm_right.toif"); // 10*6 -include_icon!(ICON_ARROW_LEFT, "layout_samson/res/arrow_left.toif"); // 4*7 -include_icon!(ICON_ARROW_LEFT_BIG, "layout_samson/res/arrow_left_big.toif"); // 8*7 -include_icon!(ICON_ARROW_RIGHT, "layout_samson/res/arrow_right.toif"); // 4*7 +include_icon!(ICON_ARM_LEFT, "layout_caesar/res/arm_left.toif"); // 10*6 +include_icon!(ICON_ARM_RIGHT, "layout_caesar/res/arm_right.toif"); // 10*6 +include_icon!(ICON_ARROW_LEFT, "layout_caesar/res/arrow_left.toif"); // 4*7 +include_icon!(ICON_ARROW_LEFT_BIG, "layout_caesar/res/arrow_left_big.toif"); // 8*7 +include_icon!(ICON_ARROW_RIGHT, "layout_caesar/res/arrow_right.toif"); // 4*7 include_icon!( ICON_ARROW_RIGHT_FAT, - "layout_samson/res/arrow_right_fat.toif" + "layout_caesar/res/arrow_right_fat.toif" ); // 4*8 -include_icon!(ICON_ARROW_UP, "layout_samson/res/arrow_up.toif"); // 8*4 -include_icon!(ICON_ARROW_DOWN, "layout_samson/res/arrow_down.toif"); // 7*4 -include_icon!(ICON_ARROW_BACK_UP, "layout_samson/res/arrow_back_up.toif"); // 8*8 -include_icon!(ICON_BIN, "layout_samson/res/bin.toif"); // 10*10 -include_icon!(ICON_CANCEL, "layout_samson/res/cancel.toif"); // 7*7 -include_icon!(ICON_COINJOIN, "layout_samson/res/coinjoin.toif"); // 12*12 -include_icon!(ICON_DELETE, "layout_samson/res/delete.toif"); // 9*7 -include_icon!(ICON_DEVICE_NAME, "layout_samson/res/device_name.toif"); // 116*18 -include_icon!(ICON_EYE, "layout_samson/res/eye_round.toif"); // 12*7 -include_icon!(ICON_LOCK, "layout_samson/res/lock.toif"); // 10*10 -include_icon!(ICON_LOCK_SMALL, "layout_samson/res/lock_small.toif"); // 6*7 -include_icon!(ICON_LOGO, "layout_samson/res/logo_22_33.toif"); // 22*33 -include_icon!(ICON_LOGO_EMPTY, "layout_samson/res/logo_22_33_empty.toif"); -include_icon!(ICON_NEXT_PAGE, "layout_samson/res/next_page.toif"); // 9*8 -include_icon!(ICON_PREV_PAGE, "layout_samson/res/prev_page.toif"); // 8*10 -include_icon!(ICON_SPACE, "layout_samson/res/space.toif"); // 12*3 -include_icon!(ICON_TICK, "layout_samson/res/tick.toif"); // 8*6 -include_icon!(ICON_TICK_FAT, "layout_samson/res/tick_fat.toif"); // 8*6 -include_icon!(ICON_WARNING, "layout_samson/res/warning.toif"); // 11*12 -include_icon!(ICON_WARN_TITLE, "layout_samson/res/bld_header_warn.toif"); +include_icon!(ICON_ARROW_UP, "layout_caesar/res/arrow_up.toif"); // 8*4 +include_icon!(ICON_ARROW_DOWN, "layout_caesar/res/arrow_down.toif"); // 7*4 +include_icon!(ICON_ARROW_BACK_UP, "layout_caesar/res/arrow_back_up.toif"); // 8*8 +include_icon!(ICON_BIN, "layout_caesar/res/bin.toif"); // 10*10 +include_icon!(ICON_CANCEL, "layout_caesar/res/cancel.toif"); // 7*7 +include_icon!(ICON_COINJOIN, "layout_caesar/res/coinjoin.toif"); // 12*12 +include_icon!(ICON_DELETE, "layout_caesar/res/delete.toif"); // 9*7 +include_icon!(ICON_DEVICE_NAME, "layout_caesar/res/device_name.toif"); // 116*18 +include_icon!(ICON_EYE, "layout_caesar/res/eye_round.toif"); // 12*7 +include_icon!(ICON_LOCK, "layout_caesar/res/lock.toif"); // 10*10 +include_icon!(ICON_LOCK_SMALL, "layout_caesar/res/lock_small.toif"); // 6*7 +include_icon!(ICON_LOGO, "layout_caesar/res/logo_22_33.toif"); // 22*33 +include_icon!(ICON_LOGO_EMPTY, "layout_caesar/res/logo_22_33_empty.toif"); +include_icon!(ICON_NEXT_PAGE, "layout_caesar/res/next_page.toif"); // 9*8 +include_icon!(ICON_PREV_PAGE, "layout_caesar/res/prev_page.toif"); // 8*10 +include_icon!(ICON_SPACE, "layout_caesar/res/space.toif"); // 12*3 +include_icon!(ICON_TICK, "layout_caesar/res/tick.toif"); // 8*6 +include_icon!(ICON_TICK_FAT, "layout_caesar/res/tick_fat.toif"); // 8*6 +include_icon!(ICON_WARNING, "layout_caesar/res/warning.toif"); // 11*12 +include_icon!(ICON_WARN_TITLE, "layout_caesar/res/bld_header_warn.toif"); // checklist settings pub const CHECKLIST_SPACING: i16 = 5; diff --git a/core/embed/rust/src/ui/layout_samson/ui_firmware.rs b/core/embed/rust/src/ui/layout_caesar/ui_firmware.rs similarity index 98% rename from core/embed/rust/src/ui/layout_samson/ui_firmware.rs rename to core/embed/rust/src/ui/layout_caesar/ui_firmware.rs index 446db57489..4875391260 100644 --- a/core/embed/rust/src/ui/layout_samson/ui_firmware.rs +++ b/core/embed/rust/src/ui/layout_caesar/ui_firmware.rs @@ -26,10 +26,6 @@ use crate::{ obj::{LayoutMaybeTrace, LayoutObj, RootComponent}, util::{ConfirmBlob, RecoveryType}, }, - layout_samson::{ - component::{ButtonActions, ButtonLayout, Page}, - constant, - }, ui_firmware::{ FirmwareUI, MAX_CHECKLIST_ITEMS, MAX_GROUP_SHARE_LINES, MAX_WORD_QUIZ_ITEMS, }, @@ -39,16 +35,17 @@ use crate::{ use super::{ component::{ - AddressDetails, ButtonDetails, ButtonPage, CoinJoinProgress, ConfirmHomescreen, Flow, - FlowPages, Frame, Homescreen, Lockscreen, NumberInput, PassphraseEntry, PinEntry, Progress, - ScrollableFrame, ShareWords, ShowMore, SimpleChoice, WordlistEntry, WordlistType, + AddressDetails, ButtonActions, ButtonDetails, ButtonLayout, ButtonPage, CoinJoinProgress, + ConfirmHomescreen, Flow, FlowPages, Frame, Homescreen, Lockscreen, NumberInput, Page, + PassphraseEntry, PinEntry, Progress, ScrollableFrame, ShareWords, ShowMore, SimpleChoice, + WordlistEntry, WordlistType, }, - theme, UISamson, + constant, theme, UICaesar, }; use heapless::Vec; -impl FirmwareUI for UISamson { +impl FirmwareUI for UICaesar { fn confirm_action( title: TString<'static>, action: Option>, @@ -1158,7 +1155,7 @@ impl FirmwareUI for UISamson { Ok(layout) } - fn show_share_words_quicksilver( + fn show_share_words_delizia( _words: heapless::Vec, 33>, _subtitle: Option>, _instructions: Obj, diff --git a/core/embed/rust/src/ui/layout_quicksilver/bootloader/intro.rs b/core/embed/rust/src/ui/layout_delizia/bootloader/intro.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/bootloader/intro.rs rename to core/embed/rust/src/ui/layout_delizia/bootloader/intro.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/bootloader/menu.rs b/core/embed/rust/src/ui/layout_delizia/bootloader/menu.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/bootloader/menu.rs rename to core/embed/rust/src/ui/layout_delizia/bootloader/menu.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/bootloader/mod.rs b/core/embed/rust/src/ui/layout_delizia/bootloader/mod.rs similarity index 98% rename from core/embed/rust/src/ui/layout_quicksilver/bootloader/mod.rs rename to core/embed/rust/src/ui/layout_delizia/bootloader/mod.rs index 09c77e4220..8e42934d41 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/bootloader/mod.rs +++ b/core/embed/rust/src/ui/layout_delizia/bootloader/mod.rs @@ -16,6 +16,7 @@ use super::{ bl_confirm::{Confirm, ConfirmTitle}, Button, ResultScreen, WelcomeScreen, }, + cshape::{render_loader, LoaderRange}, theme, theme::{ bootloader::{ @@ -26,7 +27,7 @@ use super::{ }, GREEN_LIGHT, GREY, }, - UIQuicksilver, + UIDelizia, }; use crate::ui::{ui_bootloader::BootloaderUI, CommonUI}; @@ -34,7 +35,6 @@ use crate::ui::{ui_bootloader::BootloaderUI, CommonUI}; use crate::ui::{ display::{toif::Toif, LOADER_MAX}, geometry::Alignment2D, - layout_quicksilver::cshape::{render_loader, LoaderRange}, shape, shape::render_on_display, }; @@ -53,10 +53,10 @@ pub type BootloaderString = String<128>; const RECONNECT_MESSAGE: &str = "PLEASE RECONNECT\nTHE DEVICE"; -const SCREEN: Rect = UIQuicksilver::SCREEN; +const SCREEN: Rect = UIDelizia::SCREEN; const PROGRESS_TEXT_ORIGIN: Point = Point::new(2, 28); -impl UIQuicksilver { +impl UIDelizia { fn screen_progress( text: &str, progress: u16, @@ -122,7 +122,7 @@ impl UIQuicksilver { } } -impl BootloaderUI for UIQuicksilver { +impl BootloaderUI for UIDelizia { fn screen_welcome() { let mut frame = Welcome::new(); show(&mut frame, true); diff --git a/core/embed/rust/src/ui/layout_quicksilver/bootloader/welcome.rs b/core/embed/rust/src/ui/layout_delizia/bootloader/welcome.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/bootloader/welcome.rs rename to core/embed/rust/src/ui/layout_delizia/bootloader/welcome.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/address_details.rs b/core/embed/rust/src/ui/layout_delizia/component/address_details.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/address_details.rs rename to core/embed/rust/src/ui/layout_delizia/component/address_details.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/binary_selection.rs b/core/embed/rust/src/ui/layout_delizia/component/binary_selection.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/binary_selection.rs rename to core/embed/rust/src/ui/layout_delizia/component/binary_selection.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/bl_confirm.rs b/core/embed/rust/src/ui/layout_delizia/component/bl_confirm.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/bl_confirm.rs rename to core/embed/rust/src/ui/layout_delizia/component/bl_confirm.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/button.rs b/core/embed/rust/src/ui/layout_delizia/component/button.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/button.rs rename to core/embed/rust/src/ui/layout_delizia/component/button.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/coinjoin_progress.rs b/core/embed/rust/src/ui/layout_delizia/component/coinjoin_progress.rs similarity index 98% rename from core/embed/rust/src/ui/layout_quicksilver/component/coinjoin_progress.rs rename to core/embed/rust/src/ui/layout_delizia/component/coinjoin_progress.rs index d2896eda4b..3d59fff8e4 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/coinjoin_progress.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/coinjoin_progress.rs @@ -8,14 +8,13 @@ use crate::{ ui::{ component::{base::Never, Bar, Component, Empty, Event, EventCtx, Label, Split}, geometry::{Insets, Offset, Rect}, - layout_quicksilver::constant, shape, shape::Renderer, util::animation_disabled, }, }; -use super::{theme, Frame}; +use super::{constant, theme, Frame}; const RECTANGLE_HEIGHT: i16 = 56; const LABEL_TOP: i16 = 135; diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/error.rs b/core/embed/rust/src/ui/layout_delizia/component/error.rs similarity index 96% rename from core/embed/rust/src/ui/layout_quicksilver/component/error.rs rename to core/embed/rust/src/ui/layout_delizia/component/error.rs index b69887f456..eda45be8ab 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/error.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/error.rs @@ -20,7 +20,7 @@ const TITLE_AREA_START: i16 = 70; const MESSAGE_AREA_START: i16 = 90; #[cfg(feature = "bootloader")] -const STYLE: &ResultStyle = &crate::ui::layout_quicksilver::theme::bootloader::RESULT_WIPE; +const STYLE: &ResultStyle = &super::theme::bootloader::RESULT_WIPE; #[cfg(not(feature = "bootloader"))] const STYLE: &ResultStyle = &super::theme::RESULT_ERROR; diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/fido.rs b/core/embed/rust/src/ui/layout_delizia/component/fido.rs similarity index 97% rename from core/embed/rust/src/ui/layout_quicksilver/component/fido.rs rename to core/embed/rust/src/ui/layout_delizia/component/fido.rs index a7ba6a2918..4f1452e60c 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/fido.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/fido.rs @@ -7,11 +7,12 @@ use crate::{ Component, Event, EventCtx, }, geometry::{Insets, Offset, Rect}, - layout_quicksilver::component::{fido_icons::get_fido_icon_data, theme}, shape::Renderer, }, }; +use super::super::component::{fido_icons::get_fido_icon_data, theme}; + pub struct FidoCredential TString<'static>> { app_icon: Option, text: Paragraphs>, diff --git a/core/embed/rust/src/ui/layout_delizia/component/fido_icons.rs b/core/embed/rust/src/ui/layout_delizia/component/fido_icons.rs new file mode 100644 index 0000000000..7e09c226ca --- /dev/null +++ b/core/embed/rust/src/ui/layout_delizia/component/fido_icons.rs @@ -0,0 +1,80 @@ +//! generated from webauthn_icons.rs.mako +//! (by running `make templates` in `core`) +//! do not edit manually! + + +use crate::strutil::TString; +use crate::ui::util::include_res; + + +const ICON_APPLE: &[u8] = include_res!("layout_delizia/res/fido/icon_apple.toif"); +const ICON_AWS: &[u8] = include_res!("layout_delizia/res/fido/icon_aws.toif"); +const ICON_BINANCE: &[u8] = include_res!("layout_delizia/res/fido/icon_binance.toif"); +const ICON_BITBUCKET: &[u8] = include_res!("layout_delizia/res/fido/icon_bitbucket.toif"); +const ICON_BITFINEX: &[u8] = include_res!("layout_delizia/res/fido/icon_bitfinex.toif"); +const ICON_BITWARDEN: &[u8] = include_res!("layout_delizia/res/fido/icon_bitwarden.toif"); +const ICON_CLOUDFLARE: &[u8] = include_res!("layout_delizia/res/fido/icon_cloudflare.toif"); +const ICON_COINBASE: &[u8] = include_res!("layout_delizia/res/fido/icon_coinbase.toif"); +const ICON_DASHLANE: &[u8] = include_res!("layout_delizia/res/fido/icon_dashlane.toif"); +const ICON_DROPBOX: &[u8] = include_res!("layout_delizia/res/fido/icon_dropbox.toif"); +const ICON_DUO: &[u8] = include_res!("layout_delizia/res/fido/icon_duo.toif"); +const ICON_FACEBOOK: &[u8] = include_res!("layout_delizia/res/fido/icon_facebook.toif"); +const ICON_FASTMAIL: &[u8] = include_res!("layout_delizia/res/fido/icon_fastmail.toif"); +const ICON_FEDORA: &[u8] = include_res!("layout_delizia/res/fido/icon_fedora.toif"); +const ICON_GANDI: &[u8] = include_res!("layout_delizia/res/fido/icon_gandi.toif"); +const ICON_GEMINI: &[u8] = include_res!("layout_delizia/res/fido/icon_gemini.toif"); +const ICON_GITHUB: &[u8] = include_res!("layout_delizia/res/fido/icon_github.toif"); +const ICON_GITLAB: &[u8] = include_res!("layout_delizia/res/fido/icon_gitlab.toif"); +const ICON_GOOGLE: &[u8] = include_res!("layout_delizia/res/fido/icon_google.toif"); +const ICON_INVITY: &[u8] = include_res!("layout_delizia/res/fido/icon_invity.toif"); +const ICON_KEEPER: &[u8] = include_res!("layout_delizia/res/fido/icon_keeper.toif"); +const ICON_KRAKEN: &[u8] = include_res!("layout_delizia/res/fido/icon_kraken.toif"); +const ICON_LOGIN_GOV: &[u8] = include_res!("layout_delizia/res/fido/icon_login.gov.toif"); +const ICON_MICROSOFT: &[u8] = include_res!("layout_delizia/res/fido/icon_microsoft.toif"); +const ICON_MOJEID: &[u8] = include_res!("layout_delizia/res/fido/icon_mojeid.toif"); +const ICON_NAMECHEAP: &[u8] = include_res!("layout_delizia/res/fido/icon_namecheap.toif"); +const ICON_PROTON: &[u8] = include_res!("layout_delizia/res/fido/icon_proton.toif"); +const ICON_SLUSHPOOL: &[u8] = include_res!("layout_delizia/res/fido/icon_slushpool.toif"); +const ICON_STRIPE: &[u8] = include_res!("layout_delizia/res/fido/icon_stripe.toif"); +const ICON_TUTANOTA: &[u8] = include_res!("layout_delizia/res/fido/icon_tutanota.toif"); + +/// Translates icon name into its data. +pub fn get_fido_icon_data(icon_name: Option>) -> Option< &'static [u8]> { + if let Some(icon_name) = icon_name { + icon_name.map(|c| match c { + "apple" => Some(ICON_APPLE), + "aws" => Some(ICON_AWS), + "binance" => Some(ICON_BINANCE), + "bitbucket" => Some(ICON_BITBUCKET), + "bitfinex" => Some(ICON_BITFINEX), + "bitwarden" => Some(ICON_BITWARDEN), + "cloudflare" => Some(ICON_CLOUDFLARE), + "coinbase" => Some(ICON_COINBASE), + "dashlane" => Some(ICON_DASHLANE), + "dropbox" => Some(ICON_DROPBOX), + "duo" => Some(ICON_DUO), + "facebook" => Some(ICON_FACEBOOK), + "fastmail" => Some(ICON_FASTMAIL), + "fedora" => Some(ICON_FEDORA), + "gandi" => Some(ICON_GANDI), + "gemini" => Some(ICON_GEMINI), + "github" => Some(ICON_GITHUB), + "gitlab" => Some(ICON_GITLAB), + "google" => Some(ICON_GOOGLE), + "invity" => Some(ICON_INVITY), + "keeper" => Some(ICON_KEEPER), + "kraken" => Some(ICON_KRAKEN), + "login.gov" => Some(ICON_LOGIN_GOV), + "microsoft" => Some(ICON_MICROSOFT), + "mojeid" => Some(ICON_MOJEID), + "namecheap" => Some(ICON_NAMECHEAP), + "proton" => Some(ICON_PROTON), + "slushpool" => Some(ICON_SLUSHPOOL), + "stripe" => Some(ICON_STRIPE), + "tutanota" => Some(ICON_TUTANOTA), + _ => None, + }) + } else { + None + } +} diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/fido_icons.rs.mako b/core/embed/rust/src/ui/layout_delizia/component/fido_icons.rs.mako similarity index 89% rename from core/embed/rust/src/ui/layout_quicksilver/component/fido_icons.rs.mako rename to core/embed/rust/src/ui/layout_delizia/component/fido_icons.rs.mako index 158f3960af..41587b975c 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/fido_icons.rs.mako +++ b/core/embed/rust/src/ui/layout_delizia/component/fido_icons.rs.mako @@ -17,7 +17,7 @@ for app in fido: %>\ % for icon_name, var_name in icons: -const ICON_${var_name}: &[u8] = include_res!("layout_quicksilver/res/fido/icon_${icon_name}.toif"); +const ICON_${var_name}: &[u8] = include_res!("layout_delizia/res/fido/icon_${icon_name}.toif"); % endfor /// Translates icon name into its data. diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/footer.rs b/core/embed/rust/src/ui/layout_delizia/component/footer.rs similarity index 99% rename from core/embed/rust/src/ui/layout_quicksilver/component/footer.rs rename to core/embed/rust/src/ui/layout_delizia/component/footer.rs index 77305556ab..8cef3673f1 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/footer.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/footer.rs @@ -5,13 +5,14 @@ use crate::{ display::{Color, Font}, event::SwipeEvent, geometry::{Alignment, Alignment2D, Direction, Offset, Point, Rect}, - layout_quicksilver::theme, lerp::Lerp, shape, shape::{Renderer, Text}, }, }; +use super::theme; + /// Component showing a task instruction, e.g. "Swipe up", and an optional /// content consisting of one of these: /// - a task description e.g. "Confirm transaction", or diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/frame.rs b/core/embed/rust/src/ui/layout_delizia/component/frame.rs similarity index 99% rename from core/embed/rust/src/ui/layout_quicksilver/component/frame.rs rename to core/embed/rust/src/ui/layout_delizia/component/frame.rs index 27b14bba05..c51cb3aaf0 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/frame.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/frame.rs @@ -12,12 +12,13 @@ use crate::{ display::{Color, Icon}, event::SwipeEvent, geometry::{Alignment, Direction, Insets, Point, Rect}, - layout_quicksilver::theme::TITLE_HEIGHT, lerp::Lerp, shape::{self, Renderer}, }, }; +use super::super::theme::TITLE_HEIGHT; + #[derive(Clone)] pub struct HorizontalSwipe { progress: i16, diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/header.rs b/core/embed/rust/src/ui/layout_delizia/component/header.rs similarity index 98% rename from core/embed/rust/src/ui/layout_quicksilver/component/header.rs rename to core/embed/rust/src/ui/layout_delizia/component/header.rs index 80e8fb1188..5d64c5ee5e 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/header.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/header.rs @@ -5,16 +5,17 @@ use crate::{ component::{text::TextStyle, Component, Event, EventCtx, FlowMsg, Label}, display::{Color, Icon}, geometry::{Alignment, Alignment2D, Insets, Offset, Rect}, - layout_quicksilver::{ - component::{Button, ButtonMsg, ButtonStyleSheet}, - theme::{self, TITLE_HEIGHT}, - }, lerp::Lerp, shape::{self, Renderer}, util::animation_disabled, }, }; +use super::super::{ + component::{Button, ButtonMsg, ButtonStyleSheet}, + theme::{self, TITLE_HEIGHT}, +}; + const ANIMATION_TIME_MS: u32 = 1000; #[derive(Default, Clone)] diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/hold_to_confirm.rs b/core/embed/rust/src/ui/layout_delizia/component/hold_to_confirm.rs similarity index 99% rename from core/embed/rust/src/ui/layout_quicksilver/component/hold_to_confirm.rs rename to core/embed/rust/src/ui/layout_delizia/component/hold_to_confirm.rs index b2c1088adc..248d1a94d5 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/hold_to_confirm.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/hold_to_confirm.rs @@ -12,7 +12,10 @@ use crate::{ }, }; -use super::{theme, Button, ButtonContent, ButtonMsg}; +use super::{ + theme::{self, TITLE_HEIGHT}, + Button, ButtonContent, ButtonMsg, +}; #[cfg(feature = "haptic")] use crate::trezorhal::haptic::{self, HapticEffect}; @@ -22,7 +25,6 @@ use crate::{ component::Label, constant::screen, geometry::{Alignment, Point}, - layout_quicksilver::theme::TITLE_HEIGHT, }, }; use pareen; diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/homescreen.rs b/core/embed/rust/src/ui/layout_delizia/component/homescreen.rs similarity index 99% rename from core/embed/rust/src/ui/layout_quicksilver/component/homescreen.rs rename to core/embed/rust/src/ui/layout_delizia/component/homescreen.rs index 5c3747b312..3c66469ec0 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/homescreen.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/homescreen.rs @@ -11,7 +11,6 @@ use crate::{ event::TouchEvent, geometry::{Alignment, Alignment2D, Offset, Point, Rect}, layout::util::get_user_custom_image, - layout_quicksilver::constant, shape::{self, Renderer}, }, }; @@ -19,17 +18,17 @@ use crate::{ use crate::ui::{ component::{base::AttachType, Label}, constant::{screen, HEIGHT, WIDTH}, - layout_quicksilver::{ - cshape, - cshape::UnlockOverlay, - theme::{GREY_LIGHT, HOMESCREEN_ICON, ICON_KEY}, - }, lerp::Lerp, shape::{render_on_canvas, ImageBuffer, Rgb565Canvas}, util::animation_disabled, }; -use super::{theme, Loader, LoaderMsg}; +use super::{ + super::cshape::{self, UnlockOverlay}, + constant, theme, + theme::{GREY_LIGHT, HOMESCREEN_ICON, ICON_KEY}, + Loader, LoaderMsg, +}; const AREA: Rect = constant::screen(); const TOP_CENTER: Point = AREA.top_center(); diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/bip39.rs b/core/embed/rust/src/ui/layout_delizia/component/keyboard/bip39.rs similarity index 96% rename from core/embed/rust/src/ui/layout_quicksilver/component/keyboard/bip39.rs rename to core/embed/rust/src/ui/layout_delizia/component/keyboard/bip39.rs index 41435fffb2..147ba3e1f9 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/bip39.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/keyboard/bip39.rs @@ -3,22 +3,23 @@ use crate::{ ui::{ component::{text::common::TextBox, Component, Event, EventCtx}, geometry::{Alignment, Alignment2D, Offset, Point, Rect}, - layout_quicksilver::{ - component::{ - keyboard::{ - common::{render_pending_marker, render_pill_shape, MultiTapKeyboard}, - mnemonic::{MnemonicInput, MnemonicInputMsg, MNEMONIC_KEY_COUNT}, - }, - Button, ButtonMsg, - }, - constant::WIDTH, - theme, - }, shape, shape::Renderer, }, }; +use super::super::{ + super::component::{ + keyboard::{ + common::{render_pending_marker, render_pill_shape, MultiTapKeyboard}, + mnemonic::{MnemonicInput, MnemonicInputMsg, MNEMONIC_KEY_COUNT}, + }, + Button, ButtonMsg, + }, + constant::WIDTH, + theme, +}; + const MAX_LENGTH: usize = 8; pub struct Bip39Input { diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/common.rs b/core/embed/rust/src/ui/layout_delizia/component/keyboard/common.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/keyboard/common.rs rename to core/embed/rust/src/ui/layout_delizia/component/keyboard/common.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/mnemonic.rs b/core/embed/rust/src/ui/layout_delizia/component/keyboard/mnemonic.rs similarity index 98% rename from core/embed/rust/src/ui/layout_quicksilver/component/keyboard/mnemonic.rs rename to core/embed/rust/src/ui/layout_delizia/component/keyboard/mnemonic.rs index 2ec66d0bd9..5a9d2b38f2 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/mnemonic.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/keyboard/mnemonic.rs @@ -3,14 +3,15 @@ use crate::{ ui::{ component::{Component, Event, EventCtx, Label, Maybe}, geometry::{Alignment, Grid, Insets, Rect}, - layout_quicksilver::{ - component::{Button, ButtonMsg}, - cshape, theme, - }, shape::Renderer, }, }; +use super::super::super::{ + component::{Button, ButtonMsg}, + cshape, theme, +}; + pub const MNEMONIC_KEY_COUNT: usize = 9; const BACK_BUTTON_RIGHT_EXPAND: i16 = 24; diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/mod.rs b/core/embed/rust/src/ui/layout_delizia/component/keyboard/mod.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/keyboard/mod.rs rename to core/embed/rust/src/ui/layout_delizia/component/keyboard/mod.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/passphrase.rs b/core/embed/rust/src/ui/layout_delizia/component/keyboard/passphrase.rs similarity index 98% rename from core/embed/rust/src/ui/layout_quicksilver/component/keyboard/passphrase.rs rename to core/embed/rust/src/ui/layout_delizia/component/keyboard/passphrase.rs index 22b791d922..b7a760d81d 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/passphrase.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/keyboard/passphrase.rs @@ -8,20 +8,21 @@ use crate::{ }, display, geometry::{Alignment, Direction, Grid, Insets, Offset, Rect}, - layout_quicksilver::{ - component::{ - button::{Button, ButtonContent, ButtonMsg}, - keyboard::common::{render_pending_marker, MultiTapKeyboard}, - theme, - }, - cshape, - }, shape, shape::Renderer, util::long_line_content_with_ellipsis, }, }; +use super::super::super::{ + component::{ + button::{Button, ButtonContent, ButtonMsg}, + keyboard::common::{render_pending_marker, MultiTapKeyboard}, + theme, + }, + cshape, +}; + use core::cell::Cell; use num_traits::ToPrimitive; diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/pin.rs b/core/embed/rust/src/ui/layout_delizia/component/keyboard/pin.rs similarity index 98% rename from core/embed/rust/src/ui/layout_quicksilver/component/keyboard/pin.rs rename to core/embed/rust/src/ui/layout_delizia/component/keyboard/pin.rs index 443c10e2ac..14435ff172 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/pin.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/keyboard/pin.rs @@ -13,21 +13,22 @@ use crate::{ display::Font, event::TouchEvent, geometry::{Alignment, Alignment2D, Direction, Grid, Insets, Offset, Rect}, - layout_quicksilver::{ - component::{ - button::{ - Button, ButtonContent, - ButtonMsg::{self, Clicked}, - }, - theme, - }, - cshape, - }, shape::{self, Renderer}, util::animation_disabled, }, }; +use super::super::super::{ + component::{ + button::{ + Button, ButtonContent, + ButtonMsg::{self, Clicked}, + }, + theme, + }, + cshape, +}; + pub enum PinKeyboardMsg { Confirmed, Cancelled, diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/slip39.rs b/core/embed/rust/src/ui/layout_delizia/component/keyboard/slip39.rs similarity index 96% rename from core/embed/rust/src/ui/layout_quicksilver/component/keyboard/slip39.rs rename to core/embed/rust/src/ui/layout_delizia/component/keyboard/slip39.rs index 5abb71c2ea..2e34fbfa93 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/slip39.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/keyboard/slip39.rs @@ -10,21 +10,22 @@ use crate::{ }, constant::WIDTH, geometry::{Alignment, Alignment2D, Offset, Point, Rect}, - layout_quicksilver::{ - component::{ - keyboard::{ - common::{render_pending_marker, render_pill_shape, MultiTapKeyboard}, - mnemonic::{MnemonicInput, MnemonicInputMsg, MNEMONIC_KEY_COUNT}, - }, - Button, ButtonContent, ButtonMsg, - }, - theme, - }, shape::{self, Renderer}, util::ResultExt, }, }; +use super::super::{ + super::component::{ + keyboard::{ + common::{render_pending_marker, render_pill_shape, MultiTapKeyboard}, + mnemonic::{MnemonicInput, MnemonicInputMsg, MNEMONIC_KEY_COUNT}, + }, + Button, ButtonContent, ButtonMsg, + }, + theme, +}; + const MAX_LENGTH: usize = 8; pub struct Slip39Input { diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/word_count.rs b/core/embed/rust/src/ui/layout_delizia/component/keyboard/word_count.rs similarity index 96% rename from core/embed/rust/src/ui/layout_quicksilver/component/keyboard/word_count.rs rename to core/embed/rust/src/ui/layout_delizia/component/keyboard/word_count.rs index 937a01148d..df13ee454d 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/keyboard/word_count.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/keyboard/word_count.rs @@ -1,16 +1,17 @@ use crate::ui::{ component::{Component, Event, EventCtx}, geometry::{Alignment, Grid, GridCellSpan, Rect}, - layout_quicksilver::{ - component::{ - button::{Button, ButtonContent, ButtonMsg}, - BinarySelection, BinarySelectionMsg, - }, - cshape, theme, - }, shape::Renderer, }; +use super::super::super::{ + component::{ + button::{Button, ButtonContent, ButtonMsg}, + BinarySelection, BinarySelectionMsg, + }, + cshape, theme, +}; + pub enum SelectWordCountMsg { Selected(u32), } diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/loader.rs b/core/embed/rust/src/ui/layout_delizia/component/loader.rs similarity index 98% rename from core/embed/rust/src/ui/layout_quicksilver/component/loader.rs rename to core/embed/rust/src/ui/layout_delizia/component/loader.rs index 742197a66f..158a0bc83e 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/loader.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/loader.rs @@ -7,13 +7,15 @@ use crate::{ component::{Component, Event, EventCtx, Pad}, display::{self, toif::Icon, Color, LOADER_MAX}, geometry::{Alignment2D, Offset, Rect}, - layout_quicksilver::cshape::{render_loader, LoaderRange}, shape::{self, Renderer}, util::animation_disabled, }, }; -use super::{constant, theme}; +use super::{ + super::cshape::{render_loader, LoaderRange}, + constant, theme, +}; const GROWING_DURATION_MS: u32 = 1000; const SHRINKING_DURATION_MS: u32 = 500; diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/mod.rs b/core/embed/rust/src/ui/layout_delizia/component/mod.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/mod.rs rename to core/embed/rust/src/ui/layout_delizia/component/mod.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/number_input.rs b/core/embed/rust/src/ui/layout_delizia/component/number_input.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/number_input.rs rename to core/embed/rust/src/ui/layout_delizia/component/number_input.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/number_input_slider.rs b/core/embed/rust/src/ui/layout_delizia/component/number_input_slider.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/number_input_slider.rs rename to core/embed/rust/src/ui/layout_delizia/component/number_input_slider.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/progress.rs b/core/embed/rust/src/ui/layout_delizia/component/progress.rs similarity index 96% rename from core/embed/rust/src/ui/layout_quicksilver/component/progress.rs rename to core/embed/rust/src/ui/layout_delizia/component/progress.rs index 3df03a53cb..6265b727ac 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/progress.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/progress.rs @@ -10,16 +10,16 @@ use crate::{ }, display::{Font, LOADER_MAX}, geometry::{Insets, Offset, Rect}, - layout_quicksilver::{ - constant, - cshape::{render_loader, LoaderRange}, - }, shape::Renderer, util::animation_disabled, }, }; -use super::theme; +use super::super::{ + constant, + cshape::{render_loader, LoaderRange}, + theme, +}; pub struct Progress { title: Label<'static>, diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/prompt_screen.rs b/core/embed/rust/src/ui/layout_delizia/component/prompt_screen.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/prompt_screen.rs rename to core/embed/rust/src/ui/layout_delizia/component/prompt_screen.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/result.rs b/core/embed/rust/src/ui/layout_delizia/component/result.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/result.rs rename to core/embed/rust/src/ui/layout_delizia/component/result.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/scroll.rs b/core/embed/rust/src/ui/layout_delizia/component/scroll.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/scroll.rs rename to core/embed/rust/src/ui/layout_delizia/component/scroll.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/share_words.rs b/core/embed/rust/src/ui/layout_delizia/component/share_words.rs similarity index 98% rename from core/embed/rust/src/ui/layout_quicksilver/component/share_words.rs rename to core/embed/rust/src/ui/layout_delizia/component/share_words.rs index 7a4a6b6c89..42138c28b3 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/share_words.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/share_words.rs @@ -1,4 +1,3 @@ -use super::theme; use crate::{ strutil::TString, translations::TR, @@ -6,12 +5,17 @@ use crate::{ component::{base::AttachType, text::TextStyle, Component, Event, EventCtx, Never}, event::SwipeEvent, geometry::{Alignment, Alignment2D, Direction, Insets, Offset, Rect}, - layout_quicksilver::component::{swipe_content::SwipeAttachAnimation, InternallySwipable}, shape::{self, Renderer}, }, }; + use heapless::Vec; +use super::{ + super::component::{swipe_content::SwipeAttachAnimation, InternallySwipable}, + theme, +}; + const MAX_WORDS: usize = 33; // super-shamir has 33 words, all other have less type IndexVec = Vec; diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/status_screen.rs b/core/embed/rust/src/ui/layout_delizia/component/status_screen.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/status_screen.rs rename to core/embed/rust/src/ui/layout_delizia/component/status_screen.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/swipe_content.rs b/core/embed/rust/src/ui/layout_delizia/component/swipe_content.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/swipe_content.rs rename to core/embed/rust/src/ui/layout_delizia/component/swipe_content.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/swipe_up_screen.rs b/core/embed/rust/src/ui/layout_delizia/component/swipe_up_screen.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/swipe_up_screen.rs rename to core/embed/rust/src/ui/layout_delizia/component/swipe_up_screen.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/tap_to_confirm.rs b/core/embed/rust/src/ui/layout_delizia/component/tap_to_confirm.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/tap_to_confirm.rs rename to core/embed/rust/src/ui/layout_delizia/component/tap_to_confirm.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/updatable_more_info.rs b/core/embed/rust/src/ui/layout_delizia/component/updatable_more_info.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/updatable_more_info.rs rename to core/embed/rust/src/ui/layout_delizia/component/updatable_more_info.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/vertical_menu.rs b/core/embed/rust/src/ui/layout_delizia/component/vertical_menu.rs similarity index 98% rename from core/embed/rust/src/ui/layout_quicksilver/component/vertical_menu.rs rename to core/embed/rust/src/ui/layout_delizia/component/vertical_menu.rs index 5121f82245..f2d1639b33 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component/vertical_menu.rs +++ b/core/embed/rust/src/ui/layout_delizia/component/vertical_menu.rs @@ -1,6 +1,5 @@ use heapless::Vec; -use super::{theme, InternallySwipable}; use crate::{ strutil::TString, time::{Duration, Stopwatch}, @@ -12,13 +11,17 @@ use crate::{ constant::screen, display::{Color, Icon}, geometry::{Direction, Offset, Rect}, - layout_quicksilver::component::button::{Button, ButtonContent, ButtonMsg, IconText}, lerp::Lerp, shape::{Bar, Renderer}, util::animation_disabled, }, }; +use super::{ + super::component::button::{Button, ButtonContent, ButtonMsg, IconText}, + theme, InternallySwipable, +}; + pub enum VerticalMenuChoiceMsg { Selected(usize), } diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/welcome_screen.rs b/core/embed/rust/src/ui/layout_delizia/component/welcome_screen.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/component/welcome_screen.rs rename to core/embed/rust/src/ui/layout_delizia/component/welcome_screen.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/component_msg_obj.rs b/core/embed/rust/src/ui/layout_delizia/component_msg_obj.rs similarity index 98% rename from core/embed/rust/src/ui/layout_quicksilver/component_msg_obj.rs rename to core/embed/rust/src/ui/layout_delizia/component_msg_obj.rs index cf71847804..966b9c0cd7 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/component_msg_obj.rs +++ b/core/embed/rust/src/ui/layout_delizia/component_msg_obj.rs @@ -3,7 +3,7 @@ use core::convert::TryInto; use super::component::{ AddressDetails, CoinJoinProgress, Frame, FrameMsg, Homescreen, HomescreenMsg, Lockscreen, MnemonicInput, MnemonicKeyboard, MnemonicKeyboardMsg, PinKeyboard, PinKeyboardMsg, Progress, - PromptScreen, SelectWordCount, SelectWordCountMsg, StatusScreen, SwipeUpScreen, + PromptScreen, SelectWordCount, SelectWordCountMsg, StatusScreen, SwipeContent, SwipeUpScreen, SwipeUpScreenMsg, VerticalMenu, VerticalMenuChoiceMsg, }; use crate::{ @@ -19,7 +19,6 @@ use crate::{ obj::ComponentMsgObj, result::{CANCELLED, CONFIRMED}, }, - layout_quicksilver::component::SwipeContent, }, }; diff --git a/core/embed/rust/src/ui/layout_quicksilver/constant.rs b/core/embed/rust/src/ui/layout_delizia/constant.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/constant.rs rename to core/embed/rust/src/ui/layout_delizia/constant.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/cshape/keyboard_overlay.rs b/core/embed/rust/src/ui/layout_delizia/cshape/keyboard_overlay.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/cshape/keyboard_overlay.rs rename to core/embed/rust/src/ui/layout_delizia/cshape/keyboard_overlay.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/cshape/loader.rs b/core/embed/rust/src/ui/layout_delizia/cshape/loader.rs similarity index 89% rename from core/embed/rust/src/ui/layout_quicksilver/cshape/loader.rs rename to core/embed/rust/src/ui/layout_delizia/cshape/loader.rs index 45011de21c..b81575dc09 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/cshape/loader.rs +++ b/core/embed/rust/src/ui/layout_delizia/cshape/loader.rs @@ -1,6 +1,6 @@ -use crate::ui::{ - display::Color, geometry::Point, layout_quicksilver::constant, shape, shape::Renderer, -}; +use crate::ui::{display::Color, geometry::Point, shape, shape::Renderer}; + +use super::super::constant; pub enum LoaderRange { Full, diff --git a/core/embed/rust/src/ui/layout_quicksilver/cshape/mod.rs b/core/embed/rust/src/ui/layout_delizia/cshape/mod.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/cshape/mod.rs rename to core/embed/rust/src/ui/layout_delizia/cshape/mod.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/cshape/unlock_overlay.rs b/core/embed/rust/src/ui/layout_delizia/cshape/unlock_overlay.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/cshape/unlock_overlay.rs rename to core/embed/rust/src/ui/layout_delizia/cshape/unlock_overlay.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/confirm_action.rs b/core/embed/rust/src/ui/layout_delizia/flow/confirm_action.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/confirm_action.rs rename to core/embed/rust/src/ui/layout_delizia/flow/confirm_action.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/confirm_fido.rs b/core/embed/rust/src/ui/layout_delizia/flow/confirm_fido.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/confirm_fido.rs rename to core/embed/rust/src/ui/layout_delizia/flow/confirm_fido.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/confirm_firmware_update.rs b/core/embed/rust/src/ui/layout_delizia/flow/confirm_firmware_update.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/confirm_firmware_update.rs rename to core/embed/rust/src/ui/layout_delizia/flow/confirm_firmware_update.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/confirm_homescreen.rs b/core/embed/rust/src/ui/layout_delizia/flow/confirm_homescreen.rs similarity index 94% rename from core/embed/rust/src/ui/layout_quicksilver/flow/confirm_homescreen.rs rename to core/embed/rust/src/ui/layout_delizia/flow/confirm_homescreen.rs index 8af41267ff..044e4f6404 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/flow/confirm_homescreen.rs +++ b/core/embed/rust/src/ui/layout_delizia/flow/confirm_homescreen.rs @@ -9,16 +9,16 @@ use crate::{ FlowController, FlowMsg, SwipeFlow, }, geometry::Direction, - layout_quicksilver::{ - component::{ - Frame, FrameMsg, PromptMsg, PromptScreen, SwipeContent, VerticalMenu, - VerticalMenuChoiceMsg, - }, - theme, - }, }, }; +use super::super::{ + component::{ + Frame, FrameMsg, PromptMsg, PromptScreen, SwipeContent, VerticalMenu, VerticalMenuChoiceMsg, + }, + theme, +}; + /// Flow for a setting of homescreen wallpaper showing a preview of the image, /// menu to cancel and tap to confirm prompt. #[derive(Copy, Clone, PartialEq, Eq)] diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/confirm_output.rs b/core/embed/rust/src/ui/layout_delizia/flow/confirm_output.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/confirm_output.rs rename to core/embed/rust/src/ui/layout_delizia/flow/confirm_output.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/confirm_reset.rs b/core/embed/rust/src/ui/layout_delizia/flow/confirm_reset.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/confirm_reset.rs rename to core/embed/rust/src/ui/layout_delizia/flow/confirm_reset.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/confirm_set_new_pin.rs b/core/embed/rust/src/ui/layout_delizia/flow/confirm_set_new_pin.rs similarity index 97% rename from core/embed/rust/src/ui/layout_quicksilver/flow/confirm_set_new_pin.rs rename to core/embed/rust/src/ui/layout_delizia/flow/confirm_set_new_pin.rs index 7d17a0dd6d..60fc72acab 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/flow/confirm_set_new_pin.rs +++ b/core/embed/rust/src/ui/layout_delizia/flow/confirm_set_new_pin.rs @@ -13,12 +13,13 @@ use crate::{ FlowController, FlowMsg, SwipeFlow, }, geometry::Direction, - layout_quicksilver::component::SwipeContent, }, }; use super::super::{ - component::{Frame, FrameMsg, PromptMsg, PromptScreen, VerticalMenu, VerticalMenuChoiceMsg}, + component::{ + Frame, FrameMsg, PromptMsg, PromptScreen, SwipeContent, VerticalMenu, VerticalMenuChoiceMsg, + }, theme, }; diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/confirm_summary.rs b/core/embed/rust/src/ui/layout_delizia/flow/confirm_summary.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/confirm_summary.rs rename to core/embed/rust/src/ui/layout_delizia/flow/confirm_summary.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/continue_recovery_homepage.rs b/core/embed/rust/src/ui/layout_delizia/flow/continue_recovery_homepage.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/continue_recovery_homepage.rs rename to core/embed/rust/src/ui/layout_delizia/flow/continue_recovery_homepage.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/get_address.rs b/core/embed/rust/src/ui/layout_delizia/flow/get_address.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/get_address.rs rename to core/embed/rust/src/ui/layout_delizia/flow/get_address.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/mod.rs b/core/embed/rust/src/ui/layout_delizia/flow/mod.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/mod.rs rename to core/embed/rust/src/ui/layout_delizia/flow/mod.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/prompt_backup.rs b/core/embed/rust/src/ui/layout_delizia/flow/prompt_backup.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/prompt_backup.rs rename to core/embed/rust/src/ui/layout_delizia/flow/prompt_backup.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/request_number.rs b/core/embed/rust/src/ui/layout_delizia/flow/request_number.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/request_number.rs rename to core/embed/rust/src/ui/layout_delizia/flow/request_number.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/request_passphrase.rs b/core/embed/rust/src/ui/layout_delizia/flow/request_passphrase.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/request_passphrase.rs rename to core/embed/rust/src/ui/layout_delizia/flow/request_passphrase.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/set_brightness.rs b/core/embed/rust/src/ui/layout_delizia/flow/set_brightness.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/set_brightness.rs rename to core/embed/rust/src/ui/layout_delizia/flow/set_brightness.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/show_danger.rs b/core/embed/rust/src/ui/layout_delizia/flow/show_danger.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/show_danger.rs rename to core/embed/rust/src/ui/layout_delizia/flow/show_danger.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/show_share_words.rs b/core/embed/rust/src/ui/layout_delizia/flow/show_share_words.rs similarity index 96% rename from core/embed/rust/src/ui/layout_quicksilver/flow/show_share_words.rs rename to core/embed/rust/src/ui/layout_delizia/flow/show_share_words.rs index d90ed6d841..4a4cfbfdcf 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/flow/show_share_words.rs +++ b/core/embed/rust/src/ui/layout_delizia/flow/show_share_words.rs @@ -14,15 +14,15 @@ use crate::{ FlowController, FlowMsg, SwipeFlow, }, geometry::Direction, - layout_quicksilver::component::{ - InternallySwipable, InternallySwipableContent, SwipeContent, - }, }, }; use heapless::Vec; use super::super::{ - component::{Footer, Frame, FrameMsg, Header, PromptScreen, ShareWords}, + component::{ + Footer, Frame, FrameMsg, Header, InternallySwipable, InternallySwipableContent, + PromptScreen, ShareWords, SwipeContent, + }, theme, }; diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/show_tutorial.rs b/core/embed/rust/src/ui/layout_delizia/flow/show_tutorial.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/flow/show_tutorial.rs rename to core/embed/rust/src/ui/layout_delizia/flow/show_tutorial.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/flow/util.rs b/core/embed/rust/src/ui/layout_delizia/flow/util.rs similarity index 99% rename from core/embed/rust/src/ui/layout_quicksilver/flow/util.rs rename to core/embed/rust/src/ui/layout_delizia/flow/util.rs index 157c77a91d..5efde62b58 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/flow/util.rs +++ b/core/embed/rust/src/ui/layout_delizia/flow/util.rs @@ -1,10 +1,3 @@ -use super::{ - super::{ - component::{Frame, FrameMsg}, - theme, - }, - ConfirmActionExtra, ConfirmActionMenuStrings, ConfirmActionStrings, -}; use crate::{ error::Error, maybe_trace::MaybeTrace, @@ -24,11 +17,18 @@ use crate::{ flow::{FlowMsg, Swipable, SwipeFlow, SwipePage}, geometry::Direction, layout::util::{ConfirmBlob, StrOrBytes}, - layout_quicksilver::{component::SwipeContent, flow}, }, }; use heapless::Vec; +use super::{ + super::{ + component::{Frame, FrameMsg, SwipeContent}, + flow, theme, + }, + ConfirmActionExtra, ConfirmActionMenuStrings, ConfirmActionStrings, +}; + pub struct ConfirmBlobParams { title: TString<'static>, subtitle: Option>, diff --git a/core/embed/rust/src/ui/layout_quicksilver/mod.rs b/core/embed/rust/src/ui/layout_delizia/mod.rs similarity index 93% rename from core/embed/rust/src/ui/layout_quicksilver/mod.rs rename to core/embed/rust/src/ui/layout_delizia/mod.rs index 6f656760c7..7541222d27 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/mod.rs +++ b/core/embed/rust/src/ui/layout_delizia/mod.rs @@ -1,5 +1,5 @@ use super::{geometry::Rect, CommonUI}; -use crate::ui::layout_quicksilver::theme::backlight; +use theme::backlight; #[cfg(feature = "bootloader")] pub mod bootloader; @@ -16,9 +16,9 @@ pub mod screens; #[cfg(feature = "micropython")] pub mod ui_firmware; -pub struct UIQuicksilver; +pub struct UIDelizia; -impl CommonUI for UIQuicksilver { +impl CommonUI for UIDelizia { #[cfg(feature = "backlight")] fn fadein() { crate::ui::display::fade_backlight_duration(backlight::get_backlight_normal(), 150); diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/asterisk16.png b/core/embed/rust/src/ui/layout_delizia/res/asterisk16.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/asterisk16.png rename to core/embed/rust/src/ui/layout_delizia/res/asterisk16.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/asterisk16.toif b/core/embed/rust/src/ui/layout_delizia/res/asterisk16.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/asterisk16.toif rename to core/embed/rust/src/ui/layout_delizia/res/asterisk16.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/autofill30.png b/core/embed/rust/src/ui/layout_delizia/res/autofill30.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/autofill30.png rename to core/embed/rust/src/ui/layout_delizia/res/autofill30.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/autofill30.toif b/core/embed/rust/src/ui/layout_delizia/res/autofill30.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/autofill30.toif rename to core/embed/rust/src/ui/layout_delizia/res/autofill30.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/bullet_checkmark20.png b/core/embed/rust/src/ui/layout_delizia/res/bullet_checkmark20.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/bullet_checkmark20.png rename to core/embed/rust/src/ui/layout_delizia/res/bullet_checkmark20.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/bullet_checkmark20.toif b/core/embed/rust/src/ui/layout_delizia/res/bullet_checkmark20.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/bullet_checkmark20.toif rename to core/embed/rust/src/ui/layout_delizia/res/bullet_checkmark20.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/cancel24.png b/core/embed/rust/src/ui/layout_delizia/res/cancel24.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/cancel24.png rename to core/embed/rust/src/ui/layout_delizia/res/cancel24.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/cancel24.toif b/core/embed/rust/src/ui/layout_delizia/res/cancel24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/cancel24.toif rename to core/embed/rust/src/ui/layout_delizia/res/cancel24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/central_circle.png b/core/embed/rust/src/ui/layout_delizia/res/central_circle.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/central_circle.png rename to core/embed/rust/src/ui/layout_delizia/res/central_circle.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/central_circle.toif b/core/embed/rust/src/ui/layout_delizia/res/central_circle.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/central_circle.toif rename to core/embed/rust/src/ui/layout_delizia/res/central_circle.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/check24.toif b/core/embed/rust/src/ui/layout_delizia/res/check24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/check24.toif rename to core/embed/rust/src/ui/layout_delizia/res/check24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/check40.toif b/core/embed/rust/src/ui/layout_delizia/res/check40.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/check40.toif rename to core/embed/rust/src/ui/layout_delizia/res/check40.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/chevron_left24.png b/core/embed/rust/src/ui/layout_delizia/res/chevron_left24.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/chevron_left24.png rename to core/embed/rust/src/ui/layout_delizia/res/chevron_left24.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/chevron_left24.toif b/core/embed/rust/src/ui/layout_delizia/res/chevron_left24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/chevron_left24.toif rename to core/embed/rust/src/ui/layout_delizia/res/chevron_left24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/chevron_right24.png b/core/embed/rust/src/ui/layout_delizia/res/chevron_right24.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/chevron_right24.png rename to core/embed/rust/src/ui/layout_delizia/res/chevron_right24.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/chevron_right24.toif b/core/embed/rust/src/ui/layout_delizia/res/chevron_right24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/chevron_right24.toif rename to core/embed/rust/src/ui/layout_delizia/res/chevron_right24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/close30.png b/core/embed/rust/src/ui/layout_delizia/res/close30.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/close30.png rename to core/embed/rust/src/ui/layout_delizia/res/close30.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/close30.toif b/core/embed/rust/src/ui/layout_delizia/res/close30.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/close30.toif rename to core/embed/rust/src/ui/layout_delizia/res/close30.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/confirm_input30.png b/core/embed/rust/src/ui/layout_delizia/res/confirm_input30.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/confirm_input30.png rename to core/embed/rust/src/ui/layout_delizia/res/confirm_input30.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/confirm_input30.toif b/core/embed/rust/src/ui/layout_delizia/res/confirm_input30.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/confirm_input30.toif rename to core/embed/rust/src/ui/layout_delizia/res/confirm_input30.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/delete30.png b/core/embed/rust/src/ui/layout_delizia/res/delete30.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/delete30.png rename to core/embed/rust/src/ui/layout_delizia/res/delete30.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/delete30.toif b/core/embed/rust/src/ui/layout_delizia/res/delete30.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/delete30.toif rename to core/embed/rust/src/ui/layout_delizia/res/delete30.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/download24.png b/core/embed/rust/src/ui/layout_delizia/res/download24.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/download24.png rename to core/embed/rust/src/ui/layout_delizia/res/download24.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/download24.toif b/core/embed/rust/src/ui/layout_delizia/res/download24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/download24.toif rename to core/embed/rust/src/ui/layout_delizia/res/download24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/factory_reset24.png b/core/embed/rust/src/ui/layout_delizia/res/factory_reset24.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/factory_reset24.png rename to core/embed/rust/src/ui/layout_delizia/res/factory_reset24.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/factory_reset24.toif b/core/embed/rust/src/ui/layout_delizia/res/factory_reset24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/factory_reset24.toif rename to core/embed/rust/src/ui/layout_delizia/res/factory_reset24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_apple.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_apple.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_apple.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_apple.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_aws.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_aws.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_aws.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_aws.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_binance.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_binance.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_binance.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_binance.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_bitbucket.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_bitbucket.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_bitbucket.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_bitbucket.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_bitfinex.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_bitfinex.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_bitfinex.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_bitfinex.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_bitwarden.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_bitwarden.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_bitwarden.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_bitwarden.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_cloudflare.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_cloudflare.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_cloudflare.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_cloudflare.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_coinbase.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_coinbase.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_coinbase.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_coinbase.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_dashlane.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_dashlane.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_dashlane.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_dashlane.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_dropbox.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_dropbox.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_dropbox.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_dropbox.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_duo.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_duo.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_duo.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_duo.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_facebook.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_facebook.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_facebook.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_facebook.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_fastmail.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_fastmail.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_fastmail.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_fastmail.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_fedora.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_fedora.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_fedora.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_fedora.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_gandi.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_gandi.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_gandi.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_gandi.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_gemini.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_gemini.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_gemini.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_gemini.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_github.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_github.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_github.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_github.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_gitlab.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_gitlab.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_gitlab.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_gitlab.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_google.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_google.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_google.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_google.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_invity.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_invity.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_invity.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_invity.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_keeper.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_keeper.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_keeper.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_keeper.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_kraken.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_kraken.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_kraken.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_kraken.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_login.gov.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_login.gov.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_login.gov.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_login.gov.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_microsoft.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_microsoft.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_microsoft.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_microsoft.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_mojeid.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_mojeid.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_mojeid.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_mojeid.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_namecheap.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_namecheap.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_namecheap.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_namecheap.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_proton.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_proton.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_proton.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_proton.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_slushpool.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_slushpool.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_slushpool.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_slushpool.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_stripe.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_stripe.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_stripe.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_stripe.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_tutanota.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_tutanota.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_tutanota.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_tutanota.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_webauthn.toif b/core/embed/rust/src/ui/layout_delizia/res/fido/icon_webauthn.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fido/icon_webauthn.toif rename to core/embed/rust/src/ui/layout_delizia/res/fido/icon_webauthn.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fire24.toif b/core/embed/rust/src/ui/layout_delizia/res/fire24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fire24.toif rename to core/embed/rust/src/ui/layout_delizia/res/fire24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fire32.toif b/core/embed/rust/src/ui/layout_delizia/res/fire32.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fire32.toif rename to core/embed/rust/src/ui/layout_delizia/res/fire32.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/fire40.toif b/core/embed/rust/src/ui/layout_delizia/res/fire40.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/fire40.toif rename to core/embed/rust/src/ui/layout_delizia/res/fire40.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/foreslash12.png b/core/embed/rust/src/ui/layout_delizia/res/foreslash12.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/foreslash12.png rename to core/embed/rust/src/ui/layout_delizia/res/foreslash12.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/foreslash12.toif b/core/embed/rust/src/ui/layout_delizia/res/foreslash12.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/foreslash12.toif rename to core/embed/rust/src/ui/layout_delizia/res/foreslash12.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/hs_lock.png b/core/embed/rust/src/ui/layout_delizia/res/hs_lock.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/hs_lock.png rename to core/embed/rust/src/ui/layout_delizia/res/hs_lock.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/hs_lock.toif b/core/embed/rust/src/ui/layout_delizia/res/hs_lock.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/hs_lock.toif rename to core/embed/rust/src/ui/layout_delizia/res/hs_lock.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/info32.toif b/core/embed/rust/src/ui/layout_delizia/res/info32.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/info32.toif rename to core/embed/rust/src/ui/layout_delizia/res/info32.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/key20.png b/core/embed/rust/src/ui/layout_delizia/res/key20.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/key20.png rename to core/embed/rust/src/ui/layout_delizia/res/key20.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/key20.toif b/core/embed/rust/src/ui/layout_delizia/res/key20.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/key20.toif rename to core/embed/rust/src/ui/layout_delizia/res/key20.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/lock_full.toif b/core/embed/rust/src/ui/layout_delizia/res/lock_full.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/lock_full.toif rename to core/embed/rust/src/ui/layout_delizia/res/lock_full.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/lockscreen_filter.png b/core/embed/rust/src/ui/layout_delizia/res/lockscreen_filter.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/lockscreen_filter.png rename to core/embed/rust/src/ui/layout_delizia/res/lockscreen_filter.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/lockscreen_filter.toif b/core/embed/rust/src/ui/layout_delizia/res/lockscreen_filter.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/lockscreen_filter.toif rename to core/embed/rust/src/ui/layout_delizia/res/lockscreen_filter.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/menu30.png b/core/embed/rust/src/ui/layout_delizia/res/menu30.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/menu30.png rename to core/embed/rust/src/ui/layout_delizia/res/menu30.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/menu30.toif b/core/embed/rust/src/ui/layout_delizia/res/menu30.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/menu30.toif rename to core/embed/rust/src/ui/layout_delizia/res/menu30.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/menu32.toif b/core/embed/rust/src/ui/layout_delizia/res/menu32.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/menu32.toif rename to core/embed/rust/src/ui/layout_delizia/res/menu32.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/minus40.png b/core/embed/rust/src/ui/layout_delizia/res/minus40.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/minus40.png rename to core/embed/rust/src/ui/layout_delizia/res/minus40.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/minus40.toif b/core/embed/rust/src/ui/layout_delizia/res/minus40.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/minus40.toif rename to core/embed/rust/src/ui/layout_delizia/res/minus40.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/page-next.toif b/core/embed/rust/src/ui/layout_delizia/res/page-next.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/page-next.toif rename to core/embed/rust/src/ui/layout_delizia/res/page-next.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/page-prev.toif b/core/embed/rust/src/ui/layout_delizia/res/page-prev.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/page-prev.toif rename to core/embed/rust/src/ui/layout_delizia/res/page-prev.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/page_down20.png b/core/embed/rust/src/ui/layout_delizia/res/page_down20.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/page_down20.png rename to core/embed/rust/src/ui/layout_delizia/res/page_down20.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/page_down20.toif b/core/embed/rust/src/ui/layout_delizia/res/page_down20.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/page_down20.toif rename to core/embed/rust/src/ui/layout_delizia/res/page_down20.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/page_up20.png b/core/embed/rust/src/ui/layout_delizia/res/page_up20.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/page_up20.png rename to core/embed/rust/src/ui/layout_delizia/res/page_up20.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/page_up20.toif b/core/embed/rust/src/ui/layout_delizia/res/page_up20.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/page_up20.toif rename to core/embed/rust/src/ui/layout_delizia/res/page_up20.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/pin_bullet6.png b/core/embed/rust/src/ui/layout_delizia/res/pin_bullet6.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/pin_bullet6.png rename to core/embed/rust/src/ui/layout_delizia/res/pin_bullet6.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/pin_bullet6.toif b/core/embed/rust/src/ui/layout_delizia/res/pin_bullet6.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/pin_bullet6.toif rename to core/embed/rust/src/ui/layout_delizia/res/pin_bullet6.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/plus40.png b/core/embed/rust/src/ui/layout_delizia/res/plus40.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/plus40.png rename to core/embed/rust/src/ui/layout_delizia/res/plus40.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/plus40.toif b/core/embed/rust/src/ui/layout_delizia/res/plus40.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/plus40.toif rename to core/embed/rust/src/ui/layout_delizia/res/plus40.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/qr_code24.png b/core/embed/rust/src/ui/layout_delizia/res/qr_code24.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/qr_code24.png rename to core/embed/rust/src/ui/layout_delizia/res/qr_code24.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/qr_code24.toif b/core/embed/rust/src/ui/layout_delizia/res/qr_code24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/qr_code24.toif rename to core/embed/rust/src/ui/layout_delizia/res/qr_code24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/reboot24.png b/core/embed/rust/src/ui/layout_delizia/res/reboot24.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/reboot24.png rename to core/embed/rust/src/ui/layout_delizia/res/reboot24.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/reboot24.toif b/core/embed/rust/src/ui/layout_delizia/res/reboot24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/reboot24.toif rename to core/embed/rust/src/ui/layout_delizia/res/reboot24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/refresh24.toif b/core/embed/rust/src/ui/layout_delizia/res/refresh24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/refresh24.toif rename to core/embed/rust/src/ui/layout_delizia/res/refresh24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/scroll-active.toif b/core/embed/rust/src/ui/layout_delizia/res/scroll-active.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/scroll-active.toif rename to core/embed/rust/src/ui/layout_delizia/res/scroll-active.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/scroll-inactive-half.toif b/core/embed/rust/src/ui/layout_delizia/res/scroll-inactive-half.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/scroll-inactive-half.toif rename to core/embed/rust/src/ui/layout_delizia/res/scroll-inactive-half.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/scroll-inactive-quarter.toif b/core/embed/rust/src/ui/layout_delizia/res/scroll-inactive-quarter.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/scroll-inactive-quarter.toif rename to core/embed/rust/src/ui/layout_delizia/res/scroll-inactive-quarter.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/scroll-inactive.toif b/core/embed/rust/src/ui/layout_delizia/res/scroll-inactive.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/scroll-inactive.toif rename to core/embed/rust/src/ui/layout_delizia/res/scroll-inactive.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/scroll-small.toif b/core/embed/rust/src/ui/layout_delizia/res/scroll-small.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/scroll-small.toif rename to core/embed/rust/src/ui/layout_delizia/res/scroll-small.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/sign30.png b/core/embed/rust/src/ui/layout_delizia/res/sign30.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/sign30.png rename to core/embed/rust/src/ui/layout_delizia/res/sign30.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/sign30.toif b/core/embed/rust/src/ui/layout_delizia/res/sign30.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/sign30.toif rename to core/embed/rust/src/ui/layout_delizia/res/sign30.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/simple_checkmark24.png b/core/embed/rust/src/ui/layout_delizia/res/simple_checkmark24.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/simple_checkmark24.png rename to core/embed/rust/src/ui/layout_delizia/res/simple_checkmark24.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/simple_checkmark24.toif b/core/embed/rust/src/ui/layout_delizia/res/simple_checkmark24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/simple_checkmark24.toif rename to core/embed/rust/src/ui/layout_delizia/res/simple_checkmark24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/simple_checkmark30.png b/core/embed/rust/src/ui/layout_delizia/res/simple_checkmark30.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/simple_checkmark30.png rename to core/embed/rust/src/ui/layout_delizia/res/simple_checkmark30.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/simple_checkmark30.toif b/core/embed/rust/src/ui/layout_delizia/res/simple_checkmark30.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/simple_checkmark30.toif rename to core/embed/rust/src/ui/layout_delizia/res/simple_checkmark30.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/special_chars_group.png b/core/embed/rust/src/ui/layout_delizia/res/special_chars_group.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/special_chars_group.png rename to core/embed/rust/src/ui/layout_delizia/res/special_chars_group.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/special_chars_group.toif b/core/embed/rust/src/ui/layout_delizia/res/special_chars_group.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/special_chars_group.toif rename to core/embed/rust/src/ui/layout_delizia/res/special_chars_group.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/warning24.png b/core/embed/rust/src/ui/layout_delizia/res/warning24.png similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/warning24.png rename to core/embed/rust/src/ui/layout_delizia/res/warning24.png diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/warning24.toif b/core/embed/rust/src/ui/layout_delizia/res/warning24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/warning24.toif rename to core/embed/rust/src/ui/layout_delizia/res/warning24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/warning40.toif b/core/embed/rust/src/ui/layout_delizia/res/warning40.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/warning40.toif rename to core/embed/rust/src/ui/layout_delizia/res/warning40.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/x24.toif b/core/embed/rust/src/ui/layout_delizia/res/x24.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/x24.toif rename to core/embed/rust/src/ui/layout_delizia/res/x24.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/res/x32.toif b/core/embed/rust/src/ui/layout_delizia/res/x32.toif similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/res/x32.toif rename to core/embed/rust/src/ui/layout_delizia/res/x32.toif diff --git a/core/embed/rust/src/ui/layout_quicksilver/screens.rs b/core/embed/rust/src/ui/layout_delizia/screens.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/screens.rs rename to core/embed/rust/src/ui/layout_delizia/screens.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/theme/backlight.rs b/core/embed/rust/src/ui/layout_delizia/theme/backlight.rs similarity index 100% rename from core/embed/rust/src/ui/layout_quicksilver/theme/backlight.rs rename to core/embed/rust/src/ui/layout_delizia/theme/backlight.rs diff --git a/core/embed/rust/src/ui/layout_quicksilver/theme/bootloader.rs b/core/embed/rust/src/ui/layout_delizia/theme/bootloader.rs similarity index 88% rename from core/embed/rust/src/ui/layout_quicksilver/theme/bootloader.rs rename to core/embed/rust/src/ui/layout_delizia/theme/bootloader.rs index 1e688ac58e..6f15404bce 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/theme/bootloader.rs +++ b/core/embed/rust/src/ui/layout_delizia/theme/bootloader.rs @@ -57,18 +57,18 @@ pub const BUTTON_AREA_START: i16 = HEIGHT - 56; pub const BUTTON_HEIGHT: i16 = 50; // BLD icons -pub const X24: &[u8] = include_res!("layout_quicksilver/res/x24.toif"); -pub const X32: &[u8] = include_res!("layout_quicksilver/res/x32.toif"); -pub const FIRE24: &[u8] = include_res!("layout_quicksilver/res/fire24.toif"); -pub const FIRE32: &[u8] = include_res!("layout_quicksilver/res/fire32.toif"); -pub const FIRE40: &[u8] = include_res!("layout_quicksilver/res/fire40.toif"); -pub const REFRESH24: &[u8] = include_res!("layout_quicksilver/res/refresh24.toif"); -pub const MENU32: &[u8] = include_res!("layout_quicksilver/res/menu32.toif"); -pub const INFO32: &[u8] = include_res!("layout_quicksilver/res/info32.toif"); -pub const DOWNLOAD24: &[u8] = include_res!("layout_quicksilver/res/download24.toif"); -pub const WARNING40: &[u8] = include_res!("layout_quicksilver/res/warning40.toif"); -pub const CHECK24: &[u8] = include_res!("layout_quicksilver/res/check24.toif"); -pub const CHECK40: &[u8] = include_res!("layout_quicksilver/res/check40.toif"); +pub const X24: &[u8] = include_res!("layout_delizia/res/x24.toif"); +pub const X32: &[u8] = include_res!("layout_delizia/res/x32.toif"); +pub const FIRE24: &[u8] = include_res!("layout_delizia/res/fire24.toif"); +pub const FIRE32: &[u8] = include_res!("layout_delizia/res/fire32.toif"); +pub const FIRE40: &[u8] = include_res!("layout_delizia/res/fire40.toif"); +pub const REFRESH24: &[u8] = include_res!("layout_delizia/res/refresh24.toif"); +pub const MENU32: &[u8] = include_res!("layout_delizia/res/menu32.toif"); +pub const INFO32: &[u8] = include_res!("layout_delizia/res/info32.toif"); +pub const DOWNLOAD24: &[u8] = include_res!("layout_delizia/res/download24.toif"); +pub const WARNING40: &[u8] = include_res!("layout_delizia/res/warning40.toif"); +pub const CHECK24: &[u8] = include_res!("layout_delizia/res/check24.toif"); +pub const CHECK40: &[u8] = include_res!("layout_delizia/res/check40.toif"); pub fn button_confirm() -> ButtonStyleSheet { ButtonStyleSheet { diff --git a/core/embed/rust/src/ui/layout_quicksilver/theme/mod.rs b/core/embed/rust/src/ui/layout_delizia/theme/mod.rs similarity index 90% rename from core/embed/rust/src/ui/layout_quicksilver/theme/mod.rs rename to core/embed/rust/src/ui/layout_delizia/theme/mod.rs index 6e9de425d2..22a58244fb 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/theme/mod.rs +++ b/core/embed/rust/src/ui/layout_delizia/theme/mod.rs @@ -47,95 +47,92 @@ pub const RADIUS: u8 = 0; // UI icons (white color). // 12x12 -include_icon!(ICON_FORESLASH, "layout_quicksilver/res/foreslash12.toif"); +include_icon!(ICON_FORESLASH, "layout_delizia/res/foreslash12.toif"); // 20x20 include_icon!( ICON_BULLET_CHECKMARK, - "layout_quicksilver/res/bullet_checkmark20.toif" + "layout_delizia/res/bullet_checkmark20.toif" ); -include_icon!(ICON_PAGE_DOWN, "layout_quicksilver/res/page_down20.toif"); -include_icon!(ICON_PAGE_UP, "layout_quicksilver/res/page_up20.toif"); +include_icon!(ICON_PAGE_DOWN, "layout_delizia/res/page_down20.toif"); +include_icon!(ICON_PAGE_UP, "layout_delizia/res/page_up20.toif"); // 24x24 -include_icon!(ICON_CANCEL, "layout_quicksilver/res/cancel24.toif"); -include_icon!( - ICON_CHEVRON_LEFT, - "layout_quicksilver/res/chevron_left24.toif" -); +include_icon!(ICON_CANCEL, "layout_delizia/res/cancel24.toif"); +include_icon!(ICON_CHEVRON_LEFT, "layout_delizia/res/chevron_left24.toif"); include_icon!( ICON_CHEVRON_RIGHT, - "layout_quicksilver/res/chevron_right24.toif" + "layout_delizia/res/chevron_right24.toif" ); -include_icon!(ICON_DOWNLOAD, "layout_quicksilver/res/download24.toif"); -include_icon!(ICON_KEY, "layout_quicksilver/res/key20.toif"); -include_icon!(ICON_QR_CODE, "layout_quicksilver/res/qr_code24.toif"); -include_icon!(ICON_REBOOT, "layout_quicksilver/res/reboot24.toif"); -include_icon!(ICON_WARNING, "layout_quicksilver/res/warning24.toif"); +include_icon!(ICON_DOWNLOAD, "layout_delizia/res/download24.toif"); +include_icon!(ICON_KEY, "layout_delizia/res/key20.toif"); +include_icon!(ICON_QR_CODE, "layout_delizia/res/qr_code24.toif"); +include_icon!(ICON_REBOOT, "layout_delizia/res/reboot24.toif"); +include_icon!(ICON_WARNING, "layout_delizia/res/warning24.toif"); include_icon!( ICON_SIMPLE_CHECKMARK24, - "layout_quicksilver/res/simple_checkmark24.toif" + "layout_delizia/res/simple_checkmark24.toif" ); // 30x30 -include_icon!(ICON_AUTOFILL, "layout_quicksilver/res/autofill30.toif"); -include_icon!(ICON_CLOSE, "layout_quicksilver/res/close30.toif"); +include_icon!(ICON_AUTOFILL, "layout_delizia/res/autofill30.toif"); +include_icon!(ICON_CLOSE, "layout_delizia/res/close30.toif"); include_icon!( ICON_CONFIRM_INPUT, - "layout_quicksilver/res/confirm_input30.toif" + "layout_delizia/res/confirm_input30.toif" ); -include_icon!(ICON_DELETE, "layout_quicksilver/res/delete30.toif"); -include_icon!(ICON_MENU, "layout_quicksilver/res/menu30.toif"); +include_icon!(ICON_DELETE, "layout_delizia/res/delete30.toif"); +include_icon!(ICON_MENU, "layout_delizia/res/menu30.toif"); include_icon!( ICON_SIMPLE_CHECKMARK30, - "layout_quicksilver/res/simple_checkmark30.toif" + "layout_delizia/res/simple_checkmark30.toif" ); -include_icon!(ICON_SIGN, "layout_quicksilver/res/sign30.toif"); +include_icon!(ICON_SIGN, "layout_delizia/res/sign30.toif"); // 40x40 -include_icon!(ICON_MINUS, "layout_quicksilver/res/minus40.toif"); -include_icon!(ICON_PLUS, "layout_quicksilver/res/plus40.toif"); +include_icon!(ICON_MINUS, "layout_delizia/res/minus40.toif"); +include_icon!(ICON_PLUS, "layout_delizia/res/plus40.toif"); // Homescreen include_icon!( ICON_LOCKSCREEN_FILTER, - "layout_quicksilver/res/lockscreen_filter.toif" + "layout_delizia/res/lockscreen_filter.toif" ); // Scrollbar/PIN dots - taken from model T -include_icon!(DOT_ACTIVE, "layout_quicksilver/res/scroll-active.toif"); -include_icon!(DOT_INACTIVE, "layout_quicksilver/res/scroll-inactive.toif"); +include_icon!(DOT_ACTIVE, "layout_delizia/res/scroll-active.toif"); +include_icon!(DOT_INACTIVE, "layout_delizia/res/scroll-inactive.toif"); include_icon!( DOT_INACTIVE_HALF, - "layout_quicksilver/res/scroll-inactive-half.toif" + "layout_delizia/res/scroll-inactive-half.toif" ); include_icon!( DOT_INACTIVE_QUARTER, - "layout_quicksilver/res/scroll-inactive-quarter.toif" + "layout_delizia/res/scroll-inactive-quarter.toif" ); -include_icon!(DOT_SMALL, "layout_quicksilver/res/scroll-small.toif"); -include_icon!(ICON_PIN_BULLET, "layout_quicksilver/res/pin_bullet6.toif"); +include_icon!(DOT_SMALL, "layout_delizia/res/scroll-small.toif"); +include_icon!(ICON_PIN_BULLET, "layout_delizia/res/pin_bullet6.toif"); // Text arrows. -include_icon!(ICON_PAGE_NEXT, "layout_quicksilver/res/page-next.toif"); -include_icon!(ICON_PAGE_PREV, "layout_quicksilver/res/page-prev.toif"); +include_icon!(ICON_PAGE_NEXT, "layout_delizia/res/page-next.toif"); +include_icon!(ICON_PAGE_PREV, "layout_delizia/res/page-prev.toif"); // Icon for "*#" key on the passphrase keyboard. include_icon!( ICON_SPECIAL_CHARS_GROUP, - "layout_quicksilver/res/special_chars_group.toif" + "layout_delizia/res/special_chars_group.toif" ); // Icon for "next keyboard layout" for special characters -include_icon!(ICON_ASTERISK, "layout_quicksilver/res/asterisk16.toif"); +include_icon!(ICON_ASTERISK, "layout_delizia/res/asterisk16.toif"); // Welcome screen. -include_icon!(ICON_LOGO, "layout_quicksilver/res/lock_full.toif"); +include_icon!(ICON_LOGO, "layout_delizia/res/lock_full.toif"); // Homescreen notifications. -include_icon!(ICON_WARNING40, "layout_quicksilver/res/warning40.toif"); +include_icon!(ICON_WARNING40, "layout_delizia/res/warning40.toif"); // Default homescreen -include_icon!(HOMESCREEN_ICON, "layout_quicksilver/res/hs_lock.toif"); +include_icon!(HOMESCREEN_ICON, "layout_delizia/res/hs_lock.toif"); pub const fn label_default() -> TextStyle { TEXT_NORMAL diff --git a/core/embed/rust/src/ui/layout_quicksilver/ui_firmware.rs b/core/embed/rust/src/ui/layout_delizia/ui_firmware.rs similarity index 99% rename from core/embed/rust/src/ui/layout_quicksilver/ui_firmware.rs rename to core/embed/rust/src/ui/layout_delizia/ui_firmware.rs index 885663dc52..b5447f3817 100644 --- a/core/embed/rust/src/ui/layout_quicksilver/ui_firmware.rs +++ b/core/embed/rust/src/ui/layout_delizia/ui_firmware.rs @@ -42,10 +42,10 @@ use super::{ self, new_confirm_action_simple, ConfirmActionExtra, ConfirmActionMenuStrings, ConfirmActionStrings, ConfirmBlobParams, ShowInfoParams, }, - theme, UIQuicksilver, + theme, UIDelizia, }; -impl FirmwareUI for UIQuicksilver { +impl FirmwareUI for UIDelizia { fn confirm_action( title: TString<'static>, action: Option>, @@ -1022,11 +1022,11 @@ impl FirmwareUI for UIQuicksilver { _title: Option>, ) -> Result { Err::, Error>(Error::ValueError( - c"use show_share_words_quicksilver instead", + c"use show_share_words_delizia instead", )) } - fn show_share_words_quicksilver( + fn show_share_words_delizia( words: heapless::Vec, 33>, subtitle: Option>, instructions: Obj, @@ -1050,7 +1050,7 @@ impl FirmwareUI for UIQuicksilver { } fn show_remaining_shares(_pages_iterable: Obj) -> Result { - // Quicksilver: remaining shares is a part of `continue_recovery` flow + // Delizia: remaining shares is a part of `continue_recovery` flow Err::, Error>(Error::ValueError( c"show_remaining_shares not implemented", )) diff --git a/core/embed/rust/src/ui/layout_quicksilver/component/fido_icons.rs b/core/embed/rust/src/ui/layout_quicksilver/component/fido_icons.rs deleted file mode 100644 index edf4d5a874..0000000000 --- a/core/embed/rust/src/ui/layout_quicksilver/component/fido_icons.rs +++ /dev/null @@ -1,80 +0,0 @@ -//! generated from webauthn_icons.rs.mako -//! (by running `make templates` in `core`) -//! do not edit manually! - - -use crate::strutil::TString; -use crate::ui::util::include_res; - - -const ICON_APPLE: &[u8] = include_res!("layout_quicksilver/res/fido/icon_apple.toif"); -const ICON_AWS: &[u8] = include_res!("layout_quicksilver/res/fido/icon_aws.toif"); -const ICON_BINANCE: &[u8] = include_res!("layout_quicksilver/res/fido/icon_binance.toif"); -const ICON_BITBUCKET: &[u8] = include_res!("layout_quicksilver/res/fido/icon_bitbucket.toif"); -const ICON_BITFINEX: &[u8] = include_res!("layout_quicksilver/res/fido/icon_bitfinex.toif"); -const ICON_BITWARDEN: &[u8] = include_res!("layout_quicksilver/res/fido/icon_bitwarden.toif"); -const ICON_CLOUDFLARE: &[u8] = include_res!("layout_quicksilver/res/fido/icon_cloudflare.toif"); -const ICON_COINBASE: &[u8] = include_res!("layout_quicksilver/res/fido/icon_coinbase.toif"); -const ICON_DASHLANE: &[u8] = include_res!("layout_quicksilver/res/fido/icon_dashlane.toif"); -const ICON_DROPBOX: &[u8] = include_res!("layout_quicksilver/res/fido/icon_dropbox.toif"); -const ICON_DUO: &[u8] = include_res!("layout_quicksilver/res/fido/icon_duo.toif"); -const ICON_FACEBOOK: &[u8] = include_res!("layout_quicksilver/res/fido/icon_facebook.toif"); -const ICON_FASTMAIL: &[u8] = include_res!("layout_quicksilver/res/fido/icon_fastmail.toif"); -const ICON_FEDORA: &[u8] = include_res!("layout_quicksilver/res/fido/icon_fedora.toif"); -const ICON_GANDI: &[u8] = include_res!("layout_quicksilver/res/fido/icon_gandi.toif"); -const ICON_GEMINI: &[u8] = include_res!("layout_quicksilver/res/fido/icon_gemini.toif"); -const ICON_GITHUB: &[u8] = include_res!("layout_quicksilver/res/fido/icon_github.toif"); -const ICON_GITLAB: &[u8] = include_res!("layout_quicksilver/res/fido/icon_gitlab.toif"); -const ICON_GOOGLE: &[u8] = include_res!("layout_quicksilver/res/fido/icon_google.toif"); -const ICON_INVITY: &[u8] = include_res!("layout_quicksilver/res/fido/icon_invity.toif"); -const ICON_KEEPER: &[u8] = include_res!("layout_quicksilver/res/fido/icon_keeper.toif"); -const ICON_KRAKEN: &[u8] = include_res!("layout_quicksilver/res/fido/icon_kraken.toif"); -const ICON_LOGIN_GOV: &[u8] = include_res!("layout_quicksilver/res/fido/icon_login.gov.toif"); -const ICON_MICROSOFT: &[u8] = include_res!("layout_quicksilver/res/fido/icon_microsoft.toif"); -const ICON_MOJEID: &[u8] = include_res!("layout_quicksilver/res/fido/icon_mojeid.toif"); -const ICON_NAMECHEAP: &[u8] = include_res!("layout_quicksilver/res/fido/icon_namecheap.toif"); -const ICON_PROTON: &[u8] = include_res!("layout_quicksilver/res/fido/icon_proton.toif"); -const ICON_SLUSHPOOL: &[u8] = include_res!("layout_quicksilver/res/fido/icon_slushpool.toif"); -const ICON_STRIPE: &[u8] = include_res!("layout_quicksilver/res/fido/icon_stripe.toif"); -const ICON_TUTANOTA: &[u8] = include_res!("layout_quicksilver/res/fido/icon_tutanota.toif"); - -/// Translates icon name into its data. -pub fn get_fido_icon_data(icon_name: Option>) -> Option< &'static [u8]> { - if let Some(icon_name) = icon_name { - icon_name.map(|c| match c { - "apple" => Some(ICON_APPLE), - "aws" => Some(ICON_AWS), - "binance" => Some(ICON_BINANCE), - "bitbucket" => Some(ICON_BITBUCKET), - "bitfinex" => Some(ICON_BITFINEX), - "bitwarden" => Some(ICON_BITWARDEN), - "cloudflare" => Some(ICON_CLOUDFLARE), - "coinbase" => Some(ICON_COINBASE), - "dashlane" => Some(ICON_DASHLANE), - "dropbox" => Some(ICON_DROPBOX), - "duo" => Some(ICON_DUO), - "facebook" => Some(ICON_FACEBOOK), - "fastmail" => Some(ICON_FASTMAIL), - "fedora" => Some(ICON_FEDORA), - "gandi" => Some(ICON_GANDI), - "gemini" => Some(ICON_GEMINI), - "github" => Some(ICON_GITHUB), - "gitlab" => Some(ICON_GITLAB), - "google" => Some(ICON_GOOGLE), - "invity" => Some(ICON_INVITY), - "keeper" => Some(ICON_KEEPER), - "kraken" => Some(ICON_KRAKEN), - "login.gov" => Some(ICON_LOGIN_GOV), - "microsoft" => Some(ICON_MICROSOFT), - "mojeid" => Some(ICON_MOJEID), - "namecheap" => Some(ICON_NAMECHEAP), - "proton" => Some(ICON_PROTON), - "slushpool" => Some(ICON_SLUSHPOOL), - "stripe" => Some(ICON_STRIPE), - "tutanota" => Some(ICON_TUTANOTA), - _ => None, - }) - } else { - None - } -} diff --git a/core/embed/rust/src/ui/mod.rs b/core/embed/rust/src/ui/mod.rs index d5199dbb37..4fe5b62b77 100644 --- a/core/embed/rust/src/ui/mod.rs +++ b/core/embed/rust/src/ui/mod.rs @@ -19,10 +19,10 @@ mod api; #[cfg(feature = "layout_bolt")] pub mod layout_bolt; -#[cfg(feature = "layout_quicksilver")] -pub mod layout_quicksilver; -#[cfg(feature = "layout_samson")] -pub mod layout_samson; +#[cfg(feature = "layout_caesar")] +pub mod layout_caesar; +#[cfg(feature = "layout_delizia")] +pub mod layout_delizia; #[cfg(feature = "bootloader")] pub mod ui_bootloader; @@ -33,14 +33,14 @@ pub mod ui_firmware; pub use ui_common::CommonUI; #[cfg(all( - feature = "layout_quicksilver", - not(feature = "layout_samson"), + feature = "layout_delizia", + not(feature = "layout_caesar"), not(feature = "layout_bolt") ))] -pub type ModelUI = crate::ui::layout_quicksilver::UIQuicksilver; +pub type ModelUI = crate::ui::layout_delizia::UIDelizia; -#[cfg(all(feature = "layout_samson", not(feature = "layout_bolt")))] -pub type ModelUI = crate::ui::layout_samson::UISamson; +#[cfg(all(feature = "layout_caesar", not(feature = "layout_bolt")))] +pub type ModelUI = crate::ui::layout_caesar::UICaesar; #[cfg(feature = "layout_bolt")] pub type ModelUI = crate::ui::layout_bolt::UIBolt; diff --git a/core/embed/rust/src/ui/ui_firmware.rs b/core/embed/rust/src/ui/ui_firmware.rs index 2bf6134ca6..a6f7f0c6ff 100644 --- a/core/embed/rust/src/ui/ui_firmware.rs +++ b/core/embed/rust/src/ui/ui_firmware.rs @@ -356,8 +356,8 @@ pub trait FirmwareUI { ) -> Result; // TODO: merge with `show_share_words` instead of having specific version for - // quicksilver UI - fn show_share_words_quicksilver( + // Delizia UI + fn show_share_words_delizia( words: Vec, 33>, subtitle: Option>, instructions: Obj, // TODO: replace Obj diff --git a/core/embed/upymod/modtrezorutils/modtrezorutils.c b/core/embed/upymod/modtrezorutils/modtrezorutils.c index 8ba9c533ba..5e6d8844e0 100644 --- a/core/embed/upymod/modtrezorutils/modtrezorutils.c +++ b/core/embed/upymod/modtrezorutils/modtrezorutils.c @@ -410,7 +410,7 @@ STATIC mp_obj_tuple_t mod_trezorutils_version_obj = { /// BITCOIN_ONLY: bool /// """Whether the firmware is Bitcoin-only.""" /// UI_LAYOUT: str -/// """UI layout identifier ("bolt"-T, "samson"-TS3, "quicksilver"-TS5).""" +/// """UI layout identifier ("BOLT"-T, "CAESAR"-TS3, "DELIZIA"-TS5).""" /// USE_THP: bool /// """Whether the firmware supports Trezor-Host Protocol (version 2).""" /// if __debug__: @@ -506,10 +506,10 @@ STATIC const mp_rom_map_elem_t mp_module_trezorutils_globals_table[] = { #endif #ifdef UI_LAYOUT_BOLT {MP_ROM_QSTR(MP_QSTR_UI_LAYOUT), MP_ROM_QSTR(MP_QSTR_BOLT)}, -#elif UI_LAYOUT_SAMSON - {MP_ROM_QSTR(MP_QSTR_UI_LAYOUT), MP_ROM_QSTR(MP_QSTR_SAMSON)}, -#elif UI_LAYOUT_QUICKSILVER - {MP_ROM_QSTR(MP_QSTR_UI_LAYOUT), MP_ROM_QSTR(MP_QSTR_QUICKSILVER)}, +#elif UI_LAYOUT_CAESAR + {MP_ROM_QSTR(MP_QSTR_UI_LAYOUT), MP_ROM_QSTR(MP_QSTR_CAESAR)}, +#elif UI_LAYOUT_DELIZIA + {MP_ROM_QSTR(MP_QSTR_UI_LAYOUT), MP_ROM_QSTR(MP_QSTR_DELIZIA)}, #else #error Unknown layout #endif diff --git a/core/mocks/generated/trezorui_api.pyi b/core/mocks/generated/trezorui_api.pyi index afe82746f3..4e671abca3 100644 --- a/core/mocks/generated/trezorui_api.pyi +++ b/core/mocks/generated/trezorui_api.pyi @@ -230,7 +230,7 @@ def confirm_more( items: Iterable[tuple[int, str | bytes]], ) -> LayoutObj[UiResult]: """Confirm long content with the possibility to go back from any page. - Meant to be used with confirm_with_info on UI bolt and samson.""" + Meant to be used with confirm_with_info on UI Bolt and Caesar.""" # rust/src/ui/api/firmware_micropython.rs @@ -293,7 +293,7 @@ def confirm_with_info( items: Iterable[tuple[int, str | bytes]], ) -> LayoutObj[UiResult]: """Confirm given items but with third button. Always single page - without scrolling. In Quicksilver, the button is placed in + without scrolling. In Delizia, the button is placed in context menu.""" @@ -607,7 +607,7 @@ def show_share_words( # rust/src/ui/api/firmware_micropython.rs -def show_share_words_quicksilver( +def show_share_words_delizia( *, words: Iterable[str], subtitle: str | None, @@ -656,7 +656,7 @@ def show_warning( allow_cancel: bool = True, danger: bool = False, # unused on bolt ) -> LayoutObj[UiResult]: - """Warning modal. bolt: No buttons shown when `button` is empty string. samson: middle button and centered text.""" + """Warning modal. Bolt: No buttons shown when `button` is empty string. Caesar: middle button and centered text.""" # rust/src/ui/api/firmware_micropython.rs diff --git a/core/mocks/generated/trezorutils.pyi b/core/mocks/generated/trezorutils.pyi index 9a9a653626..60b0d56371 100644 --- a/core/mocks/generated/trezorutils.pyi +++ b/core/mocks/generated/trezorutils.pyi @@ -151,7 +151,7 @@ EMULATOR: bool BITCOIN_ONLY: bool """Whether the firmware is Bitcoin-only.""" UI_LAYOUT: str -"""UI layout identifier ("bolt"-T, "samson"-TS3, "quicksilver"-TS5).""" +"""UI layout identifier ("BOLT"-T, "CAESAR"-TS3, "DELIZIA"-TS5).""" USE_THP: bool """Whether the firmware supports Trezor-Host Protocol (version 2).""" if __debug__: diff --git a/core/site_scons/models/T2B1/__init__.py b/core/site_scons/models/T2B1/__init__.py index 34699a3fc4..aba6d268e2 100644 --- a/core/site_scons/models/T2B1/__init__.py +++ b/core/site_scons/models/T2B1/__init__.py @@ -31,7 +31,7 @@ def configure_board( def get_model_ui() -> str: - return "samson" + return "caesar" def get_model_ui_conf() -> list[str]: diff --git a/core/site_scons/models/T3B1/__init__.py b/core/site_scons/models/T3B1/__init__.py index 07f385e17e..d3ac84e4ce 100644 --- a/core/site_scons/models/T3B1/__init__.py +++ b/core/site_scons/models/T3B1/__init__.py @@ -31,7 +31,7 @@ def configure_board( def get_model_ui() -> str: - return "samson" + return "caesar" def get_model_ui_conf() -> list[str]: diff --git a/core/site_scons/models/T3T1/__init__.py b/core/site_scons/models/T3T1/__init__.py index 5afb0daa46..41883b0d37 100644 --- a/core/site_scons/models/T3T1/__init__.py +++ b/core/site_scons/models/T3T1/__init__.py @@ -31,7 +31,7 @@ def configure_board( def get_model_ui() -> str: - return "quicksilver" + return "delizia" def get_model_ui_conf() -> list[str]: diff --git a/core/site_scons/site_tools/micropython/__init__.py b/core/site_scons/site_tools/micropython/__init__.py index dad5f0f260..30d5bf3503 100644 --- a/core/site_scons/site_tools/micropython/__init__.py +++ b/core/site_scons/site_tools/micropython/__init__.py @@ -47,8 +47,8 @@ def generate(env): touch = env["use_touch"] button = env["use_button"] layout_bolt = env["ui_layout"] == "UI_LAYOUT_BOLT" - layout_samson = env["ui_layout"] == "UI_LAYOUT_SAMSON" - layout_quicksilver = env["ui_layout"] == "UI_LAYOUT_QUICKSILVER" + layout_caesar = env["ui_layout"] == "UI_LAYOUT_CAESAR" + layout_delizia = env["ui_layout"] == "UI_LAYOUT_DELIZIA" thp = env["thp"] interim = f"{target[:-4]}.i" # replace .mpy with .i sed_scripts = [ @@ -56,8 +56,8 @@ def generate(env): rf"-e 's/utils\.USE_BACKLIGHT/{backlight}/g'", rf"-e 's/utils\.USE_OPTIGA/{optiga}/g'", rf"-e 's/utils\.UI_LAYOUT == \"BOLT\"/{layout_bolt}/g'", - rf"-e 's/utils\.UI_LAYOUT == \"SAMSON\"/{layout_samson}/g'", - rf"-e 's/utils\.UI_LAYOUT == \"QUICKSILVER\"/{layout_quicksilver}/g'", + rf"-e 's/utils\.UI_LAYOUT == \"CAESAR\"/{layout_caesar}/g'", + rf"-e 's/utils\.UI_LAYOUT == \"DELIZIA\"/{layout_delizia}/g'", rf"-e 's/utils\.USE_BUTTON/{button}/g'", rf"-e 's/utils\.USE_TOUCH/{touch}/g'", rf"-e 's/utils\.USE_THP/{thp}/g'", diff --git a/core/site_scons/ui/__init__.py b/core/site_scons/ui/__init__.py index 60639bfd65..576e0ade13 100644 --- a/core/site_scons/ui/__init__.py +++ b/core/site_scons/ui/__init__.py @@ -2,13 +2,13 @@ from __future__ import annotations from site_scons import models -from . import ui_bolt, ui_quicksilver, ui_samson +from . import ui_bolt, ui_caesar, ui_delizia def get_ui_module(layout: str): ui_modules = { - "quicksilver": ui_quicksilver, - "samson": ui_samson, + "delizia": ui_delizia, + "caesar": ui_caesar, "bolt": ui_bolt, } diff --git a/core/site_scons/ui/ui_samson.py b/core/site_scons/ui/ui_caesar.py similarity index 94% rename from core/site_scons/ui/ui_samson.py rename to core/site_scons/ui/ui_caesar.py index 16cdc1f4c1..961b8d35de 100644 --- a/core/site_scons/ui/ui_samson.py +++ b/core/site_scons/ui/ui_caesar.py @@ -11,7 +11,7 @@ def init_ui( rust_features: list[str], ): - rust_features.append("layout_samson") + rust_features.append("layout_caesar") font_normal = None font_demibold = None @@ -54,8 +54,8 @@ def init_ui( def get_ui_layout() -> str: - return "UI_LAYOUT_SAMSON" + return "UI_LAYOUT_CAESAR" def get_ui_layout_path() -> str: - return "trezor/ui/layouts/samson/" + return "trezor/ui/layouts/caesar/" diff --git a/core/site_scons/ui/ui_quicksilver.py b/core/site_scons/ui/ui_delizia.py similarity index 93% rename from core/site_scons/ui/ui_quicksilver.py rename to core/site_scons/ui/ui_delizia.py index 006af0fe48..6a6e53cbb9 100644 --- a/core/site_scons/ui/ui_quicksilver.py +++ b/core/site_scons/ui/ui_delizia.py @@ -11,7 +11,7 @@ def init_ui( rust_features: list[str], ): - rust_features.append("layout_quicksilver") + rust_features.append("layout_delizia") font_normal = None font_demibold = None @@ -56,8 +56,8 @@ def init_ui( def get_ui_layout() -> str: - return "UI_LAYOUT_QUICKSILVER" + return "UI_LAYOUT_DELIZIA" def get_ui_layout_path() -> str: - return "trezor/ui/layouts/quicksilver/" + return "trezor/ui/layouts/delizia/" diff --git a/core/src/all_modules.py b/core/src/all_modules.py index 9b7597b57d..70651ea3a8 100644 --- a/core/src/all_modules.py +++ b/core/src/all_modules.py @@ -175,34 +175,34 @@ trezor.ui.layouts.bolt.recovery import trezor.ui.layouts.bolt.recovery trezor.ui.layouts.bolt.reset import trezor.ui.layouts.bolt.reset +trezor.ui.layouts.caesar +import trezor.ui.layouts.caesar +trezor.ui.layouts.caesar.fido +import trezor.ui.layouts.caesar.fido +trezor.ui.layouts.caesar.recovery +import trezor.ui.layouts.caesar.recovery +trezor.ui.layouts.caesar.reset +import trezor.ui.layouts.caesar.reset trezor.ui.layouts.common import trezor.ui.layouts.common +trezor.ui.layouts.delizia +import trezor.ui.layouts.delizia +trezor.ui.layouts.delizia.fido +import trezor.ui.layouts.delizia.fido +trezor.ui.layouts.delizia.recovery +import trezor.ui.layouts.delizia.recovery +trezor.ui.layouts.delizia.reset +import trezor.ui.layouts.delizia.reset trezor.ui.layouts.fido import trezor.ui.layouts.fido trezor.ui.layouts.homescreen import trezor.ui.layouts.homescreen trezor.ui.layouts.progress import trezor.ui.layouts.progress -trezor.ui.layouts.quicksilver -import trezor.ui.layouts.quicksilver -trezor.ui.layouts.quicksilver.fido -import trezor.ui.layouts.quicksilver.fido -trezor.ui.layouts.quicksilver.recovery -import trezor.ui.layouts.quicksilver.recovery -trezor.ui.layouts.quicksilver.reset -import trezor.ui.layouts.quicksilver.reset trezor.ui.layouts.recovery import trezor.ui.layouts.recovery trezor.ui.layouts.reset import trezor.ui.layouts.reset -trezor.ui.layouts.samson -import trezor.ui.layouts.samson -trezor.ui.layouts.samson.fido -import trezor.ui.layouts.samson.fido -trezor.ui.layouts.samson.recovery -import trezor.ui.layouts.samson.recovery -trezor.ui.layouts.samson.reset -import trezor.ui.layouts.samson.reset trezor.utils import trezor.utils trezor.wire diff --git a/core/src/apps/bitcoin/sign_tx/layout.py b/core/src/apps/bitcoin/sign_tx/layout.py index f77405ac0a..64b55dc68c 100644 --- a/core/src/apps/bitcoin/sign_tx/layout.py +++ b/core/src/apps/bitcoin/sign_tx/layout.py @@ -99,10 +99,10 @@ async def confirm_output( if output.address_n and not output.multisig: from trezor import utils - # Showing the account string only for layout samson (TS3) + # Showing the account string only for layout Caesar (TS3) # TODO expose layout_type so that we can check for it, instead of listing # all models that use the layout? - show_account_str = utils.UI_LAYOUT == "SAMSON" + show_account_str = utils.UI_LAYOUT == "CAESAR" script_type = CHANGE_OUTPUT_TO_INPUT_SCRIPT_TYPES[output.script_type] address_label = ( address_n_to_name( diff --git a/core/src/apps/management/recovery_device/homescreen.py b/core/src/apps/management/recovery_device/homescreen.py index 85e053af4e..7ad56a4742 100644 --- a/core/src/apps/management/recovery_device/homescreen.py +++ b/core/src/apps/management/recovery_device/homescreen.py @@ -96,9 +96,9 @@ async def _continue_recovery_process() -> Success: if is_first_step: # If we are starting recovery, ask for word count first... # _request_word_count - # For others than samson, just continue straight to word count keyboard + # For others than Caesar (TS3), just continue straight to word count keyboard # pylint: disable-next=consider-using-in - if utils.UI_LAYOUT == "SAMSON": + if utils.UI_LAYOUT == "CAESAR": await layout.homescreen_dialog( TR.buttons__continue, TR.recovery__num_of_words ) diff --git a/core/src/trezor/ui/layouts/__init__.py b/core/src/trezor/ui/layouts/__init__.py index b3d430cf11..4514bc794d 100644 --- a/core/src/trezor/ui/layouts/__init__.py +++ b/core/src/trezor/ui/layouts/__init__.py @@ -4,11 +4,11 @@ from .common import * # noqa: F401,F403 # NOTE: using any import magic probably causes mypy not to check equivalence of # layout type signatures across models -if utils.UI_LAYOUT == "SAMSON": - from .samson import * # noqa: F401,F403 -elif utils.UI_LAYOUT == "BOLT": +if utils.UI_LAYOUT == "BOLT": from .bolt import * # noqa: F401,F403 -elif utils.UI_LAYOUT == "QUICKSILVER": - from .quicksilver import * # noqa: F401,F403 +elif utils.UI_LAYOUT == "CAESAR": + from .caesar import * # noqa: F401,F403 +elif utils.UI_LAYOUT == "DELIZIA": + from .delizia import * # noqa: F401,F403 else: raise ValueError("Unknown layout") diff --git a/core/src/trezor/ui/layouts/samson/__init__.py b/core/src/trezor/ui/layouts/caesar/__init__.py similarity index 99% rename from core/src/trezor/ui/layouts/samson/__init__.py rename to core/src/trezor/ui/layouts/caesar/__init__.py index 5d0ba9691f..4f73a4f817 100644 --- a/core/src/trezor/ui/layouts/samson/__init__.py +++ b/core/src/trezor/ui/layouts/caesar/__init__.py @@ -61,7 +61,7 @@ def confirm_action( reverse: bool = False, exc: ExceptionType = ActionCancelled, br_code: ButtonRequestType = BR_CODE_OTHER, - prompt_screen: bool = False, # unused on samson + prompt_screen: bool = False, # unused on caesar prompt_title: str | None = None, ) -> Awaitable[None]: verb = verb or TR.buttons__confirm # def_arg @@ -118,7 +118,7 @@ def confirm_reset_device( async def show_wallet_created_success() -> None: - # not shown on samson UI + # not shown on caesar UI return None @@ -561,7 +561,7 @@ async def should_show_more( items=para, button=confirm, verb_cancel=verb_cancel, - info_button=button_text, # unused on samson + info_button=button_text, # unused on caesar ), br_name, br_code, diff --git a/core/src/trezor/ui/layouts/samson/fido.py b/core/src/trezor/ui/layouts/caesar/fido.py similarity index 96% rename from core/src/trezor/ui/layouts/samson/fido.py rename to core/src/trezor/ui/layouts/caesar/fido.py index 1e1357ddf6..5e4005c8d5 100644 --- a/core/src/trezor/ui/layouts/samson/fido.py +++ b/core/src/trezor/ui/layouts/caesar/fido.py @@ -8,7 +8,7 @@ from ..common import interact async def confirm_fido( header: str, app_name: str, - _icon_name: str | None, # unused on samson + _icon_name: str | None, # unused on caesar accounts: list[str | None], ) -> int: """Webauthn confirmation for one or more credentials.""" diff --git a/core/src/trezor/ui/layouts/samson/recovery.py b/core/src/trezor/ui/layouts/caesar/recovery.py similarity index 99% rename from core/src/trezor/ui/layouts/samson/recovery.py rename to core/src/trezor/ui/layouts/caesar/recovery.py index a522292343..4ab3dd33e3 100644 --- a/core/src/trezor/ui/layouts/samson/recovery.py +++ b/core/src/trezor/ui/layouts/caesar/recovery.py @@ -107,7 +107,7 @@ async def continue_recovery( subtext: str | None, recovery_type: RecoveryType, show_instructions: bool = False, - remaining_shares_info: "RemainingSharesInfo | None" = None, # unused on samson + remaining_shares_info: "RemainingSharesInfo | None" = None, # unused on caesar ) -> bool: # TODO: implement info_func? # There is very limited space on the screen diff --git a/core/src/trezor/ui/layouts/samson/reset.py b/core/src/trezor/ui/layouts/caesar/reset.py similarity index 100% rename from core/src/trezor/ui/layouts/samson/reset.py rename to core/src/trezor/ui/layouts/caesar/reset.py diff --git a/core/src/trezor/ui/layouts/quicksilver/__init__.py b/core/src/trezor/ui/layouts/delizia/__init__.py similarity index 99% rename from core/src/trezor/ui/layouts/quicksilver/__init__.py rename to core/src/trezor/ui/layouts/delizia/__init__.py index 594837b853..6f2db8ac85 100644 --- a/core/src/trezor/ui/layouts/quicksilver/__init__.py +++ b/core/src/trezor/ui/layouts/delizia/__init__.py @@ -1169,7 +1169,7 @@ def request_pin_on_device( async def confirm_reenter_pin(is_wipe_code: bool = False) -> None: - """Not supported for Quicksilver.""" + """Not supported for Delizia.""" pass diff --git a/core/src/trezor/ui/layouts/quicksilver/fido.py b/core/src/trezor/ui/layouts/delizia/fido.py similarity index 100% rename from core/src/trezor/ui/layouts/quicksilver/fido.py rename to core/src/trezor/ui/layouts/delizia/fido.py diff --git a/core/src/trezor/ui/layouts/quicksilver/recovery.py b/core/src/trezor/ui/layouts/delizia/recovery.py similarity index 98% rename from core/src/trezor/ui/layouts/quicksilver/recovery.py rename to core/src/trezor/ui/layouts/delizia/recovery.py index 127c2f7804..1f2ddfa267 100644 --- a/core/src/trezor/ui/layouts/quicksilver/recovery.py +++ b/core/src/trezor/ui/layouts/delizia/recovery.py @@ -99,7 +99,7 @@ async def show_group_share_success(share_index: int, group_index: int) -> None: async def continue_recovery( - _button_label: str, # unused on quicksilver + _button_label: str, # unused on delizia text: str, subtext: str | None, recovery_type: RecoveryType, diff --git a/core/src/trezor/ui/layouts/quicksilver/reset.py b/core/src/trezor/ui/layouts/delizia/reset.py similarity index 98% rename from core/src/trezor/ui/layouts/quicksilver/reset.py rename to core/src/trezor/ui/layouts/delizia/reset.py index 766d34d9af..ec65910b6d 100644 --- a/core/src/trezor/ui/layouts/quicksilver/reset.py +++ b/core/src/trezor/ui/layouts/delizia/reset.py @@ -38,7 +38,7 @@ def show_share_words( text_confirm = TR.reset__words_written_down_template.format(words_count) return raise_if_not_confirmed( - trezorui_api.show_share_words_quicksilver( + trezorui_api.show_share_words_delizia( words=share_words, subtitle=subtitle, instructions=instructions, @@ -346,7 +346,7 @@ async def show_share_confirmation_success( ) -> None: if share_index is None or num_of_shares is None: # it is a BIP39 or a 1-of-1 SLIP39 backup - # quicksilver UI shows only final wallet backup confirmation screen later + # Delizia UI shows only final wallet backup confirmation screen later return # TODO: super-shamir copy not done diff --git a/core/src/trezor/ui/layouts/fido.py b/core/src/trezor/ui/layouts/fido.py index e7263fb0eb..d932265567 100644 --- a/core/src/trezor/ui/layouts/fido.py +++ b/core/src/trezor/ui/layouts/fido.py @@ -2,7 +2,7 @@ from trezor import utils if utils.UI_LAYOUT == "BOLT": from .bolt.fido import * # noqa: F401,F403 -elif utils.UI_LAYOUT == "SAMSON": - from .samson.fido import * # noqa: F401,F403 -elif utils.UI_LAYOUT == "QUICKSILVER": - from .quicksilver.fido import * # noqa: F401,F403 +elif utils.UI_LAYOUT == "CAESAR": + from .caesar.fido import * # noqa: F401,F403 +elif utils.UI_LAYOUT == "DELIZIA": + from .delizia.fido import * # noqa: F401,F403 diff --git a/core/src/trezor/ui/layouts/recovery.py b/core/src/trezor/ui/layouts/recovery.py index ff6db13402..8b84da04b9 100644 --- a/core/src/trezor/ui/layouts/recovery.py +++ b/core/src/trezor/ui/layouts/recovery.py @@ -2,7 +2,7 @@ from trezor import utils if utils.UI_LAYOUT == "BOLT": from .bolt.recovery import * # noqa: F401,F403 -elif utils.UI_LAYOUT == "SAMSON": - from .samson.recovery import * # noqa: F401,F403 -elif utils.UI_LAYOUT == "QUICKSILVER": - from .quicksilver.recovery import * # noqa: F401,F403 +elif utils.UI_LAYOUT == "CAESAR": + from .caesar.recovery import * # noqa: F401,F403 +elif utils.UI_LAYOUT == "DELIZIA": + from .delizia.recovery import * # noqa: F401,F403 diff --git a/core/src/trezor/ui/layouts/reset.py b/core/src/trezor/ui/layouts/reset.py index 491750f8b0..79566f8290 100644 --- a/core/src/trezor/ui/layouts/reset.py +++ b/core/src/trezor/ui/layouts/reset.py @@ -2,7 +2,7 @@ from trezor import utils if utils.UI_LAYOUT == "BOLT": from .bolt.reset import * # noqa: F401,F403 -elif utils.UI_LAYOUT == "SAMSON": - from .samson.reset import * # noqa: F401,F403 -elif utils.UI_LAYOUT == "QUICKSILVER": - from .quicksilver.reset import * # noqa: F401,F403 +elif utils.UI_LAYOUT == "CAESAR": + from .caesar.reset import * # noqa: F401,F403 +elif utils.UI_LAYOUT == "DELIZIA": + from .delizia.reset import * # noqa: F401,F403 diff --git a/core/tools/build_icons.py b/core/tools/build_icons.py index b0005b9cae..8c2b3f0dbc 100755 --- a/core/tools/build_icons.py +++ b/core/tools/build_icons.py @@ -12,10 +12,10 @@ HERE = Path(__file__).resolve().parent ROOT = HERE.parent.parent L_BOLT = "layout_bolt" -L_QS = "layout_quicksilver" +L_DELIZIA = "layout_delizia" DESTINATIONS = { ROOT / "core" / "embed" / "rust" / "src" / "ui" / L_BOLT / "res" / "fido": 64, - ROOT / "core" / "embed" / "rust" / "src" / "ui" / L_QS / "res" / "fido": 32, + ROOT / "core" / "embed" / "rust" / "src" / "ui" / L_DELIZIA / "res" / "fido": 32, } EXCLUDE = {"icon_webauthn"} diff --git a/core/tools/codegen/gen_font.py b/core/tools/codegen/gen_font.py index 3641ff53f0..dccaaf75b0 100755 --- a/core/tools/codegen/gen_font.py +++ b/core/tools/codegen/gen_font.py @@ -483,7 +483,7 @@ if __name__ == "__main__": ).write_files() FaceProcessor("RobotoMono", "Medium", 20).write_files() - # layout samson + # layout caesar FaceProcessor( "PixelOperator", "Regular", @@ -507,7 +507,7 @@ if __name__ == "__main__": # NOTE: Unifont Bold does not seem to have czech characters FaceProcessor("Unifont", "Bold", 16, bpp=1, shaveX=1, ext="otf").write_files() - # layout quicksilver + # layout delizia FaceProcessor("TTSatoshi", "DemiBold", 42, ext="otf").write_files() FaceProcessor("TTSatoshi", "DemiBold", 21, ext="otf").write_files() FaceProcessor("TTSatoshi", "DemiBold", 18, ext="otf").write_files() diff --git a/core/tools/snippets/change_icon_format.py b/core/tools/snippets/change_icon_format.py index 680d9c159f..4100bb72fd 100644 --- a/core/tools/snippets/change_icon_format.py +++ b/core/tools/snippets/change_icon_format.py @@ -146,7 +146,7 @@ def change_icon_format(): reformat_c_icons(CORE_DIR / "embed/projects/bootloader_ci") # rust icons - reformat_toif_icons(CORE_DIR / "embed/rust/src/ui/layout_samson/res") + reformat_toif_icons(CORE_DIR / "embed/rust/src/ui/layout_caesar/res") reformat_toif_icons(CORE_DIR / "embed/rust/src/ui/layout_bolt/res") # python icons diff --git a/docs/core/misc/layout-lifecycle.md b/docs/core/misc/layout-lifecycle.md index 29c04a6a1e..53cb7d0798 100644 --- a/docs/core/misc/layout-lifecycle.md +++ b/docs/core/misc/layout-lifecycle.md @@ -139,7 +139,7 @@ which essentially _simulates_ the layout lifecycle, in the following manner: ### Flows -Flow layouts in `Quicksilver` are implemented as a `SwipeFlow` struct, which implements +Flow layouts in `Delizia` are implemented as a `SwipeFlow` struct, which implements `Layout` directly. A flow lifecycle works like this: diff --git a/docs/tests/device-tests.md b/docs/tests/device-tests.md index 652023db81..eddd83d705 100644 --- a/docs/tests/device-tests.md +++ b/docs/tests/device-tests.md @@ -119,14 +119,14 @@ Arguments can be a list of internal model names, or one of the following shortcu * `legacy` - just Trezor One * `safe` - Trezor Safe family * `safe3` - Trezor Safe 3 (covers T2B1 and T2T1) -* `quicksilver` - covers the `quicksilver` UI (currently T3T1 only) +* `delizia` - covers the `delizia` UI (currently T3T1 only) You can specify a list as positional arguments, and exclude from it via `skip` keyword argument. You can provide a list of strings, a list of `TrezorModel` instances, or a comma-separated string of model names or shortcuts. -You can specify a skip reason as `reason="TODO implement for Quicksilver too"`. +You can specify a skip reason as `reason="TODO implement for Delizia too"`. [pytest-random-order]: https://pypi.org/project/pytest-random-order/ diff --git a/python/src/trezorlib/debuglink.py b/python/src/trezorlib/debuglink.py index 3af5711a7c..241c0ca44c 100644 --- a/python/src/trezorlib/debuglink.py +++ b/python/src/trezorlib/debuglink.py @@ -78,17 +78,17 @@ LOG = logging.getLogger(__name__) class LayoutType(Enum): T1 = auto() Bolt = auto() - Samson = auto() - Quicksilver = auto() + Caesar = auto() + Delizia = auto() @classmethod def from_model(cls, model: models.TrezorModel) -> "LayoutType": if model in (models.T2T1,): return cls.Bolt if model in (models.T2B1, models.T3B1): - return cls.Samson + return cls.Caesar if model in (models.T3T1,): - return cls.Quicksilver + return cls.Delizia if model in (models.T1B1,): return cls.T1 raise ValueError(f"Unknown model: {model}") diff --git a/tests/buttons.py b/tests/buttons.py index 53e5694800..9c54825569 100644 --- a/tests/buttons.py +++ b/tests/buttons.py @@ -45,8 +45,8 @@ CORNER_BUTTON = (215, 25) CONFIRM_WORD = (MID, TOP) TOP_ROW = (MID, TOP) -YES_UI_QUICKSILVER = grid34(2, 2) -NO_UI_QUICKSILVER = grid34(0, 2) +YES_UI_DELIZIA = grid34(2, 2) +NO_UI_DELIZIA = grid34(0, 2) def reset_minus(model_internal_name: str) -> Coords: diff --git a/tests/click_tests/common.py b/tests/click_tests/common.py index 07c67d6273..8d32078d45 100644 --- a/tests/click_tests/common.py +++ b/tests/click_tests/common.py @@ -50,9 +50,9 @@ def get_char_category(char: str) -> PassphraseCategory: def go_next(debug: "DebugLink") -> LayoutContent: if debug.layout_type is LayoutType.Bolt: return debug.click(buttons.OK) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: return debug.press_right() - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: return debug.swipe_up() else: raise RuntimeError("Unknown model") @@ -61,18 +61,18 @@ def go_next(debug: "DebugLink") -> LayoutContent: def tap_to_confirm(debug: "DebugLink") -> LayoutContent: if debug.layout_type is LayoutType.Bolt: return debug.read_layout() - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: return debug.read_layout() - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: return debug.click(buttons.TAP_TO_CONFIRM) else: raise RuntimeError("Unknown model") def go_back(debug: "DebugLink", r_middle: bool = False) -> LayoutContent: - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): return debug.click(buttons.CANCEL) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: if r_middle: return debug.press_middle() else: @@ -126,9 +126,9 @@ def _carousel_steps(current_index: int, wanted_index: int, length: int) -> int: def unlock_gesture(debug: "DebugLink") -> LayoutContent: if debug.layout_type is LayoutType.Bolt: return debug.click(buttons.OK) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: return debug.press_right() - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: return debug.click(buttons.TAP_TO_CONFIRM) else: raise RuntimeError("Unknown model") diff --git a/tests/click_tests/recovery.py b/tests/click_tests/recovery.py index d2d278cd38..1a9169e6eb 100644 --- a/tests/click_tests/recovery.py +++ b/tests/click_tests/recovery.py @@ -16,19 +16,15 @@ DELETE_BTN_TEXTS = ("inputs__delete", "inputs__previous") def enter_word( debug: "DebugLink", word: str, is_slip39: bool = False ) -> "LayoutContent": - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): typed_word = word[:4] for coords in buttons.type_word(typed_word, is_slip39=is_slip39): debug.click(coords) - if ( - debug.layout_type is LayoutType.Quicksilver - and not is_slip39 - and len(word) > 4 - ): - # T3T1 (quicksilver) BIP39 keyboard allows to "confirm" only if the word is fully written, you need to click the word to auto-complete + if debug.layout_type is LayoutType.Delizia and not is_slip39 and len(word) > 4: + # T3T1 (delizia) BIP39 keyboard allows to "confirm" only if the word is fully written, you need to click the word to auto-complete debug.click(buttons.CONFIRM_WORD) return debug.click(buttons.CONFIRM_WORD) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: letter_index = 0 layout = debug.read_layout() @@ -55,9 +51,9 @@ def confirm_recovery(debug: "DebugLink", title: str = "recovery__title") -> None assert TR.translate(title) == layout.title() if debug.layout_type is LayoutType.Bolt: debug.click(buttons.OK) - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.swipe_up() - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: for _ in range(layout.page_count()): debug.press_right() @@ -84,7 +80,7 @@ def select_number_of_words( raise ValueError("Invalid num_of_words") return debug.click(coords) - def select_samson() -> "LayoutContent": + def select_caesar() -> "LayoutContent": # navigate to the number and confirm it word_options = (20, 33) if unlock_repeated_backup else (12, 18, 20, 24, 33) index = word_options.index(num_of_words) @@ -92,10 +88,10 @@ def select_number_of_words( debug.press_right() return debug.press_middle() - def select_quicksilver() -> "LayoutContent": + def select_delizia() -> "LayoutContent": # click the button from ValuePad if unlock_repeated_backup: - coords_map = {20: buttons.NO_UI_QUICKSILVER, 33: buttons.YES_UI_QUICKSILVER} + coords_map = {20: buttons.NO_UI_DELIZIA, 33: buttons.YES_UI_DELIZIA} else: coords_map = { 12: buttons.grid34(0, 1), @@ -112,17 +108,17 @@ def select_number_of_words( if debug.layout_type is LayoutType.Bolt: assert debug.read_layout().text_content() == TR.recovery__num_of_words layout = select_bolt() - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: layout = debug.press_right() assert layout.title() == TR.word_count__title - layout = select_samson() - elif debug.layout_type is LayoutType.Quicksilver: - layout = select_quicksilver() + layout = select_caesar() + elif debug.layout_type is LayoutType.Delizia: + layout = select_delizia() else: raise ValueError("Unknown model") if unlock_repeated_backup: - if debug.layout_type is LayoutType.Samson: + if debug.layout_type is LayoutType.Caesar: assert TR.recovery__enter_backup in layout.text_content() else: assert ( @@ -150,12 +146,12 @@ def enter_share( is_first: bool = True, before_title: str = "recovery__title_recover", ) -> "LayoutContent": - if debug.layout_type is LayoutType.Samson: + if debug.layout_type is LayoutType.Caesar: assert TR.translate(before_title) in debug.read_layout().title() layout = debug.read_layout() for _ in range(layout.page_count()): layout = debug.press_right() - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: layout = debug.swipe_up() else: assert TR.translate(before_title) in debug.read_layout().title() @@ -236,7 +232,7 @@ def enter_seed_previous_correct( debug.swipe_right() for _ in range(len(bad_word)): debug.click(buttons.RECOVERY_DELETE) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: layout = debug.read_layout() while layout.get_middle_choice() not in DELETE_BTNS: @@ -247,7 +243,7 @@ def enter_seed_previous_correct( while layout.get_middle_choice() not in DELETE_BTNS: layout = debug.press_left() layout = debug.press_middle() - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.click(buttons.RECOVERY_DELETE) # Top-left for _ in range(len(bad_word)): debug.click(buttons.RECOVERY_DELETE) @@ -276,10 +272,10 @@ def prepare_enter_seed( ) if debug.layout_type is LayoutType.Bolt: debug.click(buttons.OK) - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.swipe_up() debug.swipe_up() - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: debug.press_right() debug.press_right() layout = debug.press_right() diff --git a/tests/click_tests/reset.py b/tests/click_tests/reset.py index a138c816de..b8f7c1fc85 100644 --- a/tests/click_tests/reset.py +++ b/tests/click_tests/reset.py @@ -16,26 +16,26 @@ def confirm_new_wallet(debug: "DebugLink") -> None: assert debug.read_layout().title() == TR.reset__title_create_wallet if debug.layout_type is LayoutType.Bolt: debug.click(buttons.OK) - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.swipe_up() debug.click(buttons.TAP_TO_CONFIRM) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: debug.press_right() debug.press_right() assert ( TR.backup__new_wallet_successfully_created in debug.read_layout().text_content() or TR.backup__new_wallet_created in debug.read_layout().text_content() ) - if debug.layout_type is LayoutType.Quicksilver: + if debug.layout_type is LayoutType.Delizia: debug.swipe_up() def confirm_read(debug: "DebugLink", middle_r: bool = False) -> None: if debug.layout_type is LayoutType.Bolt: debug.click(buttons.OK) - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.swipe_up() - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: page_count = debug.read_layout().page_count() if page_count > 1: for _ in range(page_count - 1): @@ -52,19 +52,19 @@ def cancel_backup( if debug.layout_type is LayoutType.Bolt: debug.click(buttons.CANCEL) debug.click(buttons.CANCEL) - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.click(buttons.CORNER_BUTTON) debug.click(buttons.VERTICAL_MENU[0]) if confirm: debug.swipe_up() debug.click(buttons.TAP_TO_CONFIRM) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: debug.press_left() debug.press_left() def set_selection(debug: "DebugLink", button: tuple[int, int], diff: int) -> None: - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): assert "NumberInputDialog" in debug.read_layout().all_components() for _ in range(diff): debug.click(button) @@ -72,7 +72,7 @@ def set_selection(debug: "DebugLink", button: tuple[int, int], diff: int) -> Non debug.click(buttons.OK) else: debug.swipe_up() - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: layout = debug.read_layout() if ( layout.title() @@ -93,9 +93,9 @@ def set_selection(debug: "DebugLink", button: tuple[int, int], diff: int) -> Non def read_words(debug: "DebugLink", do_htc: bool = True) -> list[str]: words: list[str] = [] - if debug.layout_type is LayoutType.Samson: + if debug.layout_type is LayoutType.Caesar: debug.press_right() - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.swipe_up() # Swiping through all the pages and loading the words @@ -104,19 +104,19 @@ def read_words(debug: "DebugLink", do_htc: bool = True) -> list[str]: words.extend(layout.seed_words()) layout = debug.swipe_up() assert layout is not None - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): words.extend(layout.seed_words()) - if debug.layout_type is LayoutType.Quicksilver: + if debug.layout_type is LayoutType.Delizia: debug.swipe_up() # There is hold-to-confirm button if do_htc: if debug.layout_type is LayoutType.Bolt: debug.click(buttons.OK, hold_ms=1500) - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.click(buttons.TAP_TO_CONFIRM, hold_ms=1500) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: debug.press_right(hold_ms=1200) else: # It would take a very long time to test 16-of-16 with doing 1500 ms HTC after @@ -127,7 +127,7 @@ def read_words(debug: "DebugLink", do_htc: bool = True) -> list[str]: def confirm_words(debug: "DebugLink", words: list[str]) -> None: - if debug.layout_type is LayoutType.Quicksilver: + if debug.layout_type is LayoutType.Delizia: debug.swipe_up() layout = debug.read_layout() @@ -148,7 +148,7 @@ def confirm_words(debug: "DebugLink", words: list[str]) -> None: wanted_word = words[word_pos - 1].lower() button_pos = btn_texts.index(wanted_word) layout = debug.click(buttons.RESET_WORD_CHECK[button_pos]) - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: assert TR.regexp("reset__select_word_x_of_y_template").match(layout.subtitle()) for _ in range(3): # "Select word 3 of 20" @@ -163,7 +163,7 @@ def confirm_words(debug: "DebugLink", words: list[str]) -> None: wanted_word = words[word_pos - 1].lower() button_pos = btn_texts.index(wanted_word) layout = debug.click(buttons.VERTICAL_MENU[button_pos]) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: assert TR.reset__select_correct_word in layout.text_content() layout = debug.press_right() for _ in range(3): diff --git a/tests/click_tests/test_autolock.py b/tests/click_tests/test_autolock.py index 599c0df6ad..cb550b9920 100644 --- a/tests/click_tests/test_autolock.py +++ b/tests/click_tests/test_autolock.py @@ -70,7 +70,7 @@ def set_autolock_delay(device_handler: "BackgroundDeviceHandler", delay_ms: int) ) layout = go_next(debug) - if debug.layout_type is LayoutType.Quicksilver: + if debug.layout_type is LayoutType.Delizia: layout = tap_to_confirm(debug) assert layout.main_component() == "Homescreen" device_handler.result() @@ -109,12 +109,12 @@ def test_autolock_interrupts_signing(device_handler: "BackgroundDeviceHandler"): layout = debug.click(buttons.OK) assert TR.send__total_amount in layout.text_content() assert "0.0039 BTC" in layout.text_content() - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.swipe_up() layout = debug.swipe_up() assert TR.send__total_amount in layout.text_content() assert "0.0039 BTC" in layout.text_content() - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: debug.press_right() layout = debug.press_right() assert TR.send__total_amount in layout.text_content() @@ -161,13 +161,13 @@ def test_autolock_does_not_interrupt_signing(device_handler: "BackgroundDeviceHa layout = debug.click(buttons.OK) assert TR.send__total_amount in layout.text_content() assert "0.0039 BTC" in layout.text_content() - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.swipe_up() layout = debug.swipe_up() assert TR.send__total_amount in layout.text_content() assert "0.0039 BTC" in layout.text_content() debug.swipe_up() - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: debug.press_right() layout = debug.press_right() assert TR.send__total_amount in layout.text_content() @@ -188,9 +188,9 @@ def test_autolock_does_not_interrupt_signing(device_handler: "BackgroundDeviceHa # waiting for it is not necessary. if debug.layout_type is LayoutType.Bolt: debug.click(buttons.OK, wait=False) - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.click(buttons.TAP_TO_CONFIRM, wait=False) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: debug.press_middle(wait=False) signatures, tx = device_handler.result() @@ -210,7 +210,7 @@ def test_autolock_passphrase_keyboard(device_handler: "BackgroundDeviceHandler") assert "PassphraseKeyboard" in debug.read_layout().all_components() - if debug.layout_type is LayoutType.Samson: + if debug.layout_type is LayoutType.Caesar: # Going into the selected character category debug.press_middle() @@ -220,10 +220,10 @@ def test_autolock_passphrase_keyboard(device_handler: "BackgroundDeviceHandler") if debug.layout_type is LayoutType.Bolt: # click at "j" debug.click(CENTER_BUTTON) - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: # click at "j" debug.click((20, 120)) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: # just go right # NOTE: because of passphrase randomization it would be a pain to input # a specific passphrase, which is not in scope for this test. @@ -233,9 +233,9 @@ def test_autolock_passphrase_keyboard(device_handler: "BackgroundDeviceHandler") # Send the passphrase to the client (TT has it clicked already, TR needs to input it) if debug.layout_type is LayoutType.Bolt: debug.click(buttons.OK) - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: debug.click(buttons.CORNER_BUTTON) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: debug.input("j" * 8) # address corresponding to "jjjjjjjj" passphrase @@ -252,16 +252,16 @@ def test_autolock_interrupts_passphrase(device_handler: "BackgroundDeviceHandler assert "PassphraseKeyboard" in debug.read_layout().all_components() - if debug.layout_type is LayoutType.Samson: + if debug.layout_type is LayoutType.Caesar: # Going into the selected character category debug.press_middle() # enter passphrase - slowly # autolock must activate even if we pressed some buttons for _ in range(math.ceil(6 / 1.5)): - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): debug.click(CENTER_BUTTON) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: debug.press_middle() time.sleep(1.5) @@ -292,7 +292,7 @@ def test_dryrun_locks_at_number_of_words(device_handler: "BackgroundDeviceHandle layout = unlock_dry_run(debug) assert TR.recovery__num_of_words in debug.read_layout().text_content() - if debug.layout_type is LayoutType.Samson: + if debug.layout_type is LayoutType.Caesar: debug.press_right() # wait for autolock to trigger @@ -326,10 +326,10 @@ def test_dryrun_locks_at_word_entry(device_handler: "BackgroundDeviceHandler"): # select 20 words recovery.select_number_of_words(debug, 20) - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): layout = go_next(debug) assert layout.main_component() == "MnemonicKeyboard" - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: layout = debug.press_right() assert "MnemonicKeyboard" in layout.all_components() @@ -364,7 +364,7 @@ def test_dryrun_enter_word_slowly(device_handler: "BackgroundDeviceHandler"): # should not have locked, even though we took 9 seconds to type each letter assert layout.main_component() == "MnemonicKeyboard" - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: layout = debug.swipe_up() assert layout.main_component() == "MnemonicKeyboard" @@ -376,7 +376,7 @@ def test_dryrun_enter_word_slowly(device_handler: "BackgroundDeviceHandler"): # should not have locked, even though we took 9 seconds to type each letter assert layout.main_component() == "MnemonicKeyboard" - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: layout = debug.press_right() assert "MnemonicKeyboard" in layout.all_components() diff --git a/tests/click_tests/test_backup_slip39_custom.py b/tests/click_tests/test_backup_slip39_custom.py index bc05170dc0..c98752d2c0 100644 --- a/tests/click_tests/test_backup_slip39_custom.py +++ b/tests/click_tests/test_backup_slip39_custom.py @@ -106,9 +106,9 @@ def test_backup_slip39_custom( all_words.append(" ".join(words)) # confirm backup done - if debug.layout_type is LayoutType.Quicksilver and share_count > 1: + if debug.layout_type is LayoutType.Delizia and share_count > 1: reset.confirm_read(debug) - elif debug.layout_type is not LayoutType.Quicksilver: + elif debug.layout_type is not LayoutType.Delizia: reset.confirm_read(debug) # generate secret locally diff --git a/tests/click_tests/test_lock.py b/tests/click_tests/test_lock.py index 1b6b2ce0cb..ed1db64b07 100644 --- a/tests/click_tests/test_lock.py +++ b/tests/click_tests/test_lock.py @@ -51,7 +51,7 @@ def test_hold_to_lock(device_handler: "BackgroundDeviceHandler"): }[debug.model] def hold(duration: int) -> None: - if debug.layout_type is LayoutType.Samson: + if debug.layout_type is LayoutType.Caesar: debug.press_right(hold_ms=duration) else: debug.click((13, 37), hold_ms=duration) @@ -78,7 +78,7 @@ def test_hold_to_lock(device_handler: "BackgroundDeviceHandler"): assert device_handler.features().unlocked is False # unlock by touching - if debug.layout_type is LayoutType.Samson: + if debug.layout_type is LayoutType.Caesar: layout = debug.press_right() else: layout = debug.click(buttons.INFO) diff --git a/tests/click_tests/test_passphrase_samson.py b/tests/click_tests/test_passphrase_caesar.py similarity index 100% rename from tests/click_tests/test_passphrase_samson.py rename to tests/click_tests/test_passphrase_caesar.py diff --git a/tests/click_tests/test_passphrase_quicksilver.py b/tests/click_tests/test_passphrase_delizia.py similarity index 99% rename from tests/click_tests/test_passphrase_quicksilver.py rename to tests/click_tests/test_passphrase_delizia.py index 016b5a59d9..85bdc37173 100644 --- a/tests/click_tests/test_passphrase_quicksilver.py +++ b/tests/click_tests/test_passphrase_delizia.py @@ -32,7 +32,7 @@ if TYPE_CHECKING: from ..device_handler import BackgroundDeviceHandler -pytestmark = pytest.mark.models("quicksilver") +pytestmark = pytest.mark.models("delizia") PASSPHRASE_CANCELLED = pytest.raises(exceptions.Cancelled, match="") @@ -173,7 +173,7 @@ def enter_passphrase(debug: "DebugLink") -> None: coords = buttons.CORNER_BUTTON # top-right corner debug.click(coords) if is_empty: - debug.click(buttons.YES_UI_QUICKSILVER) + debug.click(buttons.YES_UI_DELIZIA) def delete_char(debug: "DebugLink") -> None: diff --git a/tests/click_tests/test_pin.py b/tests/click_tests/test_pin.py index 48a7a3a169..c2a8d56bd3 100644 --- a/tests/click_tests/test_pin.py +++ b/tests/click_tests/test_pin.py @@ -106,9 +106,9 @@ def prepare( TR.pin__turn_on in debug.read_layout().text_content() or TR.pin__info in debug.read_layout().text_content() ) - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): go_next(debug) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: go_next(debug) go_next(debug) go_next(debug) @@ -127,7 +127,7 @@ def prepare( _input_see_confirm(debug, old_pin) assert TR.wipe_code__turn_on in debug.read_layout().text_content() go_next(debug) - if debug.layout_type is LayoutType.Samson: + if debug.layout_type is LayoutType.Caesar: go_next(debug) go_next(debug) go_next(debug) @@ -137,7 +137,7 @@ def prepare( _assert_pin_entry(debug) yield debug - if debug.layout_type is LayoutType.Quicksilver and tap: + if debug.layout_type is LayoutType.Delizia and tap: go_next(debug) debug.click(buttons.TAP_TO_CONFIRM) else: @@ -155,13 +155,13 @@ def _input_pin(debug: "DebugLink", pin: str, check: bool = False) -> None: if check: before = debug.read_layout().pin() - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): digits_order = debug.read_layout().tt_pin_digits_order() for digit in pin: digit_index = digits_order.index(digit) coords = buttons.pin_passphrase_index(digit_index) debug.click(coords) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: for digit in pin: navigate_to_action_and_press(debug, digit, TR_PIN_ACTIONS) @@ -172,9 +172,9 @@ def _input_pin(debug: "DebugLink", pin: str, check: bool = False) -> None: def _see_pin(debug: "DebugLink") -> None: """Navigate to "SHOW" and press it""" - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): debug.click(buttons.TOP_ROW) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: navigate_to_action_and_press(debug, SHOW, TR_PIN_ACTIONS) @@ -184,9 +184,9 @@ def _delete_pin(debug: "DebugLink", digits_to_delete: int, check: bool = True) - before = debug.read_layout().pin() for _ in range(digits_to_delete): - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): debug.click(buttons.pin_passphrase_grid(9)) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: navigate_to_action_and_press(debug, DELETE, TR_PIN_ACTIONS) if check: @@ -196,9 +196,9 @@ def _delete_pin(debug: "DebugLink", digits_to_delete: int, check: bool = True) - def _delete_all(debug: "DebugLink", check: bool = True) -> None: """Navigate to "DELETE" and hold it until all digits are deleted""" - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): debug.click(buttons.pin_passphrase_grid(9), hold_ms=1500) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: navigate_to_action_and_press(debug, DELETE, TR_PIN_ACTIONS, hold_ms=1000) if check: @@ -215,9 +215,9 @@ def _cancel_pin(debug: "DebugLink") -> None: def _confirm_pin(debug: "DebugLink") -> None: """Navigate to "ENTER" and press it""" - if debug.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if debug.layout_type in (LayoutType.Bolt, LayoutType.Delizia): debug.click(buttons.pin_passphrase_grid(11)) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: navigate_to_action_and_press(debug, ENTER, TR_PIN_ACTIONS) @@ -230,7 +230,7 @@ def _input_see_confirm(debug: "DebugLink", pin: str) -> None: def _enter_two_times(debug: "DebugLink", pin1: str, pin2: str) -> None: _input_see_confirm(debug, pin1) - if debug.layout_type is LayoutType.Samson: + if debug.layout_type is LayoutType.Caesar: # Please re-enter go_next(debug) @@ -323,10 +323,10 @@ def test_pin_setup_mismatch(device_handler: "BackgroundDeviceHandler"): if debug.layout_type is LayoutType.Bolt: go_next(debug) _cancel_pin(debug) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: debug.press_middle() debug.press_no() - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: go_next(debug) _cancel_pin(debug) diff --git a/tests/click_tests/test_reset_slip39_advanced.py b/tests/click_tests/test_reset_slip39_advanced.py index 0b43095ad1..77f68269e6 100644 --- a/tests/click_tests/test_reset_slip39_advanced.py +++ b/tests/click_tests/test_reset_slip39_advanced.py @@ -93,8 +93,8 @@ def test_reset_slip39_advanced( # debug.read_layout().text_content(), # [ # "reset__slip39_checklist_set_threshold", # basic - # "reset__slip39_checklist_set_num_shares", # advanced (UI bolt and quicksilver) - # "reset__slip39_checklist_num_shares", # advanced (UI samson) + # "reset__slip39_checklist_set_num_shares", # advanced (UI bolt and delizia) + # "reset__slip39_checklist_num_shares", # advanced (UI caesar) # ], # ) reset.confirm_read(debug) diff --git a/tests/click_tests/test_tutorial_samson.py b/tests/click_tests/test_tutorial_caesar.py similarity index 100% rename from tests/click_tests/test_tutorial_samson.py rename to tests/click_tests/test_tutorial_caesar.py diff --git a/tests/click_tests/test_tutorial_quicksilver.py b/tests/click_tests/test_tutorial_delizia.py similarity index 99% rename from tests/click_tests/test_tutorial_quicksilver.py rename to tests/click_tests/test_tutorial_delizia.py index f1b0cd1d94..a642c06f3a 100644 --- a/tests/click_tests/test_tutorial_quicksilver.py +++ b/tests/click_tests/test_tutorial_delizia.py @@ -29,7 +29,7 @@ if TYPE_CHECKING: # Trezor Safe 5 only pytestmark = [ - pytest.mark.models("quicksilver"), + pytest.mark.models("delizia"), pytest.mark.setup_client(uninitialized=True), ] diff --git a/tests/common.py b/tests/common.py index 51b404cb48..554d0fb65e 100644 --- a/tests/common.py +++ b/tests/common.py @@ -208,10 +208,10 @@ def read_and_confirm_mnemonic( """ if debug.layout_type is LayoutType.Bolt: mnemonic = yield from read_mnemonic_from_screen_bolt(debug) - elif debug.layout_type is LayoutType.Samson: - mnemonic = yield from read_mnemonic_from_screen_samson(debug) - elif debug.layout_type is LayoutType.Quicksilver: - mnemonic = yield from read_mnemonic_from_screen_quicksilver(debug) + elif debug.layout_type is LayoutType.Caesar: + mnemonic = yield from read_mnemonic_from_screen_caesar(debug) + elif debug.layout_type is LayoutType.Delizia: + mnemonic = yield from read_mnemonic_from_screen_delizia(debug) else: raise ValueError(f"Unknown model: {debug.layout_type}") @@ -238,7 +238,7 @@ def read_mnemonic_from_screen_bolt( return mnemonic -def read_mnemonic_from_screen_samson( +def read_mnemonic_from_screen_caesar( debug: "DebugLink", ) -> Generator[None, "ButtonRequest", list[str]]: mnemonic: list[str] = [] @@ -258,7 +258,7 @@ def read_mnemonic_from_screen_samson( return mnemonic -def read_mnemonic_from_screen_quicksilver( +def read_mnemonic_from_screen_delizia( debug: "DebugLink", ) -> Generator[None, "ButtonRequest", list[str]]: mnemonic: list[str] = [] @@ -293,10 +293,10 @@ def check_share( word_pos_match = re.search( re_num_of_word, debug.read_layout().text_content() ) - elif debug.layout_type is LayoutType.Samson: + elif debug.layout_type is LayoutType.Caesar: # other models have the instruction in the title/subtitle word_pos_match = re.search(re_num_of_word, debug.read_layout().title()) - elif debug.layout_type is LayoutType.Quicksilver: + elif debug.layout_type is LayoutType.Delizia: word_pos_match = re.search(re_num_of_word, debug.read_layout().subtitle()) else: word_pos_match = None @@ -321,7 +321,7 @@ def click_info_button_bolt(debug: "DebugLink") -> Generator[Any, Any, ButtonRequ return (yield) -def click_info_button_quicksilver(debug: "DebugLink"): +def click_info_button_delizia(debug: "DebugLink"): """Click Shamir backup info button and return back.""" layout = debug.click(buttons.CORNER_BUTTON) assert "VerticalMenu" in layout.all_components() diff --git a/tests/conftest.py b/tests/conftest.py index 5c02588919..bccf96eddb 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -184,7 +184,7 @@ class ModelsFilter: "safe": {models.T2B1, models.T3T1, models.T3B1}, "safe3": {models.T2B1, models.T3B1}, "safe5": {models.T3T1}, - "quicksilver": {models.T3T1}, + "delizia": {models.T3T1}, } def __init__(self, node: Node) -> None: diff --git a/tests/device_tests/bitcoin/test_signmessage.py b/tests/device_tests/bitcoin/test_signmessage.py index 23a6be1536..be3eb46ec8 100644 --- a/tests/device_tests/bitcoin/test_signmessage.py +++ b/tests/device_tests/bitcoin/test_signmessage.py @@ -365,7 +365,7 @@ def test_signmessage_pagination(client: Client, message: str): # We cannot differentiate between a newline and space in the message read from Trezor. # TODO: do the check also for T2B1 - if client.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if client.layout_type in (LayoutType.Bolt, LayoutType.Delizia): message_read = IF.message_read.replace(" ", "").replace("...", "") signed_message = message.replace("\n", "").replace(" ", "") assert signed_message in message_read diff --git a/tests/device_tests/bitcoin/test_signtx.py b/tests/device_tests/bitcoin/test_signtx.py index 49cfdf6ec0..9dce03a317 100644 --- a/tests/device_tests/bitcoin/test_signtx.py +++ b/tests/device_tests/bitcoin/test_signtx.py @@ -1615,8 +1615,8 @@ def test_information_cancel(client: Client): @pytest.mark.models( "core", - skip="quicksilver", - reason="Cannot test layouts on T1, not implemented in Quicksilver UI", + skip="delizia", + reason="Cannot test layouts on T1, not implemented in Delizia UI", ) def test_information_replacement(client: Client): # Use the change output and an external output to bump the fee. diff --git a/tests/device_tests/cardano/test_sign_tx.py b/tests/device_tests/cardano/test_sign_tx.py index 6c953aeb72..1900ff2cbe 100644 --- a/tests/device_tests/cardano/test_sign_tx.py +++ b/tests/device_tests/cardano/test_sign_tx.py @@ -37,11 +37,11 @@ def show_details_input_flow(client: Client): if client.layout_type is LayoutType.Bolt: SHOW_ALL_BUTTON_POSITION = (143, 167) client.debug.click(SHOW_ALL_BUTTON_POSITION) - elif client.layout_type is LayoutType.Samson: - # samson - right button for "Show all" + elif client.layout_type is LayoutType.Caesar: + # Caesar - right button for "Show all" client.debug.press_yes() - elif client.layout_type is LayoutType.Quicksilver: - # quicksilver - "Show all" button from context menu + elif client.layout_type is LayoutType.Delizia: + # Delizia - "Show all" button from context menu client.debug.click(buttons.CORNER_BUTTON) client.debug.click(buttons.VERTICAL_MENU[0]) else: diff --git a/tests/device_tests/ethereum/test_sign_typed_data.py b/tests/device_tests/ethereum/test_sign_typed_data.py index d959b137f8..38159e39e0 100644 --- a/tests/device_tests/ethereum/test_sign_typed_data.py +++ b/tests/device_tests/ethereum/test_sign_typed_data.py @@ -95,7 +95,7 @@ DATA = { } -@pytest.mark.models("core", skip="quicksilver", reason="Not yet implemented in new UI") +@pytest.mark.models("core", skip="delizia", reason="Not yet implemented in new UI") def test_ethereum_sign_typed_data_show_more_button(client: Client): with client: client.watch_layout() diff --git a/tests/device_tests/ethereum/test_signtx.py b/tests/device_tests/ethereum/test_signtx.py index bf1a3fb6a1..4c84843585 100644 --- a/tests/device_tests/ethereum/test_signtx.py +++ b/tests/device_tests/ethereum/test_signtx.py @@ -132,8 +132,8 @@ def test_signtx_fee_info(client: Client): @pytest.mark.models( "core", - skip="quicksilver", - reason="T1 does not support input flows; Quicksilver can't send Cancel on Summary", + skip="delizia", + reason="T1 does not support input flows; Delizia can't send Cancel on Summary", ) def test_signtx_go_back_from_summary(client: Client): input_flow = InputFlowEthereumSignTxGoBackFromSummary(client).get() @@ -442,7 +442,7 @@ HEXDATA = "0123456789abcd000023456789abcd010003456789abcd020000456789abcd0300000 @pytest.mark.parametrize( "flow", (input_flow_data_skip, input_flow_data_scroll_down, input_flow_data_go_back) ) -@pytest.mark.models("core", skip="quicksilver", reason="Not yet implemented in new UI") +@pytest.mark.models("core", skip="delizia", reason="Not yet implemented in new UI") def test_signtx_data_pagination(client: Client, flow): def _sign_tx_call(): ethereum.sign_tx( diff --git a/tests/device_tests/reset_recovery/test_reset_bip39_t2.py b/tests/device_tests/reset_recovery/test_reset_bip39_t2.py index 44cabbac93..fe62740067 100644 --- a/tests/device_tests/reset_recovery/test_reset_bip39_t2.py +++ b/tests/device_tests/reset_recovery/test_reset_bip39_t2.py @@ -221,7 +221,7 @@ def test_failed_pin(client: Client): ret = client.call_raw(messages.ButtonAck()) # Re-enter PIN for TR - if client.layout_type is LayoutType.Samson: + if client.layout_type is LayoutType.Caesar: assert isinstance(ret, messages.ButtonRequest) client.debug.press_yes() ret = client.call_raw(messages.ButtonAck()) @@ -254,11 +254,11 @@ def test_already_initialized(client: Client): @pytest.mark.setup_client(uninitialized=True) def test_entropy_check(client: Client): with client: - quicksilver = client.debug.layout_type is LayoutType.Quicksilver + delizia = client.debug.layout_type is LayoutType.Delizia client.set_expected_responses( [ messages.ButtonRequest(name="setup_device"), - (quicksilver, messages.ButtonRequest(name="confirm_setup_device")), + (delizia, messages.ButtonRequest(name="confirm_setup_device")), messages.EntropyRequest, messages.EntropyCheckReady, messages.PublicKey, @@ -271,7 +271,7 @@ def test_entropy_check(client: Client): messages.EntropyCheckReady, messages.PublicKey, messages.PublicKey, - (quicksilver, messages.ButtonRequest(name="backup_device")), + (delizia, messages.ButtonRequest(name="backup_device")), messages.Success, messages.Features, ] @@ -291,13 +291,13 @@ def test_entropy_check(client: Client): @pytest.mark.setup_client(uninitialized=True) def test_no_entropy_check(client: Client): with client: - quicksilver = client.debug.layout_type is LayoutType.Quicksilver + delizia = client.debug.layout_type is LayoutType.Delizia client.set_expected_responses( [ messages.ButtonRequest(name="setup_device"), - (quicksilver, messages.ButtonRequest(name="confirm_setup_device")), + (delizia, messages.ButtonRequest(name="confirm_setup_device")), messages.EntropyRequest, - (quicksilver, messages.ButtonRequest(name="backup_device")), + (delizia, messages.ButtonRequest(name="backup_device")), messages.Success, messages.Features, ] diff --git a/tests/device_tests/test_msg_backup_device.py b/tests/device_tests/test_msg_backup_device.py index 6c2ccf4245..37b51e39d4 100644 --- a/tests/device_tests/test_msg_backup_device.py +++ b/tests/device_tests/test_msg_backup_device.py @@ -66,7 +66,7 @@ def test_backup_bip39(client: Client): "click_info", [True, False], ids=["click_info", "no_click_info"] ) def test_backup_slip39_basic(client: Client, click_info: bool): - if click_info and client.layout_type is LayoutType.Samson: + if click_info and client.layout_type is LayoutType.Caesar: pytest.skip("click_info not implemented on T2B1") assert client.features.backup_availability == messages.BackupAvailability.Required @@ -97,7 +97,7 @@ def test_backup_slip39_single(client: Client): with client: IF = InputFlowBip39Backup( - client, confirm_success=(client.layout_type is not LayoutType.Quicksilver) + client, confirm_success=(client.layout_type is not LayoutType.Delizia) ) client.set_input_flow(IF.get()) device.backup(client) @@ -122,7 +122,7 @@ def test_backup_slip39_single(client: Client): "click_info", [True, False], ids=["click_info", "no_click_info"] ) def test_backup_slip39_advanced(client: Client, click_info: bool): - if click_info and client.layout_type is LayoutType.Samson: + if click_info and client.layout_type is LayoutType.Caesar: pytest.skip("click_info not implemented on T2B1") assert client.features.backup_availability == messages.BackupAvailability.Required diff --git a/tests/device_tests/test_msg_change_wipe_code_t2.py b/tests/device_tests/test_msg_change_wipe_code_t2.py index 47615b1932..7602de4680 100644 --- a/tests/device_tests/test_msg_change_wipe_code_t2.py +++ b/tests/device_tests/test_msg_change_wipe_code_t2.py @@ -39,7 +39,7 @@ def _check_wipe_code(client: Client, pin: str, wipe_code: str): # Try to change the PIN to the current wipe code value. The operation should fail. with client, pytest.raises(TrezorFailure): client.use_pin_sequence([pin, wipe_code, wipe_code]) - if client.layout_type is LayoutType.Samson: + if client.layout_type is LayoutType.Caesar: br_count = 6 else: br_count = 5 @@ -66,7 +66,7 @@ def test_set_remove_wipe_code(client: Client): _ensure_unlocked(client, PIN4) assert client.features.wipe_code_protection is False - if client.layout_type is LayoutType.Samson: + if client.layout_type is LayoutType.Caesar: br_count = 6 else: br_count = 5 @@ -125,7 +125,7 @@ def test_set_wipe_code_to_pin(client: Client): _ensure_unlocked(client, PIN4) with client: - if client.layout_type is LayoutType.Samson: + if client.layout_type is LayoutType.Caesar: br_count = 8 else: br_count = 7 @@ -144,7 +144,7 @@ def test_set_wipe_code_to_pin(client: Client): def test_set_pin_to_wipe_code(client: Client): # Set wipe code. with client: - if client.layout_type is LayoutType.Samson: + if client.layout_type is LayoutType.Caesar: br_count = 5 else: br_count = 4 @@ -157,7 +157,7 @@ def test_set_pin_to_wipe_code(client: Client): # Try to set the PIN to the current wipe code value. with client, pytest.raises(TrezorFailure): - if client.layout_type is LayoutType.Samson: + if client.layout_type is LayoutType.Caesar: br_count = 6 else: br_count = 4 diff --git a/tests/device_tests/test_msg_changepin_t2.py b/tests/device_tests/test_msg_changepin_t2.py index 033364b4be..fadc3764b3 100644 --- a/tests/device_tests/test_msg_changepin_t2.py +++ b/tests/device_tests/test_msg_changepin_t2.py @@ -64,7 +64,7 @@ def test_set_pin(client: Client): # Let's set new PIN with client: - if client.layout_type is LayoutType.Samson: + if client.layout_type is LayoutType.Caesar: br_count = 6 else: br_count = 4 @@ -89,7 +89,7 @@ def test_change_pin(client: Client): # Let's change PIN with client: client.use_pin_sequence([PIN4, PIN_MAX, PIN_MAX]) - if client.layout_type is LayoutType.Samson: + if client.layout_type is LayoutType.Caesar: br_count = 6 else: br_count = 5 @@ -182,7 +182,7 @@ def test_change_invalid_current(client: Client): _check_pin(client, PIN4) -@pytest.mark.models("quicksilver") +@pytest.mark.models("delizia") @pytest.mark.setup_client(pin=None) def test_pin_menu_cancel_setup(client: Client): def cancel_pin_setup_input_flow(): diff --git a/tests/device_tests/test_protection_levels.py b/tests/device_tests/test_protection_levels.py index b05a5b02c2..be2a3a81e0 100644 --- a/tests/device_tests/test_protection_levels.py +++ b/tests/device_tests/test_protection_levels.py @@ -140,7 +140,7 @@ def test_change_pin_t2(client: Client): messages.ButtonRequest, _pin_request(client), _pin_request(client), - (client.layout_type is LayoutType.Samson, messages.ButtonRequest), + (client.layout_type is LayoutType.Caesar, messages.ButtonRequest), _pin_request(client), messages.ButtonRequest, messages.Success, diff --git a/tests/device_tests/test_session_id_and_passphrase.py b/tests/device_tests/test_session_id_and_passphrase.py index d9a6883b12..51a2c0731f 100644 --- a/tests/device_tests/test_session_id_and_passphrase.py +++ b/tests/device_tests/test_session_id_and_passphrase.py @@ -399,9 +399,9 @@ def test_hide_passphrase_from_host(client: Client): yield content = client.debug.read_layout().text_content().lower() assert TR.passphrase__from_host_not_shown[:50].lower() in content - if client.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if client.layout_type in (LayoutType.Bolt, LayoutType.Delizia): client.debug.press_yes() - elif client.layout_type is LayoutType.Samson: + elif client.layout_type is LayoutType.Caesar: client.debug.press_right() client.debug.press_right() client.debug.press_yes() diff --git a/tests/input_flows.py b/tests/input_flows.py index 00bd63ea08..363a4c6d60 100644 --- a/tests/input_flows.py +++ b/tests/input_flows.py @@ -25,7 +25,7 @@ from .common import ( BRGeneratorType, check_pin_backoff_time, click_info_button_bolt, - click_info_button_quicksilver, + click_info_button_delizia, click_through, get_text_possible_pagination, read_and_confirm_mnemonic, @@ -53,10 +53,10 @@ class InputFlowBase: return getattr(self, "input_flow_common") elif self.client.layout_type is LayoutType.Bolt: return self.input_flow_bolt - elif self.client.layout_type is LayoutType.Samson: - return self.input_flow_samson - elif self.client.layout_type is LayoutType.Quicksilver: - return self.input_flow_quicksilver + elif self.client.layout_type is LayoutType.Caesar: + return self.input_flow_caesar + elif self.client.layout_type is LayoutType.Delizia: + return self.input_flow_delizia else: raise ValueError("Unknown model") @@ -64,11 +64,11 @@ class InputFlowBase: """Special for TT""" raise NotImplementedError - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: """Special for TR""" raise NotImplementedError - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: """Special for T3T1""" raise NotImplementedError @@ -102,7 +102,7 @@ class InputFlowNewCodeMismatch(InputFlowBase): assert (yield).name == f"set_{self.what}" self.debug.press_yes() - if self.client.layout_type is LayoutType.Samson: + if self.client.layout_type is LayoutType.Caesar: layout = self.debug.read_layout() if "PinKeyboard" not in layout.all_components(): yield from swipe_if_necessary(self.debug) # code info @@ -211,7 +211,7 @@ class InputFlowSignMessagePagination(InputFlowBase): self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: # confirm address yield self.debug.press_yes() @@ -229,7 +229,7 @@ class InputFlowSignMessagePagination(InputFlowBase): yield self.debug.press_yes() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: # collect screen contents into `message_read`. # Using a helper debuglink function to assemble the final text. layouts: list[LayoutContent] = [] @@ -275,7 +275,7 @@ class InputFlowSignMessageInfo(InputFlowBase): # address mismatch? self.debug.press_yes() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: yield # show address/message info self.debug.click(buttons.CORNER_BUTTON) @@ -305,7 +305,7 @@ class InputFlowShowAddressQRCode(InputFlowBase): self.debug.press_no() self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: # Find out the page-length of the address br = yield if br.pages is not None: @@ -326,7 +326,7 @@ class InputFlowShowAddressQRCode(InputFlowBase): self.debug.press_right() self.debug.press_middle() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: yield self.debug.click(buttons.CORNER_BUTTON) # synchronize; TODO get rid of this once we have single-global-layout @@ -371,7 +371,7 @@ class InputFlowShowAddressQRCodeCancel(InputFlowBase): self.debug.press_no() self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: yield # Go into details self.debug.press_right() @@ -386,7 +386,7 @@ class InputFlowShowAddressQRCodeCancel(InputFlowBase): self.debug.press_right() self.debug.press_right() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: yield self.debug.click(buttons.CORNER_BUTTON) # synchronize; TODO get rid of this once we have single-global-layout @@ -457,7 +457,7 @@ class InputFlowShowMultisigXPUBs(InputFlowBase): # show address self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: yield # multisig address warning self.debug.press_middle() @@ -496,7 +496,7 @@ class InputFlowShowMultisigXPUBs(InputFlowBase): # show address self.debug.press_middle() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: yield # multisig address warning self.debug.click(buttons.CORNER_BUTTON) self.debug.synchronize_at("VerticalMenu") @@ -580,7 +580,7 @@ class InputFlowShowXpubQRCode(InputFlowBase): self.debug.swipe_up() self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: if self.passphrase: yield self.debug.press_right() @@ -607,7 +607,7 @@ class InputFlowShowXpubQRCode(InputFlowBase): # Confirm self.debug.press_middle() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: if self.passphrase: yield self.debug.press_yes() @@ -687,7 +687,7 @@ class InputFlowPaymentRequestDetails(InputFlowBase): yield # confirm transaction self.debug.press_yes() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: yield # request to see details self.debug.read_layout() self.debug.press_info() @@ -733,7 +733,7 @@ class InputFlowSignTxHighFee(InputFlowBase): ] yield from self.go_through_all_screens(screens) - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: screens = [ B.ConfirmOutput, B.ConfirmOutput, @@ -742,7 +742,7 @@ class InputFlowSignTxHighFee(InputFlowBase): ] yield from self.go_through_all_screens(screens) - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: screens = [ B.ConfirmOutput, B.ConfirmOutput, @@ -861,13 +861,13 @@ class InputFlowSignTxInformation(InputFlowBase): self.assert_content(content, "confirm_total__sending_from_account") self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: content = yield from sign_tx_go_to_info_tr(self.client) print("content", content) self.assert_content(content, "confirm_total__title_sending_from") self.debug.press_yes() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: content = yield from sign_tx_go_to_info_t3t1(self.client) self.assert_content(content, "confirm_total__sending_from_account") self.debug.swipe_up() @@ -893,7 +893,7 @@ class InputFlowSignTxInformationMixed(InputFlowBase): self.assert_content(content, "confirm_total__sending_from_account") self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: # multiple accounts warning yield self.debug.press_yes() @@ -902,7 +902,7 @@ class InputFlowSignTxInformationMixed(InputFlowBase): self.assert_content(content, "confirm_total__title_sending_from") self.debug.press_yes() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: content = yield from sign_tx_go_to_info_t3t1(self.client, multi_account=True) self.assert_content(content, "confirm_total__sending_from_account") self.debug.swipe_up() @@ -917,11 +917,11 @@ class InputFlowSignTxInformationCancel(InputFlowBase): yield from sign_tx_go_to_info(self.client) self.debug.press_no() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: yield from sign_tx_go_to_info_tr(self.client) self.debug.press_left() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: yield from sign_tx_go_to_info_t3t1(self.client) self.debug.click(buttons.CORNER_BUTTON) self.debug.click(buttons.VERTICAL_MENU[2]) @@ -951,7 +951,7 @@ class InputFlowSignTxInformationReplacement(InputFlowBase): self.debug.click(buttons.CORNER_BUTTON) self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: yield # confirm txid self.debug.press_right() self.debug.press_right() @@ -965,7 +965,7 @@ class InputFlowSignTxInformationReplacement(InputFlowBase): self.debug.press_right() self.debug.press_right() - input_flow_quicksilver = input_flow_bolt + input_flow_delizia = input_flow_bolt def lock_time_input_flow_bolt( @@ -991,7 +991,7 @@ def lock_time_input_flow_bolt( debug.press_yes() -def lock_time_input_flow_samson( +def lock_time_input_flow_caesar( debug: DebugLink, layout_assert_func: Callable[[DebugLink, messages.ButtonRequest], None], ) -> BRGeneratorType: @@ -1010,7 +1010,7 @@ def lock_time_input_flow_samson( debug.press_yes() -def lock_time_input_flow_quicksilver( +def lock_time_input_flow_delizia( debug: DebugLink, layout_assert_func: Callable[[DebugLink, messages.ButtonRequest], None], double_confirm: bool = False, @@ -1049,11 +1049,11 @@ class InputFlowLockTimeBlockHeight(InputFlowBase): self.debug, self.assert_func, double_confirm=True ) - def input_flow_samson(self) -> BRGeneratorType: - yield from lock_time_input_flow_samson(self.debug, self.assert_func) + def input_flow_caesar(self) -> BRGeneratorType: + yield from lock_time_input_flow_caesar(self.debug, self.assert_func) - def input_flow_quicksilver(self) -> BRGeneratorType: - yield from lock_time_input_flow_quicksilver( + def input_flow_delizia(self) -> BRGeneratorType: + yield from lock_time_input_flow_delizia( self.debug, self.assert_func, double_confirm=True ) @@ -1071,11 +1071,11 @@ class InputFlowLockTimeDatetime(InputFlowBase): def input_flow_bolt(self) -> BRGeneratorType: yield from lock_time_input_flow_bolt(self.debug, self.assert_func) - def input_flow_samson(self) -> BRGeneratorType: - yield from lock_time_input_flow_samson(self.debug, self.assert_func) + def input_flow_caesar(self) -> BRGeneratorType: + yield from lock_time_input_flow_caesar(self.debug, self.assert_func) - def input_flow_quicksilver(self) -> BRGeneratorType: - yield from lock_time_input_flow_quicksilver(self.debug, self.assert_func) + def input_flow_delizia(self) -> BRGeneratorType: + yield from lock_time_input_flow_delizia(self.debug, self.assert_func) class InputFlowEIP712ShowMore(InputFlowBase): @@ -1087,9 +1087,9 @@ class InputFlowEIP712ShowMore(InputFlowBase): def _confirm_show_more(self) -> None: """Model-specific, either clicks a screen or presses a button.""" - if self.client.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if self.client.layout_type in (LayoutType.Bolt, LayoutType.Delizia): self.debug.click(self.SHOW_MORE) - elif self.client.layout_type is LayoutType.Samson: + elif self.client.layout_type is LayoutType.Caesar: self.debug.press_right() else: raise NotImplementedError @@ -1224,7 +1224,7 @@ def get_mnemonic( mnemonic = yield from read_and_confirm_mnemonic(debug) is_slip39 = len(mnemonic.split()) in (20, 33) - if debug.layout_type in (LayoutType.Bolt, LayoutType.Samson) or is_slip39: + if debug.layout_type in (LayoutType.Bolt, LayoutType.Caesar) or is_slip39: br = yield # confirm recovery share check assert br.code == B.Success debug.press_yes() @@ -1270,7 +1270,7 @@ class InputFlowBip39ResetBackup(InputFlowBase): # mnemonic phrases and rest self.mnemonic = yield from get_mnemonic(self.debug) - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: # 1. Confirm Reset # 2. Backup your seed # 3. Backup intro @@ -1280,7 +1280,7 @@ class InputFlowBip39ResetBackup(InputFlowBase): # mnemonic phrases and rest self.mnemonic = yield from get_mnemonic(self.debug) - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: # 1. Confirm Reset # 2. Wallet created # 3. Backup your seed @@ -1304,7 +1304,7 @@ class InputFlowBip39ResetPIN(InputFlowBase): yield from self.PIN.setup_new_pin("654") - if self.debug.layout_type is LayoutType.Quicksilver: + if self.debug.layout_type is LayoutType.Delizia: br = yield # Wallet created assert br.code == B.ResetDevice self.debug.press_yes() @@ -1339,7 +1339,7 @@ class InputFlowBip39ResetFailedCheck(InputFlowBase): self.mnemonic = None def input_flow_common(self) -> BRGeneratorType: - screens = 5 if self.debug.layout_type is LayoutType.Quicksilver else 4 + screens = 5 if self.debug.layout_type is LayoutType.Delizia else 4 # 1. Confirm Reset # 1a. (T3T1) Walet Creation done # 2. Confirm backup prompt @@ -1427,7 +1427,7 @@ class InputFlowSlip39BasicBackup(InputFlowBase): assert br.code == B.Success self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: if self.repeated: # intro confirmation screen yield @@ -1459,7 +1459,7 @@ class InputFlowSlip39BasicBackup(InputFlowBase): assert br.code == B.Success self.debug.press_yes() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: if self.repeated: # intro confirmation screen assert (yield).name == "confirm_repeated_backup" @@ -1471,13 +1471,13 @@ class InputFlowSlip39BasicBackup(InputFlowBase): self.debug.swipe_up() assert (yield).name == "slip39_shares" if self.click_info: - click_info_button_quicksilver(self.debug) + click_info_button_delizia(self.debug) self.debug.swipe_up() assert (yield).name == "slip39_checklist" self.debug.swipe_up() assert (yield).name == "slip39_threshold" if self.click_info: - click_info_button_quicksilver(self.debug) + click_info_button_delizia(self.debug) self.debug.swipe_up() assert (yield).name == "slip39_checklist" self.debug.swipe_up() @@ -1516,7 +1516,7 @@ class InputFlowSlip39BasicResetRecovery(InputFlowBase): assert br.code == B.Success self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: yield # Confirm Reset self.debug.press_yes() yield # Backup your seed @@ -1547,7 +1547,7 @@ class InputFlowSlip39BasicResetRecovery(InputFlowBase): assert br.code == B.Success self.debug.press_yes() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: # 1. Confirm Reset # 2. Wallet Created # 3. Backup your seed @@ -1597,7 +1597,7 @@ class InputFlowSlip39CustomBackup(InputFlowBase): assert br.code == B.Success self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: if self.repeated: yield self.debug.press_yes() @@ -1619,7 +1619,7 @@ class InputFlowSlip39CustomBackup(InputFlowBase): assert br.code == B.Success self.debug.press_yes() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: if self.repeated: yield self.debug.press_yes() @@ -1706,7 +1706,7 @@ class InputFlowSlip39AdvancedBackup(InputFlowBase): assert br.code == B.Success self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: yield # 1. Backup intro self.debug.press_yes() yield # 2. Checklist @@ -1738,31 +1738,31 @@ class InputFlowSlip39AdvancedBackup(InputFlowBase): assert br.code == B.Success self.debug.press_yes() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: assert (yield).name == "backup_intro" self.debug.swipe_up() assert (yield).name == "slip39_checklist" self.debug.swipe_up() assert (yield).name == "slip39_groups" if self.click_info: - click_info_button_quicksilver(self.debug) + click_info_button_delizia(self.debug) self.debug.swipe_up() assert (yield).name == "slip39_checklist" self.debug.swipe_up() assert (yield).name == "slip39_group_threshold" if self.click_info: - click_info_button_quicksilver(self.debug) + click_info_button_delizia(self.debug) self.debug.swipe_up() assert (yield).name == "slip39_checklist" self.debug.swipe_up() for _i in range(5): # for each of 5 groups assert (yield).name == "slip39_shares" if self.click_info: - click_info_button_quicksilver(self.debug) + click_info_button_delizia(self.debug) self.debug.swipe_up() assert (yield).name == "slip39_threshold" if self.click_info: - click_info_button_quicksilver(self.debug) + click_info_button_delizia(self.debug) self.debug.swipe_up() assert (yield).name == "backup_warning" self.debug.press_yes() @@ -1803,7 +1803,7 @@ class InputFlowSlip39AdvancedResetRecovery(InputFlowBase): assert br.code == B.Success self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: yield # Wallet backup self.debug.press_yes() yield # Wallet creation @@ -1839,7 +1839,7 @@ class InputFlowSlip39AdvancedResetRecovery(InputFlowBase): assert br.code == B.Success self.debug.press_yes() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: # 1. Confirm Reset # 2. Wallet Created # 3. Prompt Backup @@ -1948,7 +1948,7 @@ class InputFlowSlip39AdvancedRecoveryAbort(InputFlowBase): def input_flow_common(self) -> BRGeneratorType: yield from self.REC.confirm_recovery() - if self.client.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if self.client.layout_type in (LayoutType.Bolt, LayoutType.Delizia): yield from self.REC.input_number_of_words(20) yield from self.REC.abort_recovery(True) @@ -1961,12 +1961,12 @@ class InputFlowSlip39AdvancedRecoveryNoAbort(InputFlowBase): def input_flow_common(self) -> BRGeneratorType: yield from self.REC.confirm_recovery() - if self.client.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if self.client.layout_type in (LayoutType.Bolt, LayoutType.Delizia): yield from self.REC.input_number_of_words(self.word_count) yield from self.REC.abort_recovery(False) else: yield from self.REC.abort_recovery(False) - yield from self.REC.recovery_homescreen_samson() + yield from self.REC.recovery_homescreen_caesar() yield from self.REC.input_number_of_words(self.word_count) yield from self.REC.enter_any_share() yield from self.REC.input_all_slip39_shares(self.shares, has_groups=True) @@ -2070,7 +2070,7 @@ class InputFlowSlip39BasicRecoveryAbort(InputFlowBase): def input_flow_common(self) -> BRGeneratorType: yield from self.REC.confirm_recovery() - if self.client.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if self.client.layout_type in (LayoutType.Bolt, LayoutType.Delizia): yield from self.REC.input_number_of_words(20) yield from self.REC.abort_recovery(True) @@ -2083,10 +2083,10 @@ class InputFlowSlip39BasicRecoveryAbortBetweenShares(InputFlowBase): def input_flow_common(self) -> BRGeneratorType: yield from self.REC.confirm_recovery() - if self.client.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if self.client.layout_type in (LayoutType.Bolt, LayoutType.Delizia): yield from self.REC.input_number_of_words(20) else: - yield from self.REC.recovery_homescreen_samson() + yield from self.REC.recovery_homescreen_caesar() yield from self.REC.input_number_of_words(self.word_count) yield from self.REC.enter_any_share() @@ -2103,12 +2103,12 @@ class InputFlowSlip39BasicRecoveryNoAbort(InputFlowBase): def input_flow_common(self) -> BRGeneratorType: yield from self.REC.confirm_recovery() - if self.client.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + if self.client.layout_type in (LayoutType.Bolt, LayoutType.Delizia): yield from self.REC.input_number_of_words(self.word_count) yield from self.REC.abort_recovery(False) else: yield from self.REC.abort_recovery(False) - yield from self.REC.recovery_homescreen_samson() + yield from self.REC.recovery_homescreen_caesar() yield from self.REC.input_number_of_words(self.word_count) yield from self.REC.enter_any_share() @@ -2209,7 +2209,7 @@ class InputFlowResetSkipBackup(InputFlowBase): assert TR.backup__want_to_skip in self.text_content() self.debug.press_no() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: yield from self.BAK.confirm_new_wallet() yield # Skip Backup assert TR.backup__new_wallet_created in self.text_content() @@ -2219,7 +2219,7 @@ class InputFlowResetSkipBackup(InputFlowBase): assert TR.backup__want_to_skip in self.text_content() self.debug.press_no() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: yield from self.BAK.confirm_new_wallet() yield # Skip Backup assert TR.backup__new_wallet_created in self.text_content() @@ -2245,10 +2245,10 @@ class InputFlowConfirmAllWarnings(InputFlowBase): self.client.ui._default_input_flow(br) br = yield - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: return self.input_flow_bolt() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: br = yield while True: # wait for homescreen to go away @@ -2293,10 +2293,10 @@ class InputFlowFidoConfirm(InputFlowBase): yield self.debug.press_yes() - def input_flow_samson(self) -> BRGeneratorType: + def input_flow_caesar(self) -> BRGeneratorType: yield from self.input_flow_bolt() - def input_flow_quicksilver(self) -> BRGeneratorType: + def input_flow_delizia(self) -> BRGeneratorType: while True: yield self.debug.swipe_up() diff --git a/tests/input_flows_helpers.py b/tests/input_flows_helpers.py index d51d3a8315..90e03c16ae 100644 --- a/tests/input_flows_helpers.py +++ b/tests/input_flows_helpers.py @@ -26,7 +26,7 @@ class PinFlow: assert (yield).name == "pin_device" # Enter PIN assert "PinKeyboard" in self.debug.read_layout().all_components() self.debug.input(pin) - if self.client.layout_type is LayoutType.Samson: + if self.client.layout_type is LayoutType.Caesar: assert (yield).name == f"reenter_{what}" # Reenter PIN assert ( TR.translate(f"{what}__reenter_to_confirm") @@ -49,7 +49,7 @@ class BackupFlow: def confirm_new_wallet(self) -> BRGeneratorType: yield assert TR.reset__by_continuing in self.debug.read_layout().text_content() - if self.client.layout_type is LayoutType.Samson: + if self.client.layout_type is LayoutType.Caesar: self.debug.press_right() self.debug.press_yes() @@ -66,7 +66,7 @@ class RecoveryFlow: def confirm_recovery(self) -> BRGeneratorType: assert (yield).name == "recover_device" assert TR.reset__by_continuing in self._text_content() - if self.client.layout_type is LayoutType.Samson: + if self.client.layout_type is LayoutType.Caesar: self.debug.press_right() self.debug.press_yes() @@ -76,31 +76,31 @@ class RecoveryFlow: self.debug.press_yes() def setup_slip39_recovery(self, num_words: int) -> BRGeneratorType: - if self.client.layout_type is LayoutType.Samson: - yield from self.recovery_homescreen_samson() + if self.client.layout_type is LayoutType.Caesar: + yield from self.recovery_homescreen_caesar() yield from self.input_number_of_words(num_words) yield from self.enter_any_share() def setup_repeated_backup_recovery(self, num_words: int) -> BRGeneratorType: - if self.client.layout_type is LayoutType.Samson: - yield from self.recovery_homescreen_samson() + if self.client.layout_type is LayoutType.Caesar: + yield from self.recovery_homescreen_caesar() yield from self.input_number_of_words(num_words) yield from self.enter_your_backup() def setup_bip39_recovery(self, num_words: int) -> BRGeneratorType: - if self.client.layout_type is LayoutType.Samson: - yield from self.recovery_homescreen_samson() + if self.client.layout_type is LayoutType.Caesar: + yield from self.recovery_homescreen_caesar() yield from self.input_number_of_words(num_words) yield from self.enter_your_backup() - def recovery_homescreen_samson(self) -> BRGeneratorType: + def recovery_homescreen_caesar(self) -> BRGeneratorType: yield assert TR.recovery__num_of_words in self._text_content() self.debug.press_yes() def enter_your_backup(self) -> BRGeneratorType: assert (yield).name == "recovery" - if self.debug.layout_type is LayoutType.Quicksilver: + if self.debug.layout_type is LayoutType.Delizia: assert TR.recovery__enter_each_word in self._text_content() else: assert TR.recovery__enter_backup in self._text_content() @@ -108,7 +108,7 @@ class RecoveryFlow: TR.recovery__title_dry_run.lower() in self.debug.read_layout().title().lower() ) - if self.client.layout_type is LayoutType.Samson and not is_dry_run: + if self.client.layout_type is LayoutType.Caesar and not is_dry_run: # Normal recovery has extra info (not dry run) self.debug.press_right() self.debug.press_right() @@ -124,7 +124,7 @@ class RecoveryFlow: TR.recovery__title_dry_run.lower() in self.debug.read_layout().title().lower() ) - if self.client.layout_type is LayoutType.Samson and not is_dry_run: + if self.client.layout_type is LayoutType.Caesar and not is_dry_run: # Normal recovery has extra info (not dry run) self.debug.press_right() self.debug.press_right() @@ -132,7 +132,7 @@ class RecoveryFlow: def abort_recovery(self, confirm: bool) -> BRGeneratorType: yield - if self.client.layout_type is LayoutType.Samson: + if self.client.layout_type is LayoutType.Caesar: assert TR.recovery__num_of_words in self._text_content() self.debug.press_no() yield @@ -142,7 +142,7 @@ class RecoveryFlow: self.debug.press_yes() else: self.debug.press_no() - elif self.client.layout_type is LayoutType.Quicksilver: + elif self.client.layout_type is LayoutType.Delizia: assert TR.recovery__enter_each_word in self._text_content() self.debug.click(buttons.CORNER_BUTTON) self.debug.synchronize_at("VerticalMenu") @@ -162,7 +162,7 @@ class RecoveryFlow: def abort_recovery_between_shares(self) -> BRGeneratorType: yield - if self.client.layout_type is LayoutType.Samson: + if self.client.layout_type is LayoutType.Caesar: assert TR.regexp("recovery__x_of_y_entered_template").search( self._text_content() ) @@ -171,7 +171,7 @@ class RecoveryFlow: assert TR.recovery__wanna_cancel_recovery in self._text_content() self.debug.press_right() self.debug.press_yes() - elif self.client.layout_type is LayoutType.Quicksilver: + elif self.client.layout_type is LayoutType.Delizia: assert TR.regexp("recovery__x_of_y_entered_template").search( self._text_content() ) @@ -195,7 +195,7 @@ class RecoveryFlow: br = yield assert br.code == B.MnemonicWordCount assert br.name == "recovery_word_count" - if self.client.layout_type is LayoutType.Samson: + if self.client.layout_type is LayoutType.Caesar: assert TR.word_count__title in self.debug.read_layout().title() else: assert TR.recovery__num_of_words in self._text_content() @@ -249,7 +249,7 @@ class RecoveryFlow: assert br.code == B.Success text = get_text_possible_pagination(self.debug, br) # TODO: make sure the translations fit on one page - if self.client.layout_type not in (LayoutType.Bolt, LayoutType.Quicksilver): + if self.client.layout_type not in (LayoutType.Bolt, LayoutType.Delizia): assert TR.recovery__dry_run_bip39_valid_match in text self.debug.press_yes() @@ -258,7 +258,7 @@ class RecoveryFlow: assert br.code == B.Success text = get_text_possible_pagination(self.debug, br) # TODO: make sure the translations fit on one page - if self.client.layout_type not in (LayoutType.Bolt, LayoutType.Quicksilver): + if self.client.layout_type not in (LayoutType.Bolt, LayoutType.Delizia): assert TR.recovery__dry_run_slip39_valid_match in text self.debug.press_yes() @@ -267,7 +267,7 @@ class RecoveryFlow: assert br.code == B.Warning text = get_text_possible_pagination(self.debug, br) # TODO: make sure the translations fit on one page on TT - if self.client.layout_type not in (LayoutType.Bolt, LayoutType.Quicksilver): + if self.client.layout_type not in (LayoutType.Bolt, LayoutType.Delizia): assert TR.recovery__dry_run_slip39_valid_mismatch in text self.debug.press_yes() @@ -276,7 +276,7 @@ class RecoveryFlow: assert br.code == B.Warning text = get_text_possible_pagination(self.debug, br) # TODO: make sure the translations fit on one page - if self.client.layout_type not in (LayoutType.Bolt, LayoutType.Quicksilver): + if self.client.layout_type not in (LayoutType.Bolt, LayoutType.Delizia): assert TR.recovery__dry_run_bip39_valid_mismatch in text self.debug.press_yes() @@ -317,8 +317,8 @@ class RecoveryFlow: if click_info: if self.client.layout_type is LayoutType.Bolt: yield from self.click_info_bolt() - elif self.client.layout_type is LayoutType.Quicksilver: - yield from self.click_info_quicksilver() + elif self.client.layout_type is LayoutType.Delizia: + yield from self.click_info_delizia() else: raise ValueError("Unknown model!") yield from self.success_more_shares_needed() @@ -331,7 +331,7 @@ class RecoveryFlow: self.debug.swipe_up() self.debug.press_yes() - def click_info_quicksilver(self) -> BRGeneratorType: + def click_info_delizia(self) -> BRGeneratorType: # Moving through the menu into the show_shares screen self.debug.click(buttons.CORNER_BUTTON) self.debug.synchronize_at("VerticalMenu") @@ -377,13 +377,13 @@ class EthereumFlow: assert br.pages is not None assert br.pages > 2 assert self.debug.read_layout().title() == TR.ethereum__title_input_data - if self.client.layout_type is LayoutType.Samson: + if self.client.layout_type is LayoutType.Caesar: self.debug.press_right() self.debug.press_right() self.debug.press_left() self.debug.press_left() self.debug.press_left() - elif self.client.layout_type in (LayoutType.Bolt, LayoutType.Quicksilver): + elif self.client.layout_type in (LayoutType.Bolt, LayoutType.Delizia): self.debug.swipe_up() self.debug.swipe_up() self.debug.click(self.GO_BACK) @@ -416,7 +416,7 @@ class EthereumFlow: self.debug.press_yes() assert (yield).name == "confirm_ethereum_tx" - def _confirm_tx_samson( + def _confirm_tx_caesar( self, cancel: bool, info: bool, go_back_from_summary: bool ) -> BRGeneratorType: assert (yield).name == "confirm_ethereum_tx" @@ -445,7 +445,7 @@ class EthereumFlow: self.debug.press_middle() assert (yield).name == "confirm_ethereum_tx" - def _confirm_tx_quicksilver( + def _confirm_tx_delizia( self, cancel: bool, info: bool, go_back_from_summary: bool ) -> BRGeneratorType: assert (yield).name == "confirm_output" @@ -489,10 +489,10 @@ class EthereumFlow: ) -> BRGeneratorType: if self.client.layout_type is LayoutType.Bolt: yield from self._confirm_tx_bolt(cancel, info, go_back_from_summary) - elif self.client.layout_type is LayoutType.Samson: - yield from self._confirm_tx_samson(cancel, info, go_back_from_summary) - elif self.client.layout_type is LayoutType.Quicksilver: - yield from self._confirm_tx_quicksilver(cancel, info, go_back_from_summary) + elif self.client.layout_type is LayoutType.Caesar: + yield from self._confirm_tx_caesar(cancel, info, go_back_from_summary) + elif self.client.layout_type is LayoutType.Delizia: + yield from self._confirm_tx_delizia(cancel, info, go_back_from_summary) else: raise ValueError("Unknown model!") @@ -538,7 +538,7 @@ class EthereumFlow: self.debug.press_yes() - elif self.client.layout_type is LayoutType.Quicksilver: + elif self.client.layout_type is LayoutType.Delizia: # confirm intro if info: self.debug.click(buttons.CORNER_BUTTON) @@ -570,7 +570,7 @@ class EthereumFlow: self.debug.press_yes() - elif self.client.layout_type is LayoutType.Samson: + elif self.client.layout_type is LayoutType.Caesar: # confirm intro if info: self.debug.press_right() diff --git a/tests/persistence_tests/test_shamir_persistence.py b/tests/persistence_tests/test_shamir_persistence.py index 680abd9eae..5907df1796 100644 --- a/tests/persistence_tests/test_shamir_persistence.py +++ b/tests/persistence_tests/test_shamir_persistence.py @@ -40,7 +40,7 @@ def test_abort(core_emulator: Emulator): debug = device_handler.debuglink() features = device_handler.features() - if debug.layout_type is LayoutType.Quicksilver: + if debug.layout_type is LayoutType.Delizia: pytest.skip("abort not supported on T3T1") assert features.recovery_status == RecoveryStatus.Nothing @@ -115,8 +115,8 @@ def test_recovery_on_old_wallet(core_emulator: Emulator): def assert_mnemonic_keyboard(debug: DebugLink) -> None: layout = debug.read_layout() - if debug.layout_type == LayoutType.Samson: - # UI Samson (TS3) has the keyboard wrapped in a Frame + if debug.layout_type == LayoutType.Caesar: + # UI Caesar (TS3) has the keyboard wrapped in a Frame assert "MnemonicKeyboard" in layout.all_components() else: assert layout.main_component() == "MnemonicKeyboard" @@ -187,7 +187,7 @@ def test_recovery_multiple_resets(core_emulator: Emulator): shares = MNEMONIC_SLIP39_ADVANCED_20 layout = debug.read_layout() expected_text = "Enter any share" - if debug.layout_type == LayoutType.Quicksilver: + if debug.layout_type == LayoutType.Delizia: expected_text = "Enter each word" remaining = len(shares) for share in shares: diff --git a/tests/ui_tests/fixtures.json b/tests/ui_tests/fixtures.json index 6c3d13c305..03c3f66e46 100644 --- a/tests/ui_tests/fixtures.json +++ b/tests/ui_tests/fixtures.json @@ -9793,15 +9793,15 @@ "T3B1_cs_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "ee2f514a9dd3c942c0d11bcae21c8b568e312ee29c9e1b2fe13ac6fc34b23df9", "T3B1_cs_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "c55aa191faca2700e56f2cf706ec28ebb9f1995b0bfd87468bc45c164dd70a5d", "T3B1_cs_test_lock.py::test_hold_to_lock": "5cb751b7dc756420a1c1a56cde8fd968d44099ffa969be577c1cdf8ae4eeea61", -"T3B1_cs_test_passphrase_samson.py::test_cancel": "7e39fdf90bb50842ed5914813662f1657dc1e04e1b63e6faa81642a52ec3bc9b", -"T3B1_cs_test_passphrase_samson.py::test_passphrase_delete": "6e46b2b6c584b557e977add6408b393d96ab2c8396b3fd60e52f67f1a2b34d3b", -"T3B1_cs_test_passphrase_samson.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-0f00decd": "4a92c37a67002439b02ac5089e65f7a1a95b58406c0252e950698426ca0b2515", -"T3B1_cs_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-3a5ac438": "9fc25d8b356abe5d514054fd47e077686caf7da61d8ce73b7833be70b30a76ba", -"T3B1_cs_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-ae44524f": "768a1829926fd42ebbe127f4d2698148a6560809630ccf81ddea79c7dcda897e", -"T3B1_cs_test_passphrase_samson.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "98bb0cf60221729477aa78460aaa4a2aea419786b053ee705b80b155b9d67909", -"T3B1_cs_test_passphrase_samson.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "5b5f6fd306415af0519e1d91527dad3413a30a95c4ee0d79958a6e89e9fd59f5", -"T3B1_cs_test_passphrase_samson.py::test_passphrase_input_over_50_chars": "44946ab1744f69eb852a8920c2d1561ef935cd28ad8749f85db227192fac53cb", -"T3B1_cs_test_passphrase_samson.py::test_passphrase_loop_all_characters": "a87ca9a5269f1b13fd8fd866627d62bdac856bc14e4c81030720a477856be6be", +"T3B1_cs_test_passphrase_caesar.py::test_cancel": "7e39fdf90bb50842ed5914813662f1657dc1e04e1b63e6faa81642a52ec3bc9b", +"T3B1_cs_test_passphrase_caesar.py::test_passphrase_delete": "6e46b2b6c584b557e977add6408b393d96ab2c8396b3fd60e52f67f1a2b34d3b", +"T3B1_cs_test_passphrase_caesar.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-c05a9fd8": "4a92c37a67002439b02ac5089e65f7a1a95b58406c0252e950698426ca0b2515", +"T3B1_cs_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-4cc4e6ba": "768a1829926fd42ebbe127f4d2698148a6560809630ccf81ddea79c7dcda897e", +"T3B1_cs_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-9db06cf4": "9fc25d8b356abe5d514054fd47e077686caf7da61d8ce73b7833be70b30a76ba", +"T3B1_cs_test_passphrase_caesar.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "98bb0cf60221729477aa78460aaa4a2aea419786b053ee705b80b155b9d67909", +"T3B1_cs_test_passphrase_caesar.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "5b5f6fd306415af0519e1d91527dad3413a30a95c4ee0d79958a6e89e9fd59f5", +"T3B1_cs_test_passphrase_caesar.py::test_passphrase_input_over_50_chars": "44946ab1744f69eb852a8920c2d1561ef935cd28ad8749f85db227192fac53cb", +"T3B1_cs_test_passphrase_caesar.py::test_passphrase_loop_all_characters": "a87ca9a5269f1b13fd8fd866627d62bdac856bc14e4c81030720a477856be6be", "T3B1_cs_test_pin.py::test_last_digit_timeout": "c9ba684f65d951c5681e122555f5dc8841dd94fa0b310cd5c296cf57155b00c9", "T3B1_cs_test_pin.py::test_pin_change": "515105ac55c9bc4ac33cdc2b20963666f07a124d939bff1520cde816401409b9", "T3B1_cs_test_pin.py::test_pin_delete_hold": "8bc32195583bdf512584fdd5412dfeaa636ee768fd0c99127027f16eb39a72b8", @@ -9825,9 +9825,9 @@ "T3B1_cs_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "6899a0c4b3bd70d6aff08133a17f2ef1b430102c68761e562d8e56c48117a5cf", "T3B1_cs_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "a90c92e3640e39efa78a20105ea54fc20dfaebac029c328af1d5420777af98c7", "T3B1_cs_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "13f8642847cd46aa0cd036f39b7b8c458ae2d3d37ed44b5b1fd9cf4f6c1d6aca", -"T3B1_cs_test_tutorial_samson.py::test_tutorial_again_and_skip": "7cb28c2d74f7251380ee2fe895888afffcfe5659f73c8ee32dbeda2d120be15f", -"T3B1_cs_test_tutorial_samson.py::test_tutorial_finish": "6e9e9b9234dc7c9457aa2b1b78d8638661e655eef97bf0b13e360ffc78f2a5a3", -"T3B1_cs_test_tutorial_samson.py::test_tutorial_skip": "ac88c5abeccf12c62c1c9d210ef41948a01fe82b026e54565cd8464b27a561ed", +"T3B1_cs_test_tutorial_caesar.py::test_tutorial_again_and_skip": "7cb28c2d74f7251380ee2fe895888afffcfe5659f73c8ee32dbeda2d120be15f", +"T3B1_cs_test_tutorial_caesar.py::test_tutorial_finish": "6e9e9b9234dc7c9457aa2b1b78d8638661e655eef97bf0b13e360ffc78f2a5a3", +"T3B1_cs_test_tutorial_caesar.py::test_tutorial_skip": "ac88c5abeccf12c62c1c9d210ef41948a01fe82b026e54565cd8464b27a561ed", "T3B1_de_test_autolock.py::test_autolock_does_not_interrupt_preauthorized": "3ca62d8d2d9a8841fe8059c7b38793f5c8ea8748e4de299561aeaefc24e5fcda", "T3B1_de_test_autolock.py::test_autolock_does_not_interrupt_signing": "e888f60aded4d9efb0206426cf4a724801bc926ffb6dbe6d6c2dd42c3163b5f1", "T3B1_de_test_autolock.py::test_autolock_interrupts_passphrase": "18145be2ef3f8d07fe66da8a368271b2920755632ee392aa417ece6fee8b94f6", @@ -9840,15 +9840,15 @@ "T3B1_de_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "b9ef96c059b8073465d4d81da43bccd4ed4653e11cc9f2fef2a9b00abaa27021", "T3B1_de_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "304ddcca0a04ed0b855f04441f722d72ba3bc30b17ed155c12adde6d8195dd3f", "T3B1_de_test_lock.py::test_hold_to_lock": "910cd73285179739e4a6cb1b2a4bb4ae08731c4219aa39dd629db02dc73e9f7a", -"T3B1_de_test_passphrase_samson.py::test_cancel": "d8b97968a025c6132ec7822059468f6824b6ef5127b12b3bddd37f676778cb3f", -"T3B1_de_test_passphrase_samson.py::test_passphrase_delete": "1ff4ebeb72452d3a2d46be3ec0f0a736f346a87d4fdee952b4c01407a8b37b0c", -"T3B1_de_test_passphrase_samson.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-0f00decd": "1f0b84e42d51b4129458e8268e3ee8f88ce72592dfcca4386f51b9fe838458b8", -"T3B1_de_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-3a5ac438": "7553b1e219ebe92b90f04b27f56189e4b3ed7a92757fd8ce8a414bd37b3af4bc", -"T3B1_de_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-ae44524f": "a1953f139706c5c5dcc264f718894997a6ed8889fe8ef778c93bafd9e34be58d", -"T3B1_de_test_passphrase_samson.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "6901362190711b3d6053813e0485f2003d2e5e2025e4db14d84362a74f5469f5", -"T3B1_de_test_passphrase_samson.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "ec84d7d96c499d230df1d8de07787598650e073cbc1e49a64e64ca6f4070db44", -"T3B1_de_test_passphrase_samson.py::test_passphrase_input_over_50_chars": "3bf9d106b23c698ed20df5d41cd0ba54e8234e1b71ee1812f5e2634af65917b6", -"T3B1_de_test_passphrase_samson.py::test_passphrase_loop_all_characters": "8ef218c9cec583d186c3da06afae380ef54c8ac54a27ab5c89a485c39313f84d", +"T3B1_de_test_passphrase_caesar.py::test_cancel": "d8b97968a025c6132ec7822059468f6824b6ef5127b12b3bddd37f676778cb3f", +"T3B1_de_test_passphrase_caesar.py::test_passphrase_delete": "1ff4ebeb72452d3a2d46be3ec0f0a736f346a87d4fdee952b4c01407a8b37b0c", +"T3B1_de_test_passphrase_caesar.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-c05a9fd8": "1f0b84e42d51b4129458e8268e3ee8f88ce72592dfcca4386f51b9fe838458b8", +"T3B1_de_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-4cc4e6ba": "a1953f139706c5c5dcc264f718894997a6ed8889fe8ef778c93bafd9e34be58d", +"T3B1_de_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-9db06cf4": "7553b1e219ebe92b90f04b27f56189e4b3ed7a92757fd8ce8a414bd37b3af4bc", +"T3B1_de_test_passphrase_caesar.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "6901362190711b3d6053813e0485f2003d2e5e2025e4db14d84362a74f5469f5", +"T3B1_de_test_passphrase_caesar.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "ec84d7d96c499d230df1d8de07787598650e073cbc1e49a64e64ca6f4070db44", +"T3B1_de_test_passphrase_caesar.py::test_passphrase_input_over_50_chars": "3bf9d106b23c698ed20df5d41cd0ba54e8234e1b71ee1812f5e2634af65917b6", +"T3B1_de_test_passphrase_caesar.py::test_passphrase_loop_all_characters": "8ef218c9cec583d186c3da06afae380ef54c8ac54a27ab5c89a485c39313f84d", "T3B1_de_test_pin.py::test_last_digit_timeout": "fe51d960fb0751a2abbdf4af0b84fdaafd70331f6e2eae31bcb8ec55784806bd", "T3B1_de_test_pin.py::test_pin_change": "6a4881cffb5fb59fe8387776494a8a78341a8b9015a69d4867917165a35b949d", "T3B1_de_test_pin.py::test_pin_delete_hold": "f3fe6bc9d8ec04d62f8683136e9c81369f89780ce92cb961e8b55198120305e5", @@ -9872,9 +9872,9 @@ "T3B1_de_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "e28a83d757e949ad54642e5fd659d500dcc725a4f568c10ff5d02742efe415d7", "T3B1_de_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "7b6907fbc07d8bbc28d2070a08ea7687afaf07069daca7fded48dd08a9e1cfd8", "T3B1_de_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "68ba62ef98e40c21b409c466f8c3be36c55f98c5040687e14db16f2331fdc96d", -"T3B1_de_test_tutorial_samson.py::test_tutorial_again_and_skip": "a58a9866a2f3f3eab4edef5ac0da2e2d2a920c912acd33d71bbd8e20dcbaffb2", -"T3B1_de_test_tutorial_samson.py::test_tutorial_finish": "569bc69f6ea3c87998ba7fbc5964e073521a4b170065f4119dee296b0dc04841", -"T3B1_de_test_tutorial_samson.py::test_tutorial_skip": "83a2f337b476cf8e23a9ebe910aa761684c3ae886abf328dc4f13d022abe13a5", +"T3B1_de_test_tutorial_caesar.py::test_tutorial_again_and_skip": "a58a9866a2f3f3eab4edef5ac0da2e2d2a920c912acd33d71bbd8e20dcbaffb2", +"T3B1_de_test_tutorial_caesar.py::test_tutorial_finish": "569bc69f6ea3c87998ba7fbc5964e073521a4b170065f4119dee296b0dc04841", +"T3B1_de_test_tutorial_caesar.py::test_tutorial_skip": "83a2f337b476cf8e23a9ebe910aa761684c3ae886abf328dc4f13d022abe13a5", "T3B1_en-test_repeated_backup.py::test_repeated_backup_cancel": "902b8f47380e0591bf3d5e410a9db86fe1a3b8221c968b89c97960fdd91e5100", "T3B1_en-test_repeated_backup.py::test_repeated_backup_send_disallowed_message": "660c0dd0c290f8320d0194c6df2c44c9741a7f05414c0afddad0b23b95c0906d", "T3B1_en_test_autolock.py::test_autolock_does_not_interrupt_preauthorized": "02aed9b4268c301a30480d768712a920927cfa55fe0a7290ee1a049c1ca486d7", @@ -9889,15 +9889,15 @@ "T3B1_en_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "9976c7e6027e82886c0884c60c0906182ccb1021e1d255a355bdb8a1b971f2ab", "T3B1_en_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "912583edaeab2a152da2405e16836e8d2bf372a55b098a2043afd06aad9b9c4e", "T3B1_en_test_lock.py::test_hold_to_lock": "52994898a56cab23f692249638a6d636b7cb0e0789eb82097b17825093005c12", -"T3B1_en_test_passphrase_samson.py::test_cancel": "7128a2c87d32a2ffca15a9644a744bcdb99b3675c7fd67be7954937195ac34ef", -"T3B1_en_test_passphrase_samson.py::test_passphrase_delete": "decf0c6ec3c9e6f1ce9befd185d22df686061052cf3378352393e44f3b9a00cf", -"T3B1_en_test_passphrase_samson.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-0f00decd": "57bb6411dc89a45364631fae4a6f79271765c472a23e7526c4d7924c26b6fa55", -"T3B1_en_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-3a5ac438": "a9a116710ddfb8fe04e8b6987c45c7d9eb1393a52648d6bd05b8544b871b8141", -"T3B1_en_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-ae44524f": "2dd9d7661426143cfb04d1d23e82139821583a6395b5825057f222e0bdacd2f9", -"T3B1_en_test_passphrase_samson.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "4effafa0a7448eaf884e067d45482e69692af7b983ac2e8381e8ee686c9690e9", -"T3B1_en_test_passphrase_samson.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "d75015dc18e0f927a3105652de3af2de8355ee9991ef090a4d398d8567ba0bbf", -"T3B1_en_test_passphrase_samson.py::test_passphrase_input_over_50_chars": "10a8d6ac646a592a1b1f1c61ec7dc3817f1483013ed9da6e91d8d73390ca1734", -"T3B1_en_test_passphrase_samson.py::test_passphrase_loop_all_characters": "7347d493b6fe351d6b594d23f62524008e9ca9038ca987f3bf85b4a888cb01b1", +"T3B1_en_test_passphrase_caesar.py::test_cancel": "7128a2c87d32a2ffca15a9644a744bcdb99b3675c7fd67be7954937195ac34ef", +"T3B1_en_test_passphrase_caesar.py::test_passphrase_delete": "decf0c6ec3c9e6f1ce9befd185d22df686061052cf3378352393e44f3b9a00cf", +"T3B1_en_test_passphrase_caesar.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-c05a9fd8": "57bb6411dc89a45364631fae4a6f79271765c472a23e7526c4d7924c26b6fa55", +"T3B1_en_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-4cc4e6ba": "2dd9d7661426143cfb04d1d23e82139821583a6395b5825057f222e0bdacd2f9", +"T3B1_en_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-9db06cf4": "a9a116710ddfb8fe04e8b6987c45c7d9eb1393a52648d6bd05b8544b871b8141", +"T3B1_en_test_passphrase_caesar.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "4effafa0a7448eaf884e067d45482e69692af7b983ac2e8381e8ee686c9690e9", +"T3B1_en_test_passphrase_caesar.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "d75015dc18e0f927a3105652de3af2de8355ee9991ef090a4d398d8567ba0bbf", +"T3B1_en_test_passphrase_caesar.py::test_passphrase_input_over_50_chars": "10a8d6ac646a592a1b1f1c61ec7dc3817f1483013ed9da6e91d8d73390ca1734", +"T3B1_en_test_passphrase_caesar.py::test_passphrase_loop_all_characters": "7347d493b6fe351d6b594d23f62524008e9ca9038ca987f3bf85b4a888cb01b1", "T3B1_en_test_pin.py::test_last_digit_timeout": "789da2106bfeb8d248c9adfb800e752e55bc80ad728a58dc4871e1c65313fe34", "T3B1_en_test_pin.py::test_pin_change": "dea66ff3f0235ac210e1bd7f3b653033e3ed2d6ee1e14fa867e072a2d081f375", "T3B1_en_test_pin.py::test_pin_delete_hold": "a2c68a3db8d9fb3b2348561ca1d3728ed4464687e29b34c0d27dde90ef87da8e", @@ -9921,9 +9921,9 @@ "T3B1_en_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "834bb36b9049028de53fc20396223833386b99402acd1426f6dc90944cf91500", "T3B1_en_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "391def198b457c41d00f32342e5d5b0e0eb9d27c3dffe36f33ab4ece087d8f43", "T3B1_en_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "80cadc3ccbf5a04448a6f3d04a43275e636c248ffb602f5191348603bd0d6f88", -"T3B1_en_test_tutorial_samson.py::test_tutorial_again_and_skip": "a566777f760217f8e0b6ba48bed482d50c09e5522eee4fa68610b7a0c1081e0f", -"T3B1_en_test_tutorial_samson.py::test_tutorial_finish": "918297a3e8f6abee67ca06a15640c29e84a408e81202e27904f509435ce990e2", -"T3B1_en_test_tutorial_samson.py::test_tutorial_skip": "bf6d7fe7eb2409ebe6201d9bc021d70e68600680ff76265852f7965efe074c52", +"T3B1_en_test_tutorial_caesar.py::test_tutorial_again_and_skip": "a566777f760217f8e0b6ba48bed482d50c09e5522eee4fa68610b7a0c1081e0f", +"T3B1_en_test_tutorial_caesar.py::test_tutorial_finish": "918297a3e8f6abee67ca06a15640c29e84a408e81202e27904f509435ce990e2", +"T3B1_en_test_tutorial_caesar.py::test_tutorial_skip": "bf6d7fe7eb2409ebe6201d9bc021d70e68600680ff76265852f7965efe074c52", "T3B1_es_test_autolock.py::test_autolock_does_not_interrupt_preauthorized": "437fb35c8f45bc79090cd87ebe8450a81e367374b71221a0db13462937f441cf", "T3B1_es_test_autolock.py::test_autolock_does_not_interrupt_signing": "f1810e2d8a97f7e99af120817b0c7a192e06df2a632b4fa6666ac07809625299", "T3B1_es_test_autolock.py::test_autolock_interrupts_passphrase": "2afd75d27d8996bfcb11109023a8920031696fc43ab39a09883db3b1b94c7f43", @@ -9936,15 +9936,15 @@ "T3B1_es_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "c692d9087ad69530edddb7792d3c236a80a130da82389a7f72bc4be5c0a74876", "T3B1_es_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "1606ee837620cb32441cb1c47be3b44a1b2b4d0a536b9a0493e898cc4e84da36", "T3B1_es_test_lock.py::test_hold_to_lock": "0d5003d8e1e90ee74813cb9d122e615b45f5c3696b86bd3143143025a4a40424", -"T3B1_es_test_passphrase_samson.py::test_cancel": "8a9684c409c18e13a6f4d815ff9077dca064f0fbe67ead6631a1639df9b030d7", -"T3B1_es_test_passphrase_samson.py::test_passphrase_delete": "5e11ec4cd467931d0c76a49e8dec35243440c57892a889c2ca14fc8c2d900032", -"T3B1_es_test_passphrase_samson.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-0f00decd": "3b8e2936432e3b4cfc0b7ec9e48e8c51438178d0b4ffa419feff6b616cc9a9df", -"T3B1_es_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-3a5ac438": "4be049c60ff7ecb71274c8a1d7a7c978dba782e9576a9a364a9b9b6b44fd6a13", -"T3B1_es_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-ae44524f": "4b42ba335e2a750923175e63383eb7a0dbc3a9bbbcbb6d8c101a1dcffc172867", -"T3B1_es_test_passphrase_samson.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "5c9abd5b6277dce42915c9e3af264c1bfc619eb140f041f464c95f21d84f7b22", -"T3B1_es_test_passphrase_samson.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "c28d95473857a463b8f2a1ed3faafc221f92d6e14db1d5e464770cfbf21f18c9", -"T3B1_es_test_passphrase_samson.py::test_passphrase_input_over_50_chars": "f3b79f8d105938d31ac4dcd9be1ce60ab2866abaab31fd9f6b32988734c8b204", -"T3B1_es_test_passphrase_samson.py::test_passphrase_loop_all_characters": "041c066a460d812a04d5ad2553905e9f42b2a135b78d067178317741ead06ac8", +"T3B1_es_test_passphrase_caesar.py::test_cancel": "8a9684c409c18e13a6f4d815ff9077dca064f0fbe67ead6631a1639df9b030d7", +"T3B1_es_test_passphrase_caesar.py::test_passphrase_delete": "5e11ec4cd467931d0c76a49e8dec35243440c57892a889c2ca14fc8c2d900032", +"T3B1_es_test_passphrase_caesar.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-c05a9fd8": "3b8e2936432e3b4cfc0b7ec9e48e8c51438178d0b4ffa419feff6b616cc9a9df", +"T3B1_es_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-4cc4e6ba": "4b42ba335e2a750923175e63383eb7a0dbc3a9bbbcbb6d8c101a1dcffc172867", +"T3B1_es_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-9db06cf4": "4be049c60ff7ecb71274c8a1d7a7c978dba782e9576a9a364a9b9b6b44fd6a13", +"T3B1_es_test_passphrase_caesar.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "5c9abd5b6277dce42915c9e3af264c1bfc619eb140f041f464c95f21d84f7b22", +"T3B1_es_test_passphrase_caesar.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "c28d95473857a463b8f2a1ed3faafc221f92d6e14db1d5e464770cfbf21f18c9", +"T3B1_es_test_passphrase_caesar.py::test_passphrase_input_over_50_chars": "f3b79f8d105938d31ac4dcd9be1ce60ab2866abaab31fd9f6b32988734c8b204", +"T3B1_es_test_passphrase_caesar.py::test_passphrase_loop_all_characters": "041c066a460d812a04d5ad2553905e9f42b2a135b78d067178317741ead06ac8", "T3B1_es_test_pin.py::test_last_digit_timeout": "41eed14ef92afc752540f440b77925199433bcccd5361ff9e7b7432b80646c6d", "T3B1_es_test_pin.py::test_pin_change": "6491e91c129b35f7c60fab302aa9a67b97483fd83d613d758b1ba8c703625f32", "T3B1_es_test_pin.py::test_pin_delete_hold": "2ab174c447e8db869df2e20912b31823781d8ed194945560f7b2905b9c679407", @@ -9968,9 +9968,9 @@ "T3B1_es_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "e742ba1f5eaa2e9a322367ba87dcae622ab4b46b11e9ccad2e941faa710eda2a", "T3B1_es_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "a80c0c9e6bf660bb9a44c9c37cdc18276ca3551708198ca30948fcd7773cf62c", "T3B1_es_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "f14e3afd2260f1f4e2670214f2790f2bebad42a16d7efe4bd8cb669134730f31", -"T3B1_es_test_tutorial_samson.py::test_tutorial_again_and_skip": "af4ab264c8cb500275e108aeecdc8c0b3a13d1af7aaed898ffc3e2abab5cc7e4", -"T3B1_es_test_tutorial_samson.py::test_tutorial_finish": "92e6642b69695580acea17ee2823db2c748bfd044db15bd02a66d3ede48edec3", -"T3B1_es_test_tutorial_samson.py::test_tutorial_skip": "80df6e67b08426a81c40ac3b4e3023d23066466d1acf162076e22e8d8e3aaab9", +"T3B1_es_test_tutorial_caesar.py::test_tutorial_again_and_skip": "af4ab264c8cb500275e108aeecdc8c0b3a13d1af7aaed898ffc3e2abab5cc7e4", +"T3B1_es_test_tutorial_caesar.py::test_tutorial_finish": "92e6642b69695580acea17ee2823db2c748bfd044db15bd02a66d3ede48edec3", +"T3B1_es_test_tutorial_caesar.py::test_tutorial_skip": "80df6e67b08426a81c40ac3b4e3023d23066466d1acf162076e22e8d8e3aaab9", "T3B1_fr_test_autolock.py::test_autolock_does_not_interrupt_preauthorized": "2c443ce1fa3eb94fe67f0dbd60e96592339ca9ac577b0957dd9b682c2bb36b00", "T3B1_fr_test_autolock.py::test_autolock_does_not_interrupt_signing": "0dc45eb75fdace12a9e9ce0a96edc4704bea32536eb4245c3a0dc01215dcec5e", "T3B1_fr_test_autolock.py::test_autolock_interrupts_passphrase": "bf3f38dcf4b05145115fda06e8034ac9981d1c2cee0e5b46da616ffb3a3ac691", @@ -9983,15 +9983,15 @@ "T3B1_fr_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "976d9bc17095c021f98c6887876ce51b488e66f5ecac6eb50d43d18f2d1ab20a", "T3B1_fr_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "6f3fc913cd57ccd5c82e0c7bd4c2522667e881c9e44879a6c5968c4361efc601", "T3B1_fr_test_lock.py::test_hold_to_lock": "5d9ffde52ab2ddafa89d2cb9b1af731eae2c1f857270b03f2dd9bbffa0388ae8", -"T3B1_fr_test_passphrase_samson.py::test_cancel": "908362265114ee77f06f1e7955545bafdd1bfdcbb8a6977e59a37d756e2a4531", -"T3B1_fr_test_passphrase_samson.py::test_passphrase_delete": "2bd74430003b197efcb41c0078ff70290f1dcf26d6b7e1a5791da60fe2c68def", -"T3B1_fr_test_passphrase_samson.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-0f00decd": "5be12d5c400bff47b9b5dfb2646cf29e2c04910c5b9164d23fe311f3b631e02c", -"T3B1_fr_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-3a5ac438": "b0ff35be406827b05b6f179b85ec2dd24a72a80e0cde855a4d2fe8dd30f4ba5d", -"T3B1_fr_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-ae44524f": "a3c942450f5e76a2893896c18ad0cf9bf2c12330a1d1f5e735646322a05881cb", -"T3B1_fr_test_passphrase_samson.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "f38728a4b37b31638cd9b586133186e1046c7124cc73138054451fd53b7888fa", -"T3B1_fr_test_passphrase_samson.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "5212daf9d00007b715015c948e0d570318efa12b4903b01189e65917984e8564", -"T3B1_fr_test_passphrase_samson.py::test_passphrase_input_over_50_chars": "f5773a3c2a785c5ceb421b7a5476d4c3a0c67b2856548712dcfb3c43841ae0e1", -"T3B1_fr_test_passphrase_samson.py::test_passphrase_loop_all_characters": "4709a5428b3e15b92898f9d0b013f3a023cf8cd46c26c16caa3f2f2178f14074", +"T3B1_fr_test_passphrase_caesar.py::test_cancel": "908362265114ee77f06f1e7955545bafdd1bfdcbb8a6977e59a37d756e2a4531", +"T3B1_fr_test_passphrase_caesar.py::test_passphrase_delete": "2bd74430003b197efcb41c0078ff70290f1dcf26d6b7e1a5791da60fe2c68def", +"T3B1_fr_test_passphrase_caesar.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-c05a9fd8": "5be12d5c400bff47b9b5dfb2646cf29e2c04910c5b9164d23fe311f3b631e02c", +"T3B1_fr_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-4cc4e6ba": "a3c942450f5e76a2893896c18ad0cf9bf2c12330a1d1f5e735646322a05881cb", +"T3B1_fr_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-9db06cf4": "b0ff35be406827b05b6f179b85ec2dd24a72a80e0cde855a4d2fe8dd30f4ba5d", +"T3B1_fr_test_passphrase_caesar.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "f38728a4b37b31638cd9b586133186e1046c7124cc73138054451fd53b7888fa", +"T3B1_fr_test_passphrase_caesar.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "5212daf9d00007b715015c948e0d570318efa12b4903b01189e65917984e8564", +"T3B1_fr_test_passphrase_caesar.py::test_passphrase_input_over_50_chars": "f5773a3c2a785c5ceb421b7a5476d4c3a0c67b2856548712dcfb3c43841ae0e1", +"T3B1_fr_test_passphrase_caesar.py::test_passphrase_loop_all_characters": "4709a5428b3e15b92898f9d0b013f3a023cf8cd46c26c16caa3f2f2178f14074", "T3B1_fr_test_pin.py::test_last_digit_timeout": "1d0c58d4c6501e0f2c0a7bc9aadaab6589bfe589dd657ecaa4341c35f287ca77", "T3B1_fr_test_pin.py::test_pin_change": "cbdcfe62b4da47424446e0aba6bad30a361fce80b066883ec459b35e67a9b71d", "T3B1_fr_test_pin.py::test_pin_delete_hold": "49fd763ed6a8297ae57e4278cf1dc4ff05e1cd6fbd15ee6d17de7927ed25f17a", @@ -10015,9 +10015,9 @@ "T3B1_fr_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "ff07267e2ad313da865ce9f7fe79967ae695aa86e26cf23e4e40e7c715067de7", "T3B1_fr_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "85b6a9ecacd10c539de2cefc9c47ea43264efd6b8ad47435b70bcc830cbb9ea5", "T3B1_fr_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "8d23cdcf4ef4d4ccbe3f55b0d3dbadd7a840affcb9376d58738c02f3870c04f0", -"T3B1_fr_test_tutorial_samson.py::test_tutorial_again_and_skip": "22e6f355a975bfbbefb1fef199f0bb8ef06298c11ff6a3d90a538e1156ea1f5f", -"T3B1_fr_test_tutorial_samson.py::test_tutorial_finish": "b1b7ff2fa57aebfd332a6c223109069f35e6b00ed1ff1c1d87f38de0068a57cb", -"T3B1_fr_test_tutorial_samson.py::test_tutorial_skip": "870a14914949e56527038d4e2a2751f50377b731601f21cceec33a6b808ed8e4", +"T3B1_fr_test_tutorial_caesar.py::test_tutorial_again_and_skip": "22e6f355a975bfbbefb1fef199f0bb8ef06298c11ff6a3d90a538e1156ea1f5f", +"T3B1_fr_test_tutorial_caesar.py::test_tutorial_finish": "b1b7ff2fa57aebfd332a6c223109069f35e6b00ed1ff1c1d87f38de0068a57cb", +"T3B1_fr_test_tutorial_caesar.py::test_tutorial_skip": "870a14914949e56527038d4e2a2751f50377b731601f21cceec33a6b808ed8e4", "T3B1_pt_test_autolock.py::test_autolock_does_not_interrupt_preauthorized": "ecfa049e216150365dfc618be5888a327f878fb73bc332638f8d5357e6186249", "T3B1_pt_test_autolock.py::test_autolock_does_not_interrupt_signing": "900a8f5d48ff2a7a1ad9629cbfc27358dbbc3de7b76751098a10da9218e39a83", "T3B1_pt_test_autolock.py::test_autolock_interrupts_passphrase": "697482703e6cd5e3943e75c9ec3e7e19826ae691552ee1381967802f03cf8481", @@ -10030,15 +10030,15 @@ "T3B1_pt_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "9db2bfdbc7439183bc1d4c1e31e5d76e0c3b2b37aea451a99ac849680a685827", "T3B1_pt_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "07aa010d9a14feba221ad53fa2023569277a8197c1a64424daa7a134c135ac18", "T3B1_pt_test_lock.py::test_hold_to_lock": "ed436fdd2fa3f2af0b65aff219f96bbf33e7efb3e67bc363b47b5dbbabe00001", -"T3B1_pt_test_passphrase_samson.py::test_cancel": "81e200b1c9ea3a30715c44ca53ead278de2319c6605a5abb1426ca49bef9c4c7", -"T3B1_pt_test_passphrase_samson.py::test_passphrase_delete": "1c475d9606a3d729cd7cd4666530a25d52fc931bfb6f6a1dca959613a605f7b6", -"T3B1_pt_test_passphrase_samson.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-0f00decd": "f6226e2355841898eb6a1374ce54b678abccc0f51ff4ad4c24bf42c0881bb185", -"T3B1_pt_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-3a5ac438": "a2fc105afd469d0d7f2f1b0aa19f20231caba42c65f493645a3053058b442189", -"T3B1_pt_test_passphrase_samson.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-ae44524f": "4d46f303e2b1dd6e6a7a15acdfd2d81e455ed78083bedab99a452e7a00834476", -"T3B1_pt_test_passphrase_samson.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "410aed92ab6a2263dbadca4bfa8655d3bac4022148a92146499f97c07f2f6f33", -"T3B1_pt_test_passphrase_samson.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "35717edc82430d9f45906179ad1159ca36c22ce34e9674e3ac2b7f111363e012", -"T3B1_pt_test_passphrase_samson.py::test_passphrase_input_over_50_chars": "ad4039f8b22646bc7e99459bcc58cd5da3d841f438a489d2f104f311d52c3654", -"T3B1_pt_test_passphrase_samson.py::test_passphrase_loop_all_characters": "65307be1308d10bf0ea388a3e2fccbd1bddf3e24d9c98710939d190a9e833bee", +"T3B1_pt_test_passphrase_caesar.py::test_cancel": "81e200b1c9ea3a30715c44ca53ead278de2319c6605a5abb1426ca49bef9c4c7", +"T3B1_pt_test_passphrase_caesar.py::test_passphrase_delete": "1c475d9606a3d729cd7cd4666530a25d52fc931bfb6f6a1dca959613a605f7b6", +"T3B1_pt_test_passphrase_caesar.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxUd-c05a9fd8": "f6226e2355841898eb6a1374ce54b678abccc0f51ff4ad4c24bf42c0881bb185", +"T3B1_pt_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-4cc4e6ba": "4d46f303e2b1dd6e6a7a15acdfd2d81e455ed78083bedab99a452e7a00834476", +"T3B1_pt_test_passphrase_caesar.py::test_passphrase_input[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-9db06cf4": "a2fc105afd469d0d7f2f1b0aa19f20231caba42c65f493645a3053058b442189", +"T3B1_pt_test_passphrase_caesar.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "410aed92ab6a2263dbadca4bfa8655d3bac4022148a92146499f97c07f2f6f33", +"T3B1_pt_test_passphrase_caesar.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "35717edc82430d9f45906179ad1159ca36c22ce34e9674e3ac2b7f111363e012", +"T3B1_pt_test_passphrase_caesar.py::test_passphrase_input_over_50_chars": "ad4039f8b22646bc7e99459bcc58cd5da3d841f438a489d2f104f311d52c3654", +"T3B1_pt_test_passphrase_caesar.py::test_passphrase_loop_all_characters": "65307be1308d10bf0ea388a3e2fccbd1bddf3e24d9c98710939d190a9e833bee", "T3B1_pt_test_pin.py::test_last_digit_timeout": "3d3f3a628bfbda3e0bd03f147f938851d452bd1b5c42003f4e4a638c4fd6b063", "T3B1_pt_test_pin.py::test_pin_change": "8545c9646f5fa8ad55430e6dcc639038a48c37c5e31e5724484b73301cdcdc04", "T3B1_pt_test_pin.py::test_pin_delete_hold": "1472d889536e8be2816377039ff03f3dff737c4910188a8da10821fa1a200aad", @@ -10062,9 +10062,9 @@ "T3B1_pt_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "59731b4ed08e81ff635c4e0b4b0c624692aa219ce13ef9628c3efd64bbb10934", "T3B1_pt_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "7e64206262cca0a00280555e699574dabf8c2d2a53d0eec6a517f97d03be1676", "T3B1_pt_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "93a2d834b2d34330bab01b0a4c2f58b1ac08aa0a70d8de4824afe7c1724b4529", -"T3B1_pt_test_tutorial_samson.py::test_tutorial_again_and_skip": "66ad72ccdba260a952de575fbeea7694250a5e3abdc28c88ea652fc5ad02ed09", -"T3B1_pt_test_tutorial_samson.py::test_tutorial_finish": "fc5b1c9c8edc34d5ed7bb43efae0b25250a13f27686cae28f3766c46b564b6e6", -"T3B1_pt_test_tutorial_samson.py::test_tutorial_skip": "0399d3c5ea99203085584cc25c814debf50c41474403507ba3a1d01f45b863e1" +"T3B1_pt_test_tutorial_caesar.py::test_tutorial_again_and_skip": "66ad72ccdba260a952de575fbeea7694250a5e3abdc28c88ea652fc5ad02ed09", +"T3B1_pt_test_tutorial_caesar.py::test_tutorial_finish": "fc5b1c9c8edc34d5ed7bb43efae0b25250a13f27686cae28f3766c46b564b6e6", +"T3B1_pt_test_tutorial_caesar.py::test_tutorial_skip": "0399d3c5ea99203085584cc25c814debf50c41474403507ba3a1d01f45b863e1" }, "device_tests": { "T3B1_cs_binance-test_get_address.py::test_binance_get_address[m-44h-714h-0h-0-0-bnb1hgm0p7khfk85zpz-68e2cb5a": "a06576e7133f41d347bd0de24868093301ecaf73c5f4d4b689ce7fdc694fbd4f", @@ -18313,20 +18313,20 @@ "T3T1_cs_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "fac2cdb3b4806638929fdf2d97c5038a2d1333db7c1c331bffe5f60cd0ee976d", "T3T1_cs_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "7722114c8431b0ebb49f07428a03f54aaa894a4f17274b952f475f584dc3ac74", "T3T1_cs_test_lock.py::test_hold_to_lock": "008e9e7857137a528fdabdb8c345229b54ff30ac81121d348f760896bb983f24", -"T3T1_cs_test_passphrase_quicksilver.py::test_cycle_through_last_character": "c50284eafcac56ae79a885b69c41af731fbec058cb9c1b2c1530a0eba59578fc", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_click_same_button_many_times": "82703969099c6b1e324bef09130969b4d6bd3e33ae79bc7c2f205cc9d05d807e", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_delete": "dc9bc34e1a63c051cd681cbf93d3c285debd6365d730f08f786fb62c4ec21d37", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_delete_all": "073bf9e87d020bc0b1cf7cc4eb88c2400ac2eeaca52f3e615e5e07b317eee6b4", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_dollar_sign_deletion": "8c9ad0f284011c9f8b4a420aa1e561d4e8d79372e15527c323dfd4df7f0e658a", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLg-ef20f58e": "ad596ab7750d02356f66b92bf1cdcb581a6debf0e13d6a82066ad89fadd2516a", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "dbbd7e7abdd5974d5f686694393e8482479619b5aad88327cf9ac3b4c9b32280", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97y-09e853c2": "5ff39279ecc92ee01f8080cf8c1838f73df239a64821ed1acd336aaeb0b0e6a7", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-787665d5": "f0397a52adbc6db15642b57287663b7c26538226883fdf32fcbda05a324a2a7a", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-ac329eb3": "dbe63a152374a1f6a21d5ca46e04bc8cdf11538563d32c183797d4633c3048ba", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_input_over_50_chars": "f0397a52adbc6db15642b57287663b7c26538226883fdf32fcbda05a324a2a7a", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_long_spaces_deletion": "aa10b5ae0903d63d2079614a6d88576523ac5d45f9359c7a3d9d60ac39479fef", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_loop_all_characters": "6422550f3a7f8b777951300934d36f6e4e0f8e0e0b8104179f564178383d8820", -"T3T1_cs_test_passphrase_quicksilver.py::test_passphrase_prompt_disappears": "ed09230cc4dcd03e181ebb779b028104c53fa3865f386e0b93fc8bec3e9bcda0", +"T3T1_cs_test_passphrase_delizia.py::test_cycle_through_last_character": "c50284eafcac56ae79a885b69c41af731fbec058cb9c1b2c1530a0eba59578fc", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_click_same_button_many_times": "82703969099c6b1e324bef09130969b4d6bd3e33ae79bc7c2f205cc9d05d807e", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_delete": "dc9bc34e1a63c051cd681cbf93d3c285debd6365d730f08f786fb62c4ec21d37", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_delete_all": "073bf9e87d020bc0b1cf7cc4eb88c2400ac2eeaca52f3e615e5e07b317eee6b4", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_dollar_sign_deletion": "8c9ad0f284011c9f8b4a420aa1e561d4e8d79372e15527c323dfd4df7f0e658a", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxU-a6c3b67d": "ad596ab7750d02356f66b92bf1cdcb581a6debf0e13d6a82066ad89fadd2516a", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "dbbd7e7abdd5974d5f686694393e8482479619b5aad88327cf9ac3b4c9b32280", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "5ff39279ecc92ee01f8080cf8c1838f73df239a64821ed1acd336aaeb0b0e6a7", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-498fceab": "f0397a52adbc6db15642b57287663b7c26538226883fdf32fcbda05a324a2a7a", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-aebb7575": "dbe63a152374a1f6a21d5ca46e04bc8cdf11538563d32c183797d4633c3048ba", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_input_over_50_chars": "f0397a52adbc6db15642b57287663b7c26538226883fdf32fcbda05a324a2a7a", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_long_spaces_deletion": "aa10b5ae0903d63d2079614a6d88576523ac5d45f9359c7a3d9d60ac39479fef", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_loop_all_characters": "6422550f3a7f8b777951300934d36f6e4e0f8e0e0b8104179f564178383d8820", +"T3T1_cs_test_passphrase_delizia.py::test_passphrase_prompt_disappears": "ed09230cc4dcd03e181ebb779b028104c53fa3865f386e0b93fc8bec3e9bcda0", "T3T1_cs_test_pin.py::test_last_digit_timeout": "be7bca4fd578cbc8aa829051878d92432c13641c5d2ddddc5566eb2101335608", "T3T1_cs_test_pin.py::test_pin_cancel": "cafc4112a2fa322bfe3a3418b741224782f89af94a721aa821a65210068d03ec", "T3T1_cs_test_pin.py::test_pin_change": "bf1b97f53d2c61123e000c1cfd000493f62deb9e57b0d95c79a01f15ec17cc87", @@ -18351,11 +18351,11 @@ "T3T1_cs_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "517c9cd77533d1a3d9cc99129a05d2911a7d8fbd8b5cbf20f6ae75cf82668b60", "T3T1_cs_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "6a64d2dc74861cc9e3dafc409d80e82ed79f7dd26b17cbc9da01fea539312f0c", "T3T1_cs_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "6a635af7e8952f9da1755c96a4f87e73465d4a00835f4f93f6b44a962b253026", -"T3T1_cs_test_tutorial_quicksilver.py::test_tutorial_ignore_menu": "6e2a63119cad3d4344ddd38b574995b1da1d7cba549de058e3be75146aed1d40", -"T3T1_cs_test_tutorial_quicksilver.py::test_tutorial_menu_exit": "fecad098ed233a18aa9b9410aea68a9784b0d2a8ba329c46fedddb6964c45f54", -"T3T1_cs_test_tutorial_quicksilver.py::test_tutorial_menu_funfact": "650e50f4f66d9bbd052b155644a0fba09644e6a3b130d1935e11a4377c6650bb", -"T3T1_cs_test_tutorial_quicksilver.py::test_tutorial_menu_open_close": "6a48136d7e334bea0804f93057483c151eae696ce5f8fc5152bdf68498a5dfbc", -"T3T1_cs_test_tutorial_quicksilver.py::test_tutorial_menu_repeat": "0b2780c4a1b49b0ca5d75e46e54f8a4be6f080f15653a84502ae625af9dbe40e", +"T3T1_cs_test_tutorial_delizia.py::test_tutorial_ignore_menu": "6e2a63119cad3d4344ddd38b574995b1da1d7cba549de058e3be75146aed1d40", +"T3T1_cs_test_tutorial_delizia.py::test_tutorial_menu_exit": "fecad098ed233a18aa9b9410aea68a9784b0d2a8ba329c46fedddb6964c45f54", +"T3T1_cs_test_tutorial_delizia.py::test_tutorial_menu_funfact": "650e50f4f66d9bbd052b155644a0fba09644e6a3b130d1935e11a4377c6650bb", +"T3T1_cs_test_tutorial_delizia.py::test_tutorial_menu_open_close": "6a48136d7e334bea0804f93057483c151eae696ce5f8fc5152bdf68498a5dfbc", +"T3T1_cs_test_tutorial_delizia.py::test_tutorial_menu_repeat": "0b2780c4a1b49b0ca5d75e46e54f8a4be6f080f15653a84502ae625af9dbe40e", "T3T1_de_test_autolock.py::test_autolock_does_not_interrupt_preauthorized": "a1aadf56e16ee602bac9e36d1c35dfca21824b1a497ab44d6a4a4f1f64964777", "T3T1_de_test_autolock.py::test_autolock_does_not_interrupt_signing": "33f92324ebac004f6e06c3a34e5d7f0495d5dbeba1bdb8c77b7e23635d32e5e1", "T3T1_de_test_autolock.py::test_autolock_interrupts_passphrase": "c52c07eb9ccb6eff0cba71798d61fdc7b079c8b547e157919fb718f58b710862", @@ -18368,20 +18368,20 @@ "T3T1_de_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "a9c5e01e8dcf1e9f1a8b18cb3a3ec6a892823742f9ece4c404b4d5562d00dcf6", "T3T1_de_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "d80e7807b3fe0799bf503e483a7b9f969c45e8c241e755be2e976cc9e3136acd", "T3T1_de_test_lock.py::test_hold_to_lock": "f1914f56db5cec3b90e32e8e230ad88095fd440142fa21fa7617c2e60dc026a7", -"T3T1_de_test_passphrase_quicksilver.py::test_cycle_through_last_character": "5479b3d89d4b012da273d984568de2feddb76a032382e9b6c1fe79537bb67aad", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_click_same_button_many_times": "a545cc0425cdb20eeabf6287c040154b78da92d20109063b32f10adf9b625612", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_delete": "a351f8e01668b9fc8ed960510df87ffbb6f2744dd6d08562618478a2e1f29f6b", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_delete_all": "0e6a2d3f48c5a37478c75b00e3da4502771e696a3b678e9d5379699fe3c4d37f", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_dollar_sign_deletion": "b3bbd1502e2598bf65a97b7fa3ee17b7cc946312434df3c718ff524694d40c8d", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLg-ef20f58e": "72e69e958823e24ceb7fdff40ace2c3de29002c2c116f93425deb43b55caf456", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "7e215169b7ac4c278bf47b154a06314c381dcb4ade7dd2005476ed064516e59c", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97y-09e853c2": "04b9b4e83e8cea2240339b3c66d1e324e7dc6b717eff9744096086a2e6612c39", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-787665d5": "6fec17f535504713bf6d8a3b21e85116a8b9653d311a23fd0ed26bf75d216a59", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-ac329eb3": "1e70fc310891e4a336c928497549b58ea2aaf63bacb61c4ac6821f23633cb7d8", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_input_over_50_chars": "6fec17f535504713bf6d8a3b21e85116a8b9653d311a23fd0ed26bf75d216a59", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_long_spaces_deletion": "42b7fd13571777886f13c5f9afb7d6fac8c4530aa7b682806e1acd210b1d3882", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_loop_all_characters": "47820e5f70c0c68fe5545b9adb3872f065f4dbc117d38333b7d8af3fe34cbe48", -"T3T1_de_test_passphrase_quicksilver.py::test_passphrase_prompt_disappears": "5f0dbf85426c0f8f5df1a47ea49e52bbc90785a64bba07c630965e90315bfa9d", +"T3T1_de_test_passphrase_delizia.py::test_cycle_through_last_character": "5479b3d89d4b012da273d984568de2feddb76a032382e9b6c1fe79537bb67aad", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_click_same_button_many_times": "a545cc0425cdb20eeabf6287c040154b78da92d20109063b32f10adf9b625612", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_delete": "a351f8e01668b9fc8ed960510df87ffbb6f2744dd6d08562618478a2e1f29f6b", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_delete_all": "0e6a2d3f48c5a37478c75b00e3da4502771e696a3b678e9d5379699fe3c4d37f", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_dollar_sign_deletion": "b3bbd1502e2598bf65a97b7fa3ee17b7cc946312434df3c718ff524694d40c8d", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxU-a6c3b67d": "72e69e958823e24ceb7fdff40ace2c3de29002c2c116f93425deb43b55caf456", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "7e215169b7ac4c278bf47b154a06314c381dcb4ade7dd2005476ed064516e59c", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "04b9b4e83e8cea2240339b3c66d1e324e7dc6b717eff9744096086a2e6612c39", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-498fceab": "6fec17f535504713bf6d8a3b21e85116a8b9653d311a23fd0ed26bf75d216a59", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-aebb7575": "1e70fc310891e4a336c928497549b58ea2aaf63bacb61c4ac6821f23633cb7d8", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_input_over_50_chars": "6fec17f535504713bf6d8a3b21e85116a8b9653d311a23fd0ed26bf75d216a59", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_long_spaces_deletion": "42b7fd13571777886f13c5f9afb7d6fac8c4530aa7b682806e1acd210b1d3882", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_loop_all_characters": "47820e5f70c0c68fe5545b9adb3872f065f4dbc117d38333b7d8af3fe34cbe48", +"T3T1_de_test_passphrase_delizia.py::test_passphrase_prompt_disappears": "5f0dbf85426c0f8f5df1a47ea49e52bbc90785a64bba07c630965e90315bfa9d", "T3T1_de_test_pin.py::test_last_digit_timeout": "ab63a2f0be4fcccfd00ca27a981c271af4f56f2ce65b4385ed6ad40ac23855ca", "T3T1_de_test_pin.py::test_pin_cancel": "3d1c8dc5bd2303e0183a6d17112ea1127c1d100d304a5c20a332ad13890f6e11", "T3T1_de_test_pin.py::test_pin_change": "85249542b3af2540b58c05ba30c7fff0aae68d308a1221a35f4b6bec819469fe", @@ -18406,11 +18406,11 @@ "T3T1_de_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "2004c8a1e7bb82f1ee90b17f88b97702f02d3445450d09fe8af3daf71ec168da", "T3T1_de_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "cf2c49f980430da04d925e5b420aee7adc7f89bc4c504622346baa3bfe02f30f", "T3T1_de_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "5c251af806843435f212a0b183a078afd2ba691b27bab190660e54af758b900a", -"T3T1_de_test_tutorial_quicksilver.py::test_tutorial_ignore_menu": "22e4d6bc417348955f4ea6dbcfa6d264840843af5fc41caa0af24add7687ab79", -"T3T1_de_test_tutorial_quicksilver.py::test_tutorial_menu_exit": "d964a0fc45cf45227704c04826a6e01d8e89b2408d1a75aa2087f08cb1ac310b", -"T3T1_de_test_tutorial_quicksilver.py::test_tutorial_menu_funfact": "3d158e77a57ce30191cfa88d6b20d9012a6450747181f8ae9028466fb0e56f2b", -"T3T1_de_test_tutorial_quicksilver.py::test_tutorial_menu_open_close": "3e0e2a1f9f6744a3575f775c149fbfbe78ca2f5f4053f07bd62103b023018c04", -"T3T1_de_test_tutorial_quicksilver.py::test_tutorial_menu_repeat": "d08c543ee4aee36b556d2487820e40d94f29f38c77eeb08a01b2acbae9c32df6", +"T3T1_de_test_tutorial_delizia.py::test_tutorial_ignore_menu": "22e4d6bc417348955f4ea6dbcfa6d264840843af5fc41caa0af24add7687ab79", +"T3T1_de_test_tutorial_delizia.py::test_tutorial_menu_exit": "d964a0fc45cf45227704c04826a6e01d8e89b2408d1a75aa2087f08cb1ac310b", +"T3T1_de_test_tutorial_delizia.py::test_tutorial_menu_funfact": "3d158e77a57ce30191cfa88d6b20d9012a6450747181f8ae9028466fb0e56f2b", +"T3T1_de_test_tutorial_delizia.py::test_tutorial_menu_open_close": "3e0e2a1f9f6744a3575f775c149fbfbe78ca2f5f4053f07bd62103b023018c04", +"T3T1_de_test_tutorial_delizia.py::test_tutorial_menu_repeat": "d08c543ee4aee36b556d2487820e40d94f29f38c77eeb08a01b2acbae9c32df6", "T3T1_en_test_autolock.py::test_autolock_does_not_interrupt_preauthorized": "9b9e2909949bd8d0d9db7cf7c4ee754761496cf118deda242d07302ead3db3e6", "T3T1_en_test_autolock.py::test_autolock_does_not_interrupt_signing": "58db6349781785ef6843ff7570ecb7e0a812d73a32a1112bdd8b694a22a5622e", "T3T1_en_test_autolock.py::test_autolock_interrupts_passphrase": "30f8b1be9d49479c5f2848363b27671086b86d5779e030eeab28ac802860c757", @@ -18423,20 +18423,20 @@ "T3T1_en_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "48bcdaa7fe4503e0019a2dfc5325e5090e7353d8f7b09227b203be855292734a", "T3T1_en_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "737ae36f4bd9e70247c317be97fd64061d2430bcfaad9aadb803b714a15b0f59", "T3T1_en_test_lock.py::test_hold_to_lock": "b4ca63c91c71fa0fa234c75414fd164b5894ff5d65fc99e5b3e25585c0869ac9", -"T3T1_en_test_passphrase_quicksilver.py::test_cycle_through_last_character": "bfe9b72679d7a96ef7556eb229c5b2ffe317e3f00a8a75d3dd6a23569a2e2b03", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_click_same_button_many_times": "589339a475590c04a58d125feab17a459103ae1ba1564bdaf75d87290802cabe", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_delete": "aaecc001b2dc624bfd1e62f5b908a9adab997d9cfd4eb742ee94388cd18ed16e", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_delete_all": "beee4c8e93857b3dc9229aefe34919dca39c327876d98fbe2b7b0d676ef84884", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_dollar_sign_deletion": "45eb7d9f2deb84ee105978c13fa7bdd0639dbfb75399bdabf5cb3eeaf051ae29", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLg-ef20f58e": "2d7dbb776dabd5b67ff3cd9576713bee98a658c3feaef788f15b9ac5943440c4", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "2b138f5b450c6cbe1b4b22c84ccca5d00ce65383710cf18b9a6a245f9849c6da", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97y-09e853c2": "757fb127aefcc01a5cbf35b9ea7fb457f3a217df13eefa3290ac35bc7159bfbe", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-787665d5": "3987e9840c5ce6c637b0b050217a6bc1aa04636e69f9d111f482c8ae95e10e9f", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-ac329eb3": "7c2ee5a5a96939d09b9ad3927efcb87d3bec5db8fa3ab712b1571d0b995f2341", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_input_over_50_chars": "3987e9840c5ce6c637b0b050217a6bc1aa04636e69f9d111f482c8ae95e10e9f", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_long_spaces_deletion": "76bcf47232ad0b2efd6847a0c167ef687516032b1f00bc5ae426add81ada5718", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_loop_all_characters": "b47f39928aa3942ef0ae0c37fa1b9babcf9a056e14cb79672076b81dbb4e60a1", -"T3T1_en_test_passphrase_quicksilver.py::test_passphrase_prompt_disappears": "618a3f28184eba404c7c8c22403b059384adf77caab19db9ea291adc732ead65", +"T3T1_en_test_passphrase_delizia.py::test_cycle_through_last_character": "bfe9b72679d7a96ef7556eb229c5b2ffe317e3f00a8a75d3dd6a23569a2e2b03", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_click_same_button_many_times": "589339a475590c04a58d125feab17a459103ae1ba1564bdaf75d87290802cabe", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_delete": "aaecc001b2dc624bfd1e62f5b908a9adab997d9cfd4eb742ee94388cd18ed16e", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_delete_all": "beee4c8e93857b3dc9229aefe34919dca39c327876d98fbe2b7b0d676ef84884", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_dollar_sign_deletion": "45eb7d9f2deb84ee105978c13fa7bdd0639dbfb75399bdabf5cb3eeaf051ae29", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxU-a6c3b67d": "2d7dbb776dabd5b67ff3cd9576713bee98a658c3feaef788f15b9ac5943440c4", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "2b138f5b450c6cbe1b4b22c84ccca5d00ce65383710cf18b9a6a245f9849c6da", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "757fb127aefcc01a5cbf35b9ea7fb457f3a217df13eefa3290ac35bc7159bfbe", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-498fceab": "3987e9840c5ce6c637b0b050217a6bc1aa04636e69f9d111f482c8ae95e10e9f", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-aebb7575": "7c2ee5a5a96939d09b9ad3927efcb87d3bec5db8fa3ab712b1571d0b995f2341", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_input_over_50_chars": "3987e9840c5ce6c637b0b050217a6bc1aa04636e69f9d111f482c8ae95e10e9f", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_long_spaces_deletion": "76bcf47232ad0b2efd6847a0c167ef687516032b1f00bc5ae426add81ada5718", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_loop_all_characters": "b47f39928aa3942ef0ae0c37fa1b9babcf9a056e14cb79672076b81dbb4e60a1", +"T3T1_en_test_passphrase_delizia.py::test_passphrase_prompt_disappears": "618a3f28184eba404c7c8c22403b059384adf77caab19db9ea291adc732ead65", "T3T1_en_test_pin.py::test_last_digit_timeout": "009dcb34a9d17f32001f82e0ab7dd4a028d00233df2718b7b208d1b7b520e8ff", "T3T1_en_test_pin.py::test_pin_cancel": "9e676c054a1fa6b28863b19bb20c3b6cdf02fa5fb719e7a6fe3ef319d271a909", "T3T1_en_test_pin.py::test_pin_change": "b4ee133b0dfd5afc7c14d5aea9e37baddce6486399f1b1919b300819299786b5", @@ -18461,11 +18461,11 @@ "T3T1_en_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "90a6f1ee6d6d27f625cd3128b31c9f4aeb3bfb1c3f67cf03fc4a2d29c0eacee6", "T3T1_en_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "857d815808abab5eac7b3b4667678c91b9b38612fe5f0163938344fd2a175d7c", "T3T1_en_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "9ec34e2ea6e09497a7f106935714be82d05677d0f297f09670fe8d7a9634aed2", -"T3T1_en_test_tutorial_quicksilver.py::test_tutorial_ignore_menu": "d2b68c41e596318c64a92eedff38cc23e06c4f47017304452089914b292bf436", -"T3T1_en_test_tutorial_quicksilver.py::test_tutorial_menu_exit": "29c700ae02b307ad1a856c549d593e465173652d29788dba64512dcb85046f52", -"T3T1_en_test_tutorial_quicksilver.py::test_tutorial_menu_funfact": "056dee0f3035a04e11f117549eb4deca9445e197060f38ae7ed232bbe9af9a8d", -"T3T1_en_test_tutorial_quicksilver.py::test_tutorial_menu_open_close": "1e626ce8e0f1a161319ac67014ebcc844833168c3e91e349dc20ad16ba1718fb", -"T3T1_en_test_tutorial_quicksilver.py::test_tutorial_menu_repeat": "01ebe123ffb15e9555cd6ab58a5422441b149b97edcb2f58f808f4e8a43f2c43", +"T3T1_en_test_tutorial_delizia.py::test_tutorial_ignore_menu": "d2b68c41e596318c64a92eedff38cc23e06c4f47017304452089914b292bf436", +"T3T1_en_test_tutorial_delizia.py::test_tutorial_menu_exit": "29c700ae02b307ad1a856c549d593e465173652d29788dba64512dcb85046f52", +"T3T1_en_test_tutorial_delizia.py::test_tutorial_menu_funfact": "056dee0f3035a04e11f117549eb4deca9445e197060f38ae7ed232bbe9af9a8d", +"T3T1_en_test_tutorial_delizia.py::test_tutorial_menu_open_close": "1e626ce8e0f1a161319ac67014ebcc844833168c3e91e349dc20ad16ba1718fb", +"T3T1_en_test_tutorial_delizia.py::test_tutorial_menu_repeat": "01ebe123ffb15e9555cd6ab58a5422441b149b97edcb2f58f808f4e8a43f2c43", "T3T1_es_test_autolock.py::test_autolock_does_not_interrupt_preauthorized": "37d3369c6a48afb2943bda5bb1721ea019077c42a9296c91e2c79268fb54a998", "T3T1_es_test_autolock.py::test_autolock_does_not_interrupt_signing": "48094d68cb13c59c17d26449ae06b574d1eaa661174f8734a759dec6cf13ac56", "T3T1_es_test_autolock.py::test_autolock_interrupts_passphrase": "7f1d8a8dbaa679f7b5e24929039a373ade137cc3f73b80fdfdd24355bde9eeaa", @@ -18478,20 +18478,20 @@ "T3T1_es_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "449f2fbf27081afd611b117260026d7ae54b6918531747affa416b5e98bcb87a", "T3T1_es_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "d6a87da637284667271481fd38d8186de3a338e96d824f2df9f603c5bbd16210", "T3T1_es_test_lock.py::test_hold_to_lock": "25ff10a405a3050bee8e4ae17f9665f74d14cd7e4efc1d3b5dc2ea76fae59705", -"T3T1_es_test_passphrase_quicksilver.py::test_cycle_through_last_character": "84aeacbc3d043929234703fb3dccd72c7bdc0d3bb0f28fb48ca1e7fbbb4d0f43", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_click_same_button_many_times": "3cd7320d1c4c19f4d3931c264aedfd88578f1a5b25b76682235d255c72a8c9af", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_delete": "212fba34f984cab514d0d8acc7ea42b7a27d57123e4321ad19a5e481dac8324a", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_delete_all": "98ddb83a20fba6a4add7c67853beb0a21a75361498156aa1065bb74d7b2914a2", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_dollar_sign_deletion": "505ded757d720b3ec87e12127cfc398fa8af0f24bed826499072c49b3e22a5a2", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLg-ef20f58e": "8824aebff8c9f9e058570441796178a7f27989f6ee38f582a1b901d4ecfb98db", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "075547f290aeca437bbaa568fbc8f6899db88a6962cfcf8f781520d612099c57", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97y-09e853c2": "79c6a0f823bee2505360ae62a61096b9d86bf9967cbaf002e1a9babdc712789c", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-787665d5": "da7c751102a99b85f96ede00d20559d9b853c4ea0aa790761fed4581e02e64d0", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-ac329eb3": "15d200f00654a727b000337bcac711a654f15daaa67518bc1e09b06335d03cf7", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_input_over_50_chars": "da7c751102a99b85f96ede00d20559d9b853c4ea0aa790761fed4581e02e64d0", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_long_spaces_deletion": "f31ce5f8302389f97750b256b0b485435e91ec5ee08747b59ada72237e4fb8da", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_loop_all_characters": "e111e7f242da77a574582e1405d1404065a7bd4509f457c46ef367fd66dbef93", -"T3T1_es_test_passphrase_quicksilver.py::test_passphrase_prompt_disappears": "5361fde031f692aa40f32e0c218f5c7cb9eb7ebdfcd75525a437ab29bc11ef05", +"T3T1_es_test_passphrase_delizia.py::test_cycle_through_last_character": "84aeacbc3d043929234703fb3dccd72c7bdc0d3bb0f28fb48ca1e7fbbb4d0f43", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_click_same_button_many_times": "3cd7320d1c4c19f4d3931c264aedfd88578f1a5b25b76682235d255c72a8c9af", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_delete": "212fba34f984cab514d0d8acc7ea42b7a27d57123e4321ad19a5e481dac8324a", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_delete_all": "98ddb83a20fba6a4add7c67853beb0a21a75361498156aa1065bb74d7b2914a2", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_dollar_sign_deletion": "505ded757d720b3ec87e12127cfc398fa8af0f24bed826499072c49b3e22a5a2", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxU-a6c3b67d": "8824aebff8c9f9e058570441796178a7f27989f6ee38f582a1b901d4ecfb98db", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "075547f290aeca437bbaa568fbc8f6899db88a6962cfcf8f781520d612099c57", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "79c6a0f823bee2505360ae62a61096b9d86bf9967cbaf002e1a9babdc712789c", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-498fceab": "da7c751102a99b85f96ede00d20559d9b853c4ea0aa790761fed4581e02e64d0", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-aebb7575": "15d200f00654a727b000337bcac711a654f15daaa67518bc1e09b06335d03cf7", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_input_over_50_chars": "da7c751102a99b85f96ede00d20559d9b853c4ea0aa790761fed4581e02e64d0", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_long_spaces_deletion": "f31ce5f8302389f97750b256b0b485435e91ec5ee08747b59ada72237e4fb8da", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_loop_all_characters": "e111e7f242da77a574582e1405d1404065a7bd4509f457c46ef367fd66dbef93", +"T3T1_es_test_passphrase_delizia.py::test_passphrase_prompt_disappears": "5361fde031f692aa40f32e0c218f5c7cb9eb7ebdfcd75525a437ab29bc11ef05", "T3T1_es_test_pin.py::test_last_digit_timeout": "da1dcc0ba67e32d4ed1e66adf8bb5b31bf294ba6e5bb0b6405297a46ee452ad3", "T3T1_es_test_pin.py::test_pin_cancel": "f1257d486cbb7cf38e201755768e4585b2ca9eec9109f50e56adf9b8b26283ff", "T3T1_es_test_pin.py::test_pin_change": "c6d1933ac2e0f55a6dea848527d67c57ca1fe79b609f12304b870d040f0681bb", @@ -18516,11 +18516,11 @@ "T3T1_es_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "b2a94e0b7b6aeb4056ea3df78c32f90f1c4d824046f3c92695a42dc58247b430", "T3T1_es_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "62766def58471ce493d7926d378884743b850354962b42f0eb8713caca83d3b5", "T3T1_es_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "d164fe4aa96fb27de0d305f25bd2fe90b3563b53a5afa444fcfe8d0cdbaec171", -"T3T1_es_test_tutorial_quicksilver.py::test_tutorial_ignore_menu": "f170f4496264f8952bebb1547a3838d34cad9ad6cdf1e53e47fc2b4e44b4cbfb", -"T3T1_es_test_tutorial_quicksilver.py::test_tutorial_menu_exit": "fe1f116750a85da00f70ef21e57ce6d12db1820e8b6b600b6f40a90933874c98", -"T3T1_es_test_tutorial_quicksilver.py::test_tutorial_menu_funfact": "77f14a8575a4a65d48697a2d8ab07ab062b2f3aeb0b2c1b35844fb4c9fc8c519", -"T3T1_es_test_tutorial_quicksilver.py::test_tutorial_menu_open_close": "05dd76e07fc5770a4261671ba2c11005974df84514c959deb96d8bf4d9ffbf71", -"T3T1_es_test_tutorial_quicksilver.py::test_tutorial_menu_repeat": "1df0f55fb654dd9a2ed82cd258ad4927bc7795b0f4a6fbdc64b53487cadedc7e", +"T3T1_es_test_tutorial_delizia.py::test_tutorial_ignore_menu": "f170f4496264f8952bebb1547a3838d34cad9ad6cdf1e53e47fc2b4e44b4cbfb", +"T3T1_es_test_tutorial_delizia.py::test_tutorial_menu_exit": "fe1f116750a85da00f70ef21e57ce6d12db1820e8b6b600b6f40a90933874c98", +"T3T1_es_test_tutorial_delizia.py::test_tutorial_menu_funfact": "77f14a8575a4a65d48697a2d8ab07ab062b2f3aeb0b2c1b35844fb4c9fc8c519", +"T3T1_es_test_tutorial_delizia.py::test_tutorial_menu_open_close": "05dd76e07fc5770a4261671ba2c11005974df84514c959deb96d8bf4d9ffbf71", +"T3T1_es_test_tutorial_delizia.py::test_tutorial_menu_repeat": "1df0f55fb654dd9a2ed82cd258ad4927bc7795b0f4a6fbdc64b53487cadedc7e", "T3T1_fr_test_autolock.py::test_autolock_does_not_interrupt_preauthorized": "239a61de3bec014d42f762a2fd9e9d373ecf464ecd64b5f45d81ecae7dd76934", "T3T1_fr_test_autolock.py::test_autolock_does_not_interrupt_signing": "608ad7b3ce68b7421a0222fb45b9e9ed9651d8b9c75a2d0f3b2bed9823c2ee17", "T3T1_fr_test_autolock.py::test_autolock_interrupts_passphrase": "f8c1b6a911a628923253614af086d2cb757586326f1571f6a3bbf9331e7956bd", @@ -18533,20 +18533,20 @@ "T3T1_fr_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "e4e00ae71b7c75513c85387cd87aabee6c83aa50a3c027eee671613be15be135", "T3T1_fr_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "fa4fa3205412be60d1890c4a385e66003f3b2afe041dce0b646cbef536a00caa", "T3T1_fr_test_lock.py::test_hold_to_lock": "b4a79c04782cf6a422f731b2984cf6457d14458907ad62eeff2788596734201c", -"T3T1_fr_test_passphrase_quicksilver.py::test_cycle_through_last_character": "eade578f09bef8d45a2947d551be705cd6a965cc3f4ba0f4cb19f4bc6ccad229", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_click_same_button_many_times": "3e9ace72613cd66b99723b0e240397cda4ad7d0b53d51d70afb1848b846558dd", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_delete": "76c73fa4aa95b1456a73a4a702070f8d1e4e1621deadf800c3a666016695bfb1", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_delete_all": "00fda4440890477e576f52abb53307739913652112db2fd6513cde1205bb592e", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_dollar_sign_deletion": "68f17d282a7d14fd48b81bbce9dbf062b4bc2543bbeba4c0d870c3e8b4c88bb4", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLg-ef20f58e": "076d980ed04dd7ff8f40a2001a2380d7290a23e0c247da10a2c34727b0654879", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "353ab91e078508d9b2815cd718510634c52664bf9ac27a8daa902e7b19bb91c8", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97y-09e853c2": "04d44628eca02967820f391f02eaead6e2811f8b0ad94f8584f65aa136e126a7", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-787665d5": "dc5fc5b63f499df0876aecc956e4738c4275d0dccad2978e7013b1aa86d66424", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-ac329eb3": "4e7d639cdac426bc0c831e130b438b527b3d61eed8b50306d5cfff9711c7393a", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_input_over_50_chars": "dc5fc5b63f499df0876aecc956e4738c4275d0dccad2978e7013b1aa86d66424", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_long_spaces_deletion": "03c08d5b5329a6a3ed5be05302dadf2a4721eb655210b5e4069b110816850795", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_loop_all_characters": "634c9b42a9cd5fadbfa8793fd0844d8e84f80997bf52b7941333f9b193c5c3e0", -"T3T1_fr_test_passphrase_quicksilver.py::test_passphrase_prompt_disappears": "636816e3224b253aab48403cd198fcf62f2b6a6ee4df95bcebb5c951948d9ee4", +"T3T1_fr_test_passphrase_delizia.py::test_cycle_through_last_character": "eade578f09bef8d45a2947d551be705cd6a965cc3f4ba0f4cb19f4bc6ccad229", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_click_same_button_many_times": "3e9ace72613cd66b99723b0e240397cda4ad7d0b53d51d70afb1848b846558dd", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_delete": "76c73fa4aa95b1456a73a4a702070f8d1e4e1621deadf800c3a666016695bfb1", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_delete_all": "00fda4440890477e576f52abb53307739913652112db2fd6513cde1205bb592e", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_dollar_sign_deletion": "68f17d282a7d14fd48b81bbce9dbf062b4bc2543bbeba4c0d870c3e8b4c88bb4", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxU-a6c3b67d": "076d980ed04dd7ff8f40a2001a2380d7290a23e0c247da10a2c34727b0654879", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "353ab91e078508d9b2815cd718510634c52664bf9ac27a8daa902e7b19bb91c8", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "04d44628eca02967820f391f02eaead6e2811f8b0ad94f8584f65aa136e126a7", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-498fceab": "dc5fc5b63f499df0876aecc956e4738c4275d0dccad2978e7013b1aa86d66424", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-aebb7575": "4e7d639cdac426bc0c831e130b438b527b3d61eed8b50306d5cfff9711c7393a", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_input_over_50_chars": "dc5fc5b63f499df0876aecc956e4738c4275d0dccad2978e7013b1aa86d66424", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_long_spaces_deletion": "03c08d5b5329a6a3ed5be05302dadf2a4721eb655210b5e4069b110816850795", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_loop_all_characters": "634c9b42a9cd5fadbfa8793fd0844d8e84f80997bf52b7941333f9b193c5c3e0", +"T3T1_fr_test_passphrase_delizia.py::test_passphrase_prompt_disappears": "636816e3224b253aab48403cd198fcf62f2b6a6ee4df95bcebb5c951948d9ee4", "T3T1_fr_test_pin.py::test_last_digit_timeout": "ac5af8617d22ffdc05328dc9dba1564bda80324ca734e1cbee5a3f8c063b5f3b", "T3T1_fr_test_pin.py::test_pin_cancel": "f566b5ef1b01df0fc96291eac714a44f3ab85d3bfbe43fd930d674797dd3bbe4", "T3T1_fr_test_pin.py::test_pin_change": "791a620e49606a5591ad168d1bdd2999ae26f34a8dff90df7d2eeb7d428e50de", @@ -18571,11 +18571,11 @@ "T3T1_fr_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "57afda44d1e0d68bddc3307d3af40fee5e301984c049b20f84d4cace14e5ac7c", "T3T1_fr_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "6a3a177142a626907878679191a2c4c7b549d8536e4d2c693e8035e95764be59", "T3T1_fr_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "81c3c6dd66a3c837948ab40c7e35a34c797b0654aee389d69b6b521a44720839", -"T3T1_fr_test_tutorial_quicksilver.py::test_tutorial_ignore_menu": "fb7356f92e00442b4151c0750f3580c7eb7006211b976371742c633e5d24ef50", -"T3T1_fr_test_tutorial_quicksilver.py::test_tutorial_menu_exit": "20fbcfde484270b2fc45857e50f9b7afb5c7e876a2441aa271d02e1954f6cd42", -"T3T1_fr_test_tutorial_quicksilver.py::test_tutorial_menu_funfact": "508cc6cc186cd738f1ff11d85c68d74825ba02a3b0f1624fa3d9eadeec466723", -"T3T1_fr_test_tutorial_quicksilver.py::test_tutorial_menu_open_close": "d521123bacf2dbb487738f8f5afd75c17f9e976401f8df7906bad97a3638a1d1", -"T3T1_fr_test_tutorial_quicksilver.py::test_tutorial_menu_repeat": "605e9d23ec2a71e53d28bef9649e220a8f2640a0ef10247ef920396e16b0d339", +"T3T1_fr_test_tutorial_delizia.py::test_tutorial_ignore_menu": "fb7356f92e00442b4151c0750f3580c7eb7006211b976371742c633e5d24ef50", +"T3T1_fr_test_tutorial_delizia.py::test_tutorial_menu_exit": "20fbcfde484270b2fc45857e50f9b7afb5c7e876a2441aa271d02e1954f6cd42", +"T3T1_fr_test_tutorial_delizia.py::test_tutorial_menu_funfact": "508cc6cc186cd738f1ff11d85c68d74825ba02a3b0f1624fa3d9eadeec466723", +"T3T1_fr_test_tutorial_delizia.py::test_tutorial_menu_open_close": "d521123bacf2dbb487738f8f5afd75c17f9e976401f8df7906bad97a3638a1d1", +"T3T1_fr_test_tutorial_delizia.py::test_tutorial_menu_repeat": "605e9d23ec2a71e53d28bef9649e220a8f2640a0ef10247ef920396e16b0d339", "T3T1_pt_test_autolock.py::test_autolock_does_not_interrupt_preauthorized": "b8e345283fcc8498d8f0c7f1ad3f5f52777262d9a912a7002ab0ac56a3f3783a", "T3T1_pt_test_autolock.py::test_autolock_does_not_interrupt_signing": "be364f29b4bc13986e26ab5b98e509d9c82418aea4c5417f77908c93878e4e21", "T3T1_pt_test_autolock.py::test_autolock_interrupts_passphrase": "a40598aa4756d221c94d72cd092de1ec3f1140d258562a864176a5af1a4575f5", @@ -18588,20 +18588,20 @@ "T3T1_pt_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "523e365ff305bec6a754ac67efb11919300e12387f9c048b3ab668a9ec9144e2", "T3T1_pt_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "743ea2e8047f75eaad8c98988cda4a68b52cbb356b6fb11c83dba0040daeeda3", "T3T1_pt_test_lock.py::test_hold_to_lock": "11eafea6b15f8f6e9abd932233f7d87bdc10f527f15b362f45c9b2992ce42091", -"T3T1_pt_test_passphrase_quicksilver.py::test_cycle_through_last_character": "34f794c37c42d5d48fe7488291da0eaa64c73ae4a68e5700da5cbbaab67127df", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_click_same_button_many_times": "7c66cc121524b4930f78c6d04045271281d3b95d7b574792974eab8b7e60b60a", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_delete": "7a9621e814820c8e34d31c53bc511a0513e9409ad2af4357c8d4d02863b1db54", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_delete_all": "17b9dd0e0154d2f8a5bd72f84fbc3df5850af6547f8fd8ff873481aa47b35f10", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_dollar_sign_deletion": "ed76567916be7c4792b2883051cfef592f7b869d4c236dfe4719c40cb9741bd7", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLg-ef20f58e": "32ff45d856030e399c7a6b9986700959c7f3d6d56ae977ef9728629ebd58b5e2", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "6782faf514031298fbb27b986bbfa86ba1ac2e0bb9948c0ddfcc01ed0aab8457", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97y-09e853c2": "ab0a374dbc7cdfa55a3d002fda9528b43b32f467c5b5c8a86a94dc33c28924f9", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-787665d5": "ae4872c9ffe24cdd4b72414f47a6445e7c1ea880f786e22b2a46254bf71fa0ff", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadad-ac329eb3": "b22de26ed81d60845cc533d220f98254a87568921431cca5ed7b8e8a2166feda", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_input_over_50_chars": "ae4872c9ffe24cdd4b72414f47a6445e7c1ea880f786e22b2a46254bf71fa0ff", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_long_spaces_deletion": "3edfec06a86b7d7cf7ae1cd1e97b9a8d7bb0d8d855b94e4c88c1b6098e8fa89e", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_loop_all_characters": "265e14a603c4cf25b2a38ca23fb594c1b51bfc33164993b5df5ca2ee2245b2e6", -"T3T1_pt_test_passphrase_quicksilver.py::test_passphrase_prompt_disappears": "d9100a96878999cc4ad31c5428d8cd7a9ba6271a2cb7d86c5234996fff0715a5", +"T3T1_pt_test_passphrase_delizia.py::test_cycle_through_last_character": "34f794c37c42d5d48fe7488291da0eaa64c73ae4a68e5700da5cbbaab67127df", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_click_same_button_many_times": "7c66cc121524b4930f78c6d04045271281d3b95d7b574792974eab8b7e60b60a", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_delete": "7a9621e814820c8e34d31c53bc511a0513e9409ad2af4357c8d4d02863b1db54", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_delete_all": "17b9dd0e0154d2f8a5bd72f84fbc3df5850af6547f8fd8ff873481aa47b35f10", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_dollar_sign_deletion": "ed76567916be7c4792b2883051cfef592f7b869d4c236dfe4719c40cb9741bd7", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_input[Y@14lw%p)JN@f54MYvys@zj'g-mnkoxeaMzLgfCxU-a6c3b67d": "32ff45d856030e399c7a6b9986700959c7f3d6d56ae977ef9728629ebd58b5e2", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_input[abc 123-mvqzZUb9NaUc62Buk9WCP4L7hunsXFyamT]": "6782faf514031298fbb27b986bbfa86ba1ac2e0bb9948c0ddfcc01ed0aab8457", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_input[abc123ABC_<>-mtHHfh6uHtJiACwp7kzJZ97yueT6sEdQiG]": "ab0a374dbc7cdfa55a3d002fda9528b43b32f467c5b5c8a86a94dc33c28924f9", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-498fceab": "ae4872c9ffe24cdd4b72414f47a6445e7c1ea880f786e22b2a46254bf71fa0ff", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_input[dadadadadadadadadadadadadadadadadadadadad-aebb7575": "b22de26ed81d60845cc533d220f98254a87568921431cca5ed7b8e8a2166feda", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_input_over_50_chars": "ae4872c9ffe24cdd4b72414f47a6445e7c1ea880f786e22b2a46254bf71fa0ff", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_long_spaces_deletion": "3edfec06a86b7d7cf7ae1cd1e97b9a8d7bb0d8d855b94e4c88c1b6098e8fa89e", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_loop_all_characters": "265e14a603c4cf25b2a38ca23fb594c1b51bfc33164993b5df5ca2ee2245b2e6", +"T3T1_pt_test_passphrase_delizia.py::test_passphrase_prompt_disappears": "d9100a96878999cc4ad31c5428d8cd7a9ba6271a2cb7d86c5234996fff0715a5", "T3T1_pt_test_pin.py::test_last_digit_timeout": "e3e42576a552adc2058d72329a4797924d64bac699067bdef1b77db1a615b56b", "T3T1_pt_test_pin.py::test_pin_cancel": "bb5b541dc64dadb1dff07deff7b9dda59fac608b2ebab0eb2b9187816197d199", "T3T1_pt_test_pin.py::test_pin_change": "17cc11ac363f14173f7a557a1bbcd985d7e34ab4422bda5a81e89ce0f7f076f0", @@ -18626,11 +18626,11 @@ "T3T1_pt_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "729afad7e7d5f25681efcec62c33cd4de5a9d37fb32be0b7d03b8990a09b2241", "T3T1_pt_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "652472d830d8c98e692df2c4bb0055c5d223f1382957082968667dde04e11cbc", "T3T1_pt_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "aacc346b4f421e842c8a7c252a1809310fb4b65602f629fab262ed9c646ffee6", -"T3T1_pt_test_tutorial_quicksilver.py::test_tutorial_ignore_menu": "fbccc3c9a35c7fdbd73d7ed0660d295b819c1c4aced8fb2704e2eb5a81e586c0", -"T3T1_pt_test_tutorial_quicksilver.py::test_tutorial_menu_exit": "6ca84667bee1d9af1e9c27207b7a37c2de1e4a6435ec934a0e086891d4358ed2", -"T3T1_pt_test_tutorial_quicksilver.py::test_tutorial_menu_funfact": "3bac24378884a50e40215e31fc94db5fa25d4a9a50720736fc939ecc975bb752", -"T3T1_pt_test_tutorial_quicksilver.py::test_tutorial_menu_open_close": "39491badb5a5a3172992036cb5c27c3107f280a4b5e1b10000cafbe8b72cb41d", -"T3T1_pt_test_tutorial_quicksilver.py::test_tutorial_menu_repeat": "7ef10cf68700559bce5b35f416f1148a071453a1efb32c39abe23fbaa156f4ef" +"T3T1_pt_test_tutorial_delizia.py::test_tutorial_ignore_menu": "fbccc3c9a35c7fdbd73d7ed0660d295b819c1c4aced8fb2704e2eb5a81e586c0", +"T3T1_pt_test_tutorial_delizia.py::test_tutorial_menu_exit": "6ca84667bee1d9af1e9c27207b7a37c2de1e4a6435ec934a0e086891d4358ed2", +"T3T1_pt_test_tutorial_delizia.py::test_tutorial_menu_funfact": "3bac24378884a50e40215e31fc94db5fa25d4a9a50720736fc939ecc975bb752", +"T3T1_pt_test_tutorial_delizia.py::test_tutorial_menu_open_close": "39491badb5a5a3172992036cb5c27c3107f280a4b5e1b10000cafbe8b72cb41d", +"T3T1_pt_test_tutorial_delizia.py::test_tutorial_menu_repeat": "7ef10cf68700559bce5b35f416f1148a071453a1efb32c39abe23fbaa156f4ef" }, "device_tests": { "T3T1_cs_binance-test_get_address.py::test_binance_get_address[m-44h-714h-0h-0-0-bnb1hgm0p7khfk85zpz-68e2cb5a": "19a05d5056795bd4c2a4417d0fa44bec6f9dee82544122d07ad7ade95e2a2d97", diff --git a/vendor/fido2-tests b/vendor/fido2-tests index aef9ddc95d..737b4960c9 160000 --- a/vendor/fido2-tests +++ b/vendor/fido2-tests @@ -1 +1 @@ -Subproject commit aef9ddc95d3661ac1864e4fb77287905b0913e12 +Subproject commit 737b4960c98b4877653c77ff97a0bb5cfc319213