1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-04-23 02:29:10 +00:00
Commit Graph

2297 Commits

Author SHA1 Message Date
Lukas Bielesch
df11e56bd9 refactor(eckhart): update fonts and disabled button style 2025-04-16 17:11:07 +02:00
Lukas Bielesch
4da4481852 refactor(eckhart): remove unused param 2025-04-16 17:11:07 +02:00
Lukas Bielesch
c107719c80 chore(eckhart): Fix translation pattern 2025-04-16 17:11:07 +02:00
obrusvit
92341beae3 refactor(eckhart): ignore empty description
- don't show empty text in confirm_action
2025-04-16 17:11:07 +02:00
obrusvit
2c569ed56c feat(eckhart): improve ActionBar content
- button content is moved towards the center a bit
- shrink left button at the last page of paginated component
- change the order of render in `TextScreen` to account for Header
overlay. If the main content reaches the Header area, we do not want to
overlay it during Hold to Confirm animation
2025-04-16 17:11:07 +02:00
obrusvit
b95e10cd40 refactor(eckhart): separate theme to fw and bld 2025-04-16 17:11:07 +02:00
obrusvit
1af39590be refactor(eckhart): separate firmware components 2025-04-16 17:11:07 +02:00
Lukas Bielesch
8e7a26e1ae feat(eckhart): full-screen input number component 2025-04-16 17:11:07 +02:00
Lukas Bielesch
18d9f936db chore(eckhart): add action bar touch expansion function 2025-04-16 17:11:07 +02:00
Lukas Bielesch
dfba5bd5b4 chore(eckhart): add plus and minus icons 2025-04-16 17:11:07 +02:00
Lukas Bielesch
bfc5e64db4 chore(eckhart): update existing components accordint to new design 2025-04-16 17:11:07 +02:00
Lukas Bielesch
a73f6ee476 feat(eckahrt): implement show info UI trait function 2025-04-16 17:11:07 +02:00
Lukas Bielesch
c5ca22dc2f feat(eckhart): prompt backup flow 2025-04-16 17:11:07 +02:00
Lukas Bielesch
f45a4911bb chore(eckhart): temporarily implement show progress UI trait function 2025-04-16 17:11:07 +02:00
Lukas Bielesch
20e298f793 feat(eckhart): confirm reset flow 2025-04-16 17:11:07 +02:00
Lukas Bielesch
d2161dc04f chore(eckhart): add warning text styles 2025-04-16 17:11:07 +02:00
Lukas Bielesch
41f20fca27 chore(eckhart): implement Swipable trait for vertical menu screen 2025-04-16 17:11:07 +02:00
Lukas Bielesch
e9efdde79b core(eckhart): Fix failing unit test and warnings 2025-04-16 17:11:07 +02:00
Lukas Bielesch
4b27290f27 feat(eckhart): Full-screen get count component 2025-04-16 17:11:07 +02:00
obrusvit
2ccdee577b feat(eckhart): add easing and rollback to HtC anim
- also switch corner icons to 4px width
2025-04-16 17:11:07 +02:00
obrusvit
46c1ff7e9f feat(eckhart): add alpha to ScreenBorder 2025-04-16 17:11:07 +02:00
obrusvit
42d37de9fa chore(eckhart): fix some clippy warnings 2025-04-16 17:11:07 +02:00
Lukas Bielesch
92f374b57b feat(eckhart): Add SLIP39 input component 2025-04-16 17:11:07 +02:00
Lukas Bielesch
f0a43e4cdd feat(eckhart): Add BIP39 input component 2025-04-16 17:11:07 +02:00
Lukas Bielesch
6d50deb5c2 feat(eckhart): full-screen mnemonic component 2025-04-16 17:11:07 +02:00
Lukas Bielesch
dc91cd6cf7 feat(eckhart): passphrase flow 2025-04-16 17:11:07 +02:00
Lukas Bielesch
85fdb09dd1 feat(eckhart): full-screen passphrase component 2025-04-16 17:11:07 +02:00
Lukas Bielesch
953c22234d feat(eckhart): full-screen PIN keyboard component 2025-04-16 17:11:07 +02:00
Lukas Bielesch
fead59d7b4 feat(eckhart): keypad component 2025-04-16 17:11:07 +02:00
Lukas Bielesch
6db3ce4d84 feat(ui): Add visibility-checking function to Maybe struct 2025-04-16 17:11:07 +02:00
Lukas Bielesch
3820c1ae9e feat(ui): Add function for expanding Button touch area 2025-04-16 17:11:07 +02:00
Lukas Bielesch
83103ecb67 feat(eckhart): Add common keyboard functionality 2025-04-16 17:11:07 +02:00
Lukas Bielesch
ed7d562a53 feat(eckhart): keyboard button styles 2025-04-16 17:11:07 +02:00
Lukas Bielesch
9eb4cc37bc feat(eckhart): Add parametrized content offset to Button 2025-04-16 17:11:07 +02:00
Lukas Bielesch
05d61962da chore(eckhart): Add dynamic padding option to vertical menu. Update rendering of separarators in vertical menu. 2025-04-16 17:11:07 +02:00
Lukas Bielesch
e527ed0253 feat(eckhart): full-screen select word component 2025-04-16 17:11:07 +02:00
Lukas Bielesch
eb782da19a chore(eckhart): Remove redundant code 2025-04-16 17:11:07 +02:00
Lukas Bielesch
c46be8a6a9 chore(eckhart): Add dynamic padding option to vertical menu.
Update rendering of separarators in vertical menu.
2025-04-16 17:11:07 +02:00
Lukas Bielesch
08389a3ea9 feat(eckhart): Add new Button 'is_pressed' function 2025-04-16 17:11:07 +02:00
Lukas Bielesch
06096ddf29 chore(eckhart): fix button text and subtext rendering 2025-04-16 17:11:06 +02:00
Lukas Bielesch
e772677b06 feat(eckhart): button styles for select word component 2025-04-16 17:11:06 +02:00
Lukas Bielesch
39b81b9d2d feat(eckhart): share words flow 2025-04-16 17:11:06 +02:00
Lukas Bielesch
93c78b548b feat(eckhart): full-screen share words component 2025-04-16 17:11:06 +02:00
Lukas Bielesch
9c4cf034db chore(eckhart): improve HTC animation 2025-04-16 17:11:06 +02:00
obrusvit
82e58ced3b feat(eckhart): expand touch area of ActionBar 2025-04-16 17:11:06 +02:00
obrusvit
a5bb525c73 feat(eckhart): implement hold to confirm anim
- HoldToConfirmAnim is driven by the ActionBar in case the right_button
is configured with `long_press`
- HoldToConfirmAnim optionally draws an Header overaly with custom text
- disabling animations is respected
- easing function is not yet finalized
- a few minor fixes along the way
2025-04-16 17:11:06 +02:00
obrusvit
13009079e7 feat(eckhart): implement ScreenBorder overlay
- a static "custom shape" for eckhart layout which displays screen
overlay around the borders
2025-04-16 17:11:06 +02:00
Lukas Bielesch
8761702970 feat(eckhart): Update vertical menu components 2025-04-16 17:11:06 +02:00
Lukas Bielesch
0a49c0f8e0 feat(eckhart): Add new Back Header message type 2025-04-16 17:11:06 +02:00
Lukas Bielesch
1cfedce1ce feat(eckhart): Add MenuItem button content type 2025-04-16 17:11:06 +02:00
Lukas Bielesch
f0b8d4a342 feat(eckhart): Add battery icons 2025-04-16 17:11:06 +02:00
Lukas Bielesch
894e13fd35 feat(eckhart): Add vertical menu button styles 2025-04-16 17:11:06 +02:00
obrusvit
7fb08ce429 feat(eckhart): full-screen vertical menu component 2025-04-16 17:11:06 +02:00
obrusvit
35b91b6718 feat(eckhart): implement a few show_xyz functions 2025-04-16 17:11:06 +02:00
obrusvit
ffb3be40e7 feat(eckhart): implement confirm_value 2025-04-16 17:11:06 +02:00
obrusvit
73e1f8d44c feat(eckhart): implement confirm_action 2025-04-16 17:11:06 +02:00
obrusvit
b28b6acae2 feat(core): add color op to FormattedText
[no changelog]
2025-04-16 17:11:06 +02:00
obrusvit
1e402975b9 feat(eckhart): full-screen textual component
- TextScreen is a full-screen component for (paginated) texts
- it's supposed to wrap FormattedText or Paragraphs
2025-04-16 17:11:06 +02:00
obrusvit
bf0ad662f3 feat(eckhart): action bar component 2025-04-16 17:11:06 +02:00
obrusvit
9f9f2deaed feat(eckhart): hint component 2025-04-16 17:11:06 +02:00
obrusvit
5612d62767 feat(eckhart): header component 2025-04-16 17:11:06 +02:00
obrusvit
501cd26f63 feat(eckhart): provisional homescreen 2025-04-16 17:11:06 +02:00
obrusvit
285ac80b16 feat(eckhart): text styles 2025-04-16 17:11:06 +02:00
obrusvit
87e997e9a4 feat(eckhart): add fonts 2025-04-16 17:11:06 +02:00
obrusvit
abd54c7afe feat(eckhart): icon set 2025-04-16 17:11:06 +02:00
obrusvit
2c379a6c58 feat(eckhart): color palette 2025-04-16 17:11:06 +02:00
obrusvit
3a7e275fce feat(eckhart): initial commit
- build
- directory structure
- bootloader UI and assets copied from delizia
- FirmwareUI trait functions are empty
- Python layout functions are copied from delizia except some of more
complicated ones which raise NotImplemented for now
2025-04-16 17:11:06 +02:00
Roman Zeyde
d50181b7f9 fix(core): check QSTR run-time allocations only for frozen debug builds
[no changelog]
2025-04-15 14:22:47 +03:00
Martin Milata
2a40d91790 refactor(core): convert modtrezorio.ble to rust
[no changelog]
2025-04-15 13:08:37 +02:00
Martin Milata
b35d2f4000 refactor(core/rust): expose RuntimeError
[no changelog]
2025-04-15 13:08:37 +02:00
Martin Milata
1c09490f3b refactor(core/io): add pairing_code to ble_command_data_t
[no changelog]
2025-04-15 13:08:37 +02:00
matejcik
a50e49afa9 chore(core): include T3B1 certificate for the emulator 2025-04-15 12:37:25 +02:00
matejcik
0db727b21b chore(core): include T3W1 certificate for the emulator 2025-04-15 12:37:25 +02:00
Roman Zeyde
9bd81926af feat(core): check for runtime QSTR allocations
[no changelog]
2025-04-14 22:42:16 +03:00
Roman Zeyde
2975a07f1f chore(core): remove unused path definitions from MicroPython emulator
[no changelog]
2025-04-14 22:42:05 +03:00
Roman Zeyde
c2dd63a6bd chore(core): move core/prof into core/src/prof
It would allow interning profiling-related QSTRs in debug emulator builds.

[no changelog]
2025-04-14 22:40:52 +03:00
Roman Zeyde
c90b30fbf7 chore(core): intern Monero-related QSTRs
[no changelog]
2025-04-14 22:39:24 +03:00
Roman Zeyde
599c17cd29 build(core): refactor qstrdefsport.h generation
Allow excluding debug-related QSTRs.

[no changelog]
2025-04-14 22:39:24 +03:00
Roman Zeyde
6473b3ca48 feat(vendor): update MicroPython to support sorted qstr pools
Requires https://github.com/trezor/micropython/pull/20.

[no changelog]
2025-04-14 21:20:08 +03:00
Andrew Kozlik
e80e979fdd docs(core): Document Optiga configuration.
[no changelog]
2025-04-14 17:10:07 +02:00
cepetr
8a636bd9cf fix(core): make mod_trezorio_poll return False only on timeout
[no changelog]
2025-04-14 12:30:52 +02:00
cepetr
75f9821cf1 fix(core): improve rgb_led driver deinitialization
[no changelog]
2025-04-09 22:10:11 +02:00
cepetr
0b673c2772 fix(core): fix ft6x36 interrupt pin deinitialization
[no changelog]
2025-04-09 22:10:11 +02:00
cepetr
ad80d5c1de fix(core): fix tropic driver deinitialization
[no changelog]
2025-04-09 22:10:11 +02:00
cepetr
47d1378d28 refactor(core): simplify display driver deinitialization
[no changelog]
2025-04-09 22:10:11 +02:00
cepetr
2017c5931e feat(core): optimize pmic power consumption
[no changelog]
2025-04-09 22:10:11 +02:00
cepetr
9537c8a80d feat(core): deinitialize tropic driver before suspending
[no changelog]
2025-04-09 22:10:11 +02:00
Martin Milata
23cc83f3ba refactor(core): ble: expose connection state in micropython
[no changelog]
2025-04-09 21:25:37 +02:00
Martin Milata
fe20466ed7 fix(core): modtrezorio-ble cleanup
[no changelog]
2025-04-09 21:25:37 +02:00
Martin Milata
0ecff7182b build(core): allow ble feature in emulator
[no changelog]
2025-04-09 21:25:37 +02:00
Ioan Bizău
40756a0941 fix(core/ui): use "..." ellipsis in "show more" 2025-04-09 15:57:01 +02:00
Martin Milata
828e1868ab docs: fix broken changelog links 2025-04-09 10:11:21 +02:00
obrusvit
ad9f85b21d chore(core): remove redundant Error messages
[no changelog]
2025-04-08 15:44:51 +02:00
Roman Zeyde
8df465d7e8 build(core): replace all_modules.py by qstrdefsport.h
[no changelog]
2025-04-07 20:19:31 +03:00
Roman Zeyde
879cc69c63 perf(core): intern non-alphanumeric characters
It was found by running `micropython.mem_info()` with the following patch:
```diff
diff --git a/py/gc.c b/py/gc.c
index 604334c95..bff62b754 100644
--- a/py/gc.c
+++ b/py/gc.c
@@ -840,6 +840,7 @@ void gc_dump_info(void) {
         (uint)info.total, (uint)info.used, (uint)info.free);
     mp_printf(&mp_plat_print, " No. of 1-blocks: %u, 2-blocks: %u, max blk sz: %u, max free sz: %u\n",
         (uint)info.num_1block, (uint)info.num_2block, (uint)info.max_block, (uint)info.max_free);
+    qstr_dump_data();
 }

 void gc_dump_alloc_table(void) {
```

New QSTR definitions:
```
$ tail -n4 ./core/build/unix/genhdr/qstrdefs.generated.h
QDEF(MP_QSTR__paren_close_, 46476, 1, ")")
QDEF(MP_QSTR__paren_open_, 46477, 1, "(")
QDEF(MP_QSTR__lt_, 46489, 1, "<")
QDEF(MP_QSTR__semicolon_, 46494, 1, ";")
```

[no changelog]
2025-04-07 20:19:31 +03:00
cepetr
b50e201ea5 fix(core): improve simulation of lost TOUCH_START events
[no changelog]
2025-04-07 17:49:04 +02:00
cepetr
a6bfe399ff fix(core): ensure touch_get_event does not return zero after TOUCH_START
[no changelog]
2025-04-07 17:49:04 +02:00
cepetr
dd2af348dc fix(core): ensure touch_get_state does not return 0
[no changelog]
2025-04-07 17:49:04 +02:00
cepetr
f46bfb4bfe feat(core): fix out-of-range touch coordinates on T3W1
[no changelog]
2025-04-07 17:49:04 +02:00
tychovrahe
f1120d53c2 fix(core/prodtest): provide BLE driver with pairing code when accepting pairing
[no changelog]
2025-04-07 15:05:57 +02:00