obrusvit
482b442c8e
feat(eckhart): remove label shadow on default hs
2025-05-30 17:38:16 +02:00
Lukas Bielesch
a57fc3f8ed
feat(core): update number input screen
...
- add time-handling functions
- add option to show time units
- add hold functionality to increment/decrement buttons
- add new device-menu actions
2025-05-30 17:38:16 +02:00
Lukas Bielesch
b8f018a419
fix(eckhart): fix failing tests: homescreen, fido, solana
2025-05-30 17:38:16 +02:00
obrusvit
12e1c456c7
feat(eckhart): port bootloader ble handling
2025-05-30 17:38:16 +02:00
Lukas Bielesch
459f851779
feat(eckhart): implement missing eckhart tests and flows
2025-05-30 17:38:16 +02:00
obrusvit
0afc97227f
fix(eckhart): a few alignment and style issues
...
- fix pyright
2025-05-30 17:38:16 +02:00
Lukas Bielesch
c66b435212
fix(eckhart): fix unstable click tests
...
- Differentiate input vectors for Eckhart due to different screen size
- paginate, where possible
2025-05-30 17:38:16 +02:00
Lukas Bielesch
2963065afc
feat(eckhart): confirm_signverify, confirm_blob, ethereum, solana and nostr support
2025-05-30 17:38:16 +02:00
Lukas Bielesch
b45865a808
chore(eckhart): use dedicated function for menu buttons creation
2025-05-30 17:38:16 +02:00
Lukas Bielesch
40d9b049b8
chore(eckhart): update show_mismatch, confirm_output and confirm_value and progress_screen functions
2025-05-30 17:38:16 +02:00
Lukas Bielesch
4eb872e1c8
feat(eckhart): implement trait functions: confirm_value_intro,
...
confirm_modify_output, confirm_modify_fee, confirm_with_menu,
show_info_with_cancel and confirm_props
2025-05-30 17:38:16 +02:00
Lukas Bielesch
edfec4f407
feat(eckhart): update request number trait function
...
add request number flow instead of screen only
add updatable info screen to show extra information
2025-05-30 17:38:16 +02:00
Lukas Bielesch
da319daccb
chore(eckhart): update get_address flow to use xpubs
...
- remove line ending hyphens from mono fonts
- update test to scroll through an entire page
2025-05-30 17:38:16 +02:00
Lukas Bielesch
b77db55330
chore(eckhart): TextScreen improvements
...
update page count for the content,
add page limit,
enable subtitle to have two lines
2025-05-30 17:38:16 +02:00
obrusvit
04b61ea6af
feat(eckhart): render_loader and ProgressScreen
...
- `render_loader` shows classic circular loader going around the
display, implemented by rendering `ScreenBorder` and hiding it by 5
black rectangles which progressively diminish
- `render_loader_indeterminate` shows progress loader without known
duration, implemented by rendering `ScreenBorder` in clip which travels
around the SCREEN in an octagonal shape. This achieves an effect of a
constant length line going around the screen shape
- implement `show_progress` and `show_progress_coinjoin` FirmwareUI
functions
chore(eckhart): remove animation code from Header
2025-05-30 17:38:16 +02:00
obrusvit
843ef7d441
feat(eckhart): extract tile pattern constants
2025-05-30 17:38:16 +02:00
obrusvit
9a70930388
fix(core): prevent overflow in storage UI callback
...
- this PR makes sure that the reported `wait` argument (in seconds) does
not underflows to "4294967 seconds"
- this can ocassionaly happen in animated loader
[no changelog]
2025-05-30 17:38:16 +02:00
obrusvit
ad94f5e0a5
feat(core): animate ProgressLayout in Python
...
- the commit allows for smoother animation of the `ProgressLayout` by
stepping through the reported progress
2025-05-30 17:38:16 +02:00
obrusvit
f77ca411b2
chore(eckhart): re-export new Close icon
2025-05-30 17:38:16 +02:00
Lukas Bielesch
11d780a337
feat(eckhart): add FIDO2 support
...
- enable vertical menu swipe without animations
- FidoCredential component, confirm_fido flow and icons
- Fix show_error action bar and header colors
- Implement AllowedTextContent for FidoCredential
- Add new return type for VerticalMenuScreen
- provide short and long vertical menu
2025-05-30 17:38:16 +02:00
Lukas Bielesch
b3a114ee67
chore(eckhart): Implement new struct for word-selection menu
...
This simplifies the implementation of the verical menu
2025-05-30 17:38:16 +02:00
Lukas Bielesch
7e7015734d
core(eckhart): Update Vertical Menu
...
Leave event processing to the Vertical Menu
Disable scrolling when the menu fits the screen
2025-05-30 17:38:16 +02:00
obrusvit
ae02d77852
feat(eckhart): use gradients in ActionBar
2025-05-30 17:38:16 +02:00
obrusvit
c48e8f8a90
feat(eckhart): fix hint padding
2025-05-30 17:38:16 +02:00
Lukas Bielesch
994b61e38b
fix(eckhart): fix failing gen_check and rust tests
2025-05-30 17:38:16 +02:00
Martin Milata
39a1c81154
refactor(core): device menu modules
...
[no changelog]
2025-05-30 17:38:16 +02:00
Ioan Bizău
b1dce3974f
feat(eckhart): introduce the device menu
...
- also add layouts for device pairing
- send device name and version to the device menu
2025-05-30 17:38:16 +02:00
obrusvit
6a208e9efa
feat(eckhart): gradient buttons
2025-05-30 17:38:16 +02:00
obrusvit
5f13250963
chore(eckhart): remove Hint animation code
2025-05-30 17:38:16 +02:00
Lukas Bielesch
418ae5d4cd
fix(eckhart): Fix behavior of set brightness screen:
...
Do not confirm brightness by releasing finger, but by pressing the cross button.
2025-05-30 17:38:16 +02:00
obrusvit
19b116894e
feat(eckhart): improve confirmations
2025-05-30 17:38:16 +02:00
obrusvit
0bc1f2f44d
feat(eckhart): auto PaginateOnly for TextScreen
...
- make sure that TextScreen has at least PaginateOnly ActionBar if the
content doesn't fit
2025-05-30 17:38:16 +02:00
obrusvit
53fbe51595
feat(eckhart): improve pagination of ActionBar
...
- Single mode now handles pagination with the right_button shown at the
last page
- new PaginateOnly mode to only render navigation buttons without
cancel/confirm buttons
2025-05-30 17:38:16 +02:00
Lukas Bielesch
3f1b5a9e28
chore(eckhart): minor improvements
...
- update trace function for firmware components
- add missing button requests
- update get address flow
- require long press to lock even with disabled animations
2025-05-30 17:38:16 +02:00
Lukas Bielesch
fa8e93d64a
fix(eckhart): fix last pending char for max len passphrase
2025-05-30 17:38:16 +02:00
Lukas Bielesch
5fa68d15a3
chore(automation): enable T3W1 CI jobs and tests
...
- eckhart tests
- add Eckhart screen buttons
- rename passphrase click test file + fixtures
- eckhart click tests
- eckhart persistance tests
- eckhart device tests
- skip tests for unimplemented features
2025-05-30 17:38:16 +02:00
Lukas Bielesch
43cd9b4c10
feat(eckhart): set brightness screen
2025-05-30 17:38:16 +02:00
Lukas Bielesch
ad9002307e
chore(eckhart): Update warnings title
2025-05-30 17:38:16 +02:00
Lukas Bielesch
51147804c9
feat(eckhart): confirm summary and output
2025-05-30 17:38:16 +02:00
Lukas Bielesch
5ac9457b0c
chore(eckhart): TextScreen improvements
...
- add mono light font + remove trailing hyphen from mono style
- text screen subtitle
2025-05-30 17:38:16 +02:00
Lukas Bielesch
aee3b2b6ac
fix(eckhart): minor fixes for recovery and reset screens
...
correct placement of numbers on the keypad,
fix number input screen for double-digit numbers,
remove unused menu button, use double action bar instead,
fix inconsistent hint use
update warning titles
2025-05-30 17:38:16 +02:00
Lukas Bielesch
0f4a64eea6
feat(eckahrt): continue_recovery and show_success
...
- make recovery notifications layout-specific
2025-05-30 17:38:16 +02:00
Lukas Bielesch
a465bfdb2e
chore(eckhart): implement checklist screen & flow
2025-05-30 17:38:16 +02:00
obrusvit
24b4048916
feat(eckhart): default homescreen
...
- make homescreen hold to lock, lock the device by long-pressing the homescreen anywhere but the
action bar
2025-05-30 17:38:16 +02:00
obrusvit
9e92a23190
feat(eckhart): implement several FirmwareUI fns
...
- confirm_emphasize
- show_error
- homescreen ButtonContent
- homescreen and lockscreen
- HomeScreen, ConfirmHomescreen full-screen components
- confirm_set_new_pin
- fix clippy and style
2025-05-30 17:38:16 +02:00
obrusvit
7da1f732d8
feat(eckhart): implement BootloaderUI
...
- skimmed variants of Header, ActionBar, TextScreen, Menu
- implement ErrorScreen
- implement WelcomeScreen
- implement bootloader loader
- the implementation sits in the separate file `ui_bootloader.rs`
2025-05-30 17:38:16 +02:00
obrusvit
73ccb96fe6
chore(eckhart): cleanup code
...
- feature-gate non-bootloader fonts
- delete old bootloader components
- cleanup theme module
2025-05-30 17:38:16 +02:00
Lukas Bielesch
c777caf087
feat(eckhart): receive address flow
...
- add new action bar mode
- full-screen QR screen component
- show danger flow
- update address warnings
2025-05-30 17:38:16 +02:00
Lukas Bielesch
5cc3a0dfdb
refactor(eckhart): update fonts and disabled button style
...
- Fix translation pattern
2025-05-30 17:38:16 +02:00
obrusvit
fee5624590
refactor(eckhart): ignore empty description
...
- don't show empty text in confirm_action
2025-05-30 17:38:16 +02:00