1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-02-27 14:52:10 +00:00
Commit Graph

914 Commits

Author SHA1 Message Date
tychovrahe
10f3011663 feat(core/prodtest): add touch-draw command to prodtest
[no changelog]
2025-02-26 08:53:36 +01:00
matejcik
cd6ad7312e fix(core): delizia tutorial should allow swipe-up from confirmation screens 2025-02-26 01:17:11 +01:00
matejcik
2dc14ad1e0 fix(core): modify Delizia tutorial to account for tap-to-continue 2025-02-26 01:17:11 +01:00
matejcik
6441d41646 fix(core): change "Swipe up" to "Tap to continue" everywhere 2025-02-26 01:17:11 +01:00
matejcik
f04b022662 refactor(core/rust): add a helper for a swipeup-footer 2025-02-26 01:17:11 +01:00
matejcik
b015eac9f7 style(core/rust): fix clippy complaints 2025-02-26 01:17:11 +01:00
matejcik
18fc7e1f82 refactor(core/rust): remove internal pager from SwipePage 2025-02-26 01:17:11 +01:00
matejcik
6906b532bb feat(core/rust): enlarge delizia footer touch area to make it easier to hit 2025-02-26 01:17:11 +01:00
matejcik
1f0ec4d3c0 fix(core/rust): respond to the correct button in Address info 2025-02-26 01:17:11 +01:00
matejcik
741731638b refactor(core/rust): force recalculate Paragraphs visibility when updating content 2025-02-26 01:17:11 +01:00
matejcik
2982f6db37 refactor(core/rust): propagate footer button message everywhere
this generally simplifies the mappings of Frame messages, but also
relies on the button actions being properly set up.
2025-02-26 01:17:11 +01:00
matejcik
f0746e44fe feat(core/rust): delizia hotfix - make footer act as a swipe-up button
We introduce a new variant FlowMsg::Next, used only internally (for
now). Sending FlowMsg::Next indicates we want to proceed to the next
screen of the flow.

If there is internal pagination, Next will play a simulated swipe to the
child component.
2025-02-26 01:17:11 +01:00
matejcik
51e796ee30 feat(core/rust): introduce trait PaginateFull throughout Delizia
PaginateFull uses Pager instead of reporting just the total number of
pages. Delizia will rely on this trait; going forward, we'll want
PaginateFull to replace Paginate, but this refactor would be too big if
we also needed to include Caesar and Bolt in it
2025-02-26 01:17:11 +01:00
matejcik
6c8391ab18 feat(core/rust): introduce Pager 2025-02-26 01:17:11 +01:00
Ioan Bizău
6c38f0d63d feat(core): friendlier way to confirm long messages 2025-02-25 22:51:16 +01:00
Ioan Bizău
64b9084b6c feat(core/ui): ability to cancel recovery on word count selector 2025-02-25 20:30:39 +01:00
Roman Zeyde
19c9e502d7 feat(core): add new translation entries for Solana staking layouts
[no changelog]
2025-02-25 11:55:03 +01:00
Roman Zeyde
803955b047 feat(core): add description to Delizia confirm_output()
It will allow confirming the vote account for Solana staking.

[no changelog]
2025-02-25 11:55:03 +01:00
Roman Zeyde
8a5373c733 feat(core): add extra info item to summary menu on Delizia
It will allow confirming the blockhash for Solana transactions.

Also, simplify arguments passing into `new_confirm_output()`.

[no changelog]
2025-02-25 11:55:03 +01:00
Roman Zeyde
2284b338c8 feat(core): skip empty fee entry in UICaesar::confirm_summary
Otherwise, we may get an additional empty confirmation screen.

[no changelog]
2025-02-25 11:55:03 +01:00
matejcik
61a3382abd fix(core/rust): increase capacity of debug error message
slicing the str like before is wrong because we may just happen to hit
in the middle of an utf8 sequence, which will cause a silent panic.
this way we at least get a visible panic: either "Text too long: <full
text>", or "unwrap failed" if the text doesn't fit into the 128-byte
string instance
2025-02-20 16:09:14 +01:00
matejcik
68d979a513 fix(core): exclude unused strings from firmware
this will prevent Rust code from building if it relies on a removed
string, and raise an AttributeError in python
2025-02-20 16:09:14 +01:00
matejcik
ca78c01e28 build(core/rust): fix cargo build without envvars
...restoring functionality of rust-analyzer
2025-02-19 19:21:38 +01:00
obrusvit
45adcd963a refactor(core): remove unused delizia component
[no changelog]
2025-02-18 13:04:44 +01:00
Roman Zeyde
ae3b6434fc feat(core): allow more paragraphs in ShowInfoParams
Otherwise, it fails when showing 4 items.

Note that each item results in 2 paragraphs (key and value).
Also, items are separated by an empty paragraph.

So 3 items use 8 (2*3+2) paragraphs and 4 items use 11 (2*4+3) paragraphs.

[no changelog]
2025-02-18 12:32:35 +01:00
Roman Zeyde
0abfc7b1f9 fix(core): correct Delizia loader completion detection
This issue was found while debugging a flaky click test:
`tests/click_tests/test_lock.py::test_hold_to_lock`

Sample failures:
https://github.com/trezor/trezor-firmware/actions/runs/13209659963/job/36880750418
https://github.com/trezor/trezor-firmware/actions/runs/13189762414/job/36820368643
https://github.com/trezor/trezor-firmware/actions/runs/13146713535/job/36686537519
https://github.com/trezor/trezor-firmware/actions/runs/13124809110/job/36619045092
https://github.com/trezor/trezor-firmware/actions/runs/13103415015/job/36554567296
https://github.com/trezor/trezor-firmware/actions/runs/13093382180/job/36532710349

[no changelog]
2025-02-18 12:29:32 +01:00
tychovrahe
79d14b8907 fix(core): fix TS5 bootloader font
[no changelog]
2025-02-14 09:51:45 +01:00
Roman Zeyde
d38b52c0c4 refactor(core): simplify fade_backlight_duration
- IIUC, casting to and from `i32` can be removed.
- `timer.elapsed()` can be evaluated once per loop iteration.

[no changelog]
2025-02-12 12:33:14 +01:00
tychovrahe
57789c7121 refactor(core): remove fonts and no longer used drawing functions from C
[no changelog]
2025-02-11 11:25:18 +01:00
tychovrahe
c3981cdebe refactor(core): render prodtest UI in rust
[no changelog]
2025-02-11 11:25:18 +01:00
cepetr
7c7e8c8eb7 feat(core): add simple downscaling for bitmap copy ops
[no changelog]
2025-02-11 09:38:49 +01:00
cepetr
c2125f433e feat(core): implement rgba8888 canvas blur
[no changelog]
2025-02-11 09:38:49 +01:00
cepetr
0345c1dfed feat(core): introduce hardware jpeg decoder
[no changelog]
2025-02-11 09:38:49 +01:00
cepetr
e7c773bdd0 chore(core): remove unused code
[no changelog]
2025-02-11 09:38:49 +01:00
Roman Zeyde
e3a9f71069 fix(core): correct a small typo
[no changelog]
2025-02-08 19:39:54 +01:00
obrusvit
bfa73d615b refactor(core): feature-gate non-bootloader fonts
- a crutch to preserve code which depends on specific fonts
- see https://github.com/trezor/trezor-firmware/issues/4574

[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
626a56a702 refactor(core): remove unused fonts
[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
991b3662f0 refactor(core): do not expose fonts outside layouts
- common components now take Font as a parameter, e.g. shape::Text
- FormattedText now does not have `text_normal(txt)`, `text_bold(txt)`
methods etc. but we use `text(txt, font)` instead

[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
e73ca8b481 refactor(core): map FontInfo to translation idx
[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
be459019b8 refactor(core): switch fonts from C to Rust
- switch common and individual layout components to Rust fonts
- font usage changed from enum Font to pointers to FontInfo structs

[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
2e44bf07fd feat(core): add manual font mods to Rust font data
- see https://github.com/trezor/trezor-firmware/issues/3771

[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
9f9c640648 feat(core): add Rust font data
[no changelog]
2025-02-06 13:32:29 +01:00
obrusvit
cf5b89f90a refactor(core): get rid of font IDs in micropython
- application layer should not deal with fonts at all
- distinction between MONO and others is preserved by bool argument in
`should_show_more` interpreted as `is_data`

[no changelog]
2025-02-06 13:32:29 +01:00
tychovrahe
411e8779f7 fix(core): add fade-in to boot stage 2 screen if backlight was reset
[no changelog]
2025-02-02 22:41:17 +01:00
tychovrahe
06a722cc74 fix(core): fix boot screen background color when showing no-warning vendor info
[no changelog]
2025-01-31 10:04:06 +01:00
tychovrahe
671c3e2a65 fix(core): unify size of enums between rust and C
[no changelog]
2025-01-29 09:10:35 +01:00
tychovrahe
399aa4f2ea fix(core): adjust jpeg cache size to allow work on larger displays
[no changelog]
2025-01-29 09:10:10 +01:00
Roman Zeyde
96ac4e263c refactor(core): reduce ui::layout_delizia::component::header::Header size
[no changelog]
2025-01-28 14:21:43 +02:00
tychovrahe
5fd773757c fix(core): fix fading issues 2025-01-23 15:24:00 +01:00
tychovrahe
a5809c872e feat(core): add support for setting BLE name from Trezor firmware
[no changelog]
2025-01-23 13:27:59 +01:00