1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-30 10:08:18 +00:00
Commit Graph

702 Commits

Author SHA1 Message Date
matejcik
ed89215a79 feat(core): expose StorageMessage to micropython
[no changelog]
2024-03-30 12:10:59 +01:00
matejcik
b2649b0085 refactor(core): introduce Simplified trait
to abstract over some common operations between models

[no changelog]
2024-03-28 13:04:21 +01:00
cepetr
a1165d9326 feat(core): introduce skip function for UzlibContext
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
9575c81bd3 feat(core): introduce new color functions
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
474484d249 feat(core): introduce new toif functions
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
254de49a62 feat(core): introduce new point & rect functions
[no changelog]
2024-03-20 17:14:58 +01:00
cepetr
9d6827e2fb refactor(core): remove unused ui components
[no changelog]
2024-03-20 17:04:25 +01:00
cepetr
dc715d7c0d refactor(core): prepare for non mutable paint function
[no changelog]
2024-03-19 17:57:38 +01:00
cepetr
a54fe5e60f fix(core): fixed blurring algo panic in debug mode
[no changelog]
2024-03-19 14:54:54 +01:00
dependabot[bot]
3dc5e9b2db chore(deps): bump shlex from 1.0.0 to 1.3.0 in /core/embed/rust/fuzz
Bumps [shlex](https://github.com/comex/rust-shlex) from 1.0.0 to 1.3.0.
- [Changelog](https://github.com/comex/rust-shlex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/comex/rust-shlex/commits)

---
updated-dependencies:
- dependency-name: shlex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 11:49:06 +01:00
dependabot[bot]
bd3b070942 chore(deps): bump shlex from 1.1.0 to 1.3.0 in /core/embed/rust
Bumps [shlex](https://github.com/comex/rust-shlex) from 1.1.0 to 1.3.0.
- [Changelog](https://github.com/comex/rust-shlex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/comex/rust-shlex/commits)

---
updated-dependencies:
- dependency-name: shlex
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 10:41:53 +01:00
tychovrahe
e000b526cc refactor(core): extract common layout handling from bootloader ui implementations in rust
[no changelog]
2024-03-15 13:13:40 +01:00
matejcik
17678ef38d fix(core/rust): exclude altcoin strings from generated code 2024-03-08 13:17:12 +01:00
matejcik
ccf4b7e9eb fix(core/rust): convert bitcoin_only to an additive feature
universal_fw enables more features, as opposed to bitcoin_only removing features
2024-03-08 13:17:12 +01:00
matejcik
34965ca2cb refactor(core/ui): use LayoutObj signatures in layout files
* make sure every confirm_* returns None
* prefer "def -> Awaitable[T]" to "async def -> T" everywhere (avoids one useless allocation per call)
* type-check return values from Rust layouts
2024-03-07 09:53:00 +01:00
matejcik
0304484ca6 docs(core): add method signatures for LayoutObj to mocks (fixes #2672)
feat(core): annotate CONFIRMED/CANCELLED/INFO as fake class UiResult
2024-03-07 09:53:00 +01:00
matejcik
99457bbcb0 refactor(core/ui): make request_number signature the same in TT and TR 2024-03-07 09:53:00 +01:00
Martin Milata
bfacd07ed7 fix(core): add production pubkeys for translations
[no changelog]
2024-03-04 12:16:20 +00:00
tychovrahe
afefc17478 refactor(core): use internal framebuffer on T3T1 (with ST7789V display controller)
[no changelog]
2024-02-29 23:40:17 +01:00
tychovrahe
66583f2ebf fix(core): fix missing refresh in progress layout
[no changelog]
2024-02-29 23:40:17 +01:00
tychovrahe
72dc8f57e8 feat(core): add haptic feedback
[no changelog]
2024-02-29 23:05:56 +01:00
tychovrahe
8150636a81 feat(core): add basic support for STM32U5 2024-02-29 23:05:56 +01:00
cepetr
937b7d34d0 feat(core): add STM32CubeU5 submodule
[no changelog]
2024-02-29 23:05:56 +01:00
Martin Milata
d790354667 fix(core): workaround umlauts not being cleared
[no changelog]
2024-02-29 11:22:35 +00:00
matejcik
8c0e1e360e fix(core/translations): add indices to templates
so that we can change the template later without running into trouble

[no changelog]
2024-02-26 15:07:48 +01:00
obrusvit
ebcf3e2db2 feat(core): confirm ETH stake, unstake, claim 2024-02-23 18:09:43 +01:00
obrusvit
e1f696b4dd fix: remove clippy error for TS3
[no changelog]
2024-02-22 12:10:12 +01:00
grdddj
1ab2d843ab chore(core): add missing template to the variable name
[no changelog]
2024-02-21 12:44:40 +01:00
tychovrahe
8147b11345 fix(core): fix quadword-only storage
[no changelog]
2024-02-20 09:37:28 +01:00
grdddj
0579ba54fc feat(core): allow for going back to previous word in recovery process 2024-02-19 22:05:04 +01:00
matejcik
65178a6a36 refactor(core/rust): reuse the same component for "waiting for host" screen 2024-02-12 14:49:32 +01:00
matejcik
8471e0c455 refactor(core/rust): decouple Connect screen from bootloader theme 2024-02-12 14:49:32 +01:00
matejcik
02557ad6c0 feat(core/rust): expose attrtuple to Rust 2024-02-12 14:49:32 +01:00
matejcik
6af7b4a4b7 fix(core/rust): convert Qstr type to representation that matches C code 2024-02-12 14:49:32 +01:00
matejcik
ab3c62ae71 feat(core/rust): introduce SimpleTypeObj 2024-02-12 14:49:32 +01:00
matejcik
3e14937c8a feat(core/rust): add const Obj::small_int 2024-02-12 14:49:32 +01:00
matejcik
63360a7417 feat(core/rust): add Map::is_empty() 2024-02-12 14:49:32 +01:00
matejcik
9c72c7c99d feat(common): provide some useful paths for the mako templates 2024-02-12 14:49:32 +01:00
matejcik
03298ca80f docs(core/rust): improve safety comments in buffer.rs 2024-02-12 14:49:32 +01:00
matejcik
0c793084f8 chore(core/rust): move illustration outside src/ tree 2024-02-12 14:49:32 +01:00
matejcik
8bf5a72843 refactor(core/rust): move iter_into_array to micropython::utils 2024-02-12 14:49:32 +01:00
matejcik
3b88116bba feat(core/rust): add trezorcrypto bindings
for now, we use sha256 and a little of ed25519 for CoSi purposes

also add the Merkle root algorithm
2024-02-12 14:49:32 +01:00
matejcik
76296ad417 refactor(core/rust): move InputStream to its own module 2024-02-12 14:49:32 +01:00
grdddj
b8ea21d24a feat(all): implement translations into Trezor
Co-authored-by matejcik <ja@matejcik.cz>
2024-02-12 14:49:32 +01:00
grdddj
dba4bf9e38 feat(core): improve the design of TT locking loader on homescreen
[no changelog]
2024-02-05 14:46:40 +01:00
grdddj
76c547bb91 feat(core): add loader to homescreen when locking the device for TS3 2024-02-05 14:46:40 +01:00
cepetr
5d8e56ac2a refactor(core): shrink size of Paragraphs struct
[no changelog]
2024-02-05 14:10:54 +01:00
cepetr
6331076444 refactor(core/embed): move TOIF format definition to rust
[no changelog]
2024-01-26 11:30:40 +01:00
cepetr
cc6ed93b32 refactor(core/embed): move toif image routines
[no changelog]
2024-01-26 11:30:40 +01:00
cepetr
139701fb1a refactor(core/embed): move&rename display_font_xxx routines
[no changelog]
2024-01-26 11:30:40 +01:00
tychovrahe
1c0da78536 chore(core): fix rust warnings and clippy errors
[no changelog]
2024-01-09 21:39:58 +01:00
grdddj
c2eaaaf8b5 fix(core): add missing semicolon into the passphrase entry for TS3 2024-01-03 14:51:56 +01:00
cepetr
6e1fe31e3f chore(core): optimize stack usage during blurring
[no changelog]
2023-12-18 10:01:30 +01:00
tychovrahe
d0a702eef4 fix(core): fix large area marquee rendering
[no changelog]
2023-12-14 17:35:27 +01:00
gabrielkerekes
a8096652e0 refactor(core): make ethereum summary reusable for more coins
- and use it for Solana
2023-12-05 22:11:41 +01:00
grdddj
747fd17214 fix(core): correct action of left button in Ethereum summary
[no changelog]
2023-12-05 18:22:58 +01:00
grdddj
9a53ba9f44 fix(core): unify button requests in modify amount flow
[no changelog]
2023-12-04 13:15:57 +01:00
grdddj
9db8ff1fae fix(core): unify sent button requests in ETH send flow
Makes sure T2B1 will send the same ButtonRequests as T2T1.
Does it by splitting the Rust layout into two separate dialogs.

[no changelog]
2023-12-04 13:15:57 +01:00
tychovrahe
a2f72b1055 feat(core): optimize boot time by drawing full logo sooner and shortening the enforced delay proportionally
[no changelog]
2023-11-30 16:46:04 +01:00
tychovrahe
7b442a2b20 fix(core): improve T2B1 homescreen checks
[no changelog]
2023-11-30 13:42:02 +01:00
matejcik
ba6cce2bbc fix(core/rust): make Toif constructor return a Result instead of Option
which is slightly more correct
2023-11-30 13:42:02 +01:00
matejcik
d674634c86 chore(core/rust): bump cstr_core, enable nightly features
So that cstr! can be used in const contexts. This is not critical but it's nice-to-have as long as we are on nightly anyway.
2023-11-30 13:42:02 +01:00
grdddj
4b87bc56d8 feat(core): set maximum number of chunkified lines to 4
[no changelog]
2023-11-27 16:03:16 +01:00
tychovrahe
c48c86d61f fix(core): add missing display_refresh calls in TT UI
[no changelog]
2023-11-22 10:26:50 +01:00
tychovrahe
c2de5506bc fix(core): add boundaries check for icon rendering (framebuffer variant)
[no changelog]
2023-11-22 10:26:50 +01:00
grdddj
1968599bbc fix(core): fix the chunkification of longer Cardano addresses in send flow
[no changelog]
2023-11-22 09:00:58 +01:00
matejcik
3a28ab4c11 feat(core): make lockscreen blank for T2B1
also allow soft-locking even when PIN is not set
2023-11-01 16:45:29 +01:00
tychovrahe
10021bf364 chore(core): fix gen and style problems
[no changelog]
2023-10-31 13:32:20 +01:00
cepetr
ba83a7e644 feat(core): introduce interaction-less upgrade 2023-10-27 16:15:15 +02:00
Martin Milata
9c5d3b4831 fix(core/ui): T2T1: nudge page_prev_ellipsis to the right
[no changelog]
2023-10-27 11:50:12 +02:00
Martin Milata
18d6b4d647 fix(core/ui): T2T1: update sign message layout 2023-10-26 18:29:52 +02:00
Martin Milata
9e33eb3e48 fix(core/ui): T2T1: display coinjoin icon on lockscreen
[no changelog]
2023-10-26 13:35:43 +02:00
grdddj
02ec0ac43c feat(core): support recipient address chunkification in Ethereum sign flow
[no changelog]
2023-10-25 11:49:43 +02:00
grdddj
37fcbceded feat(core): make middle-click unlock the device for T2B1
[no changelog]
2023-10-23 14:53:01 +02:00
Martin Milata
f26a2e909e fix(core/ui): wording in recovery flow
[no changelog]
2023-10-18 12:04:52 +02:00
Martin Milata
a353c35b78 fix(core/ui): draw hold-to-confirm loader over dialog title
[no changelog]
2023-10-16 13:18:50 +02:00
Martin Milata
d99e1eedd2 refactor(core/ui): clear display on rust side
[no changelog]
2023-10-16 13:18:50 +02:00
Martin Milata
d8e7c00087 refactor(core/ui): pagination and buttons on TT 2023-10-16 13:18:50 +02:00
Martin Milata
fca82273cf Merge branch 'release/23.09' 2023-10-11 23:34:06 +02:00
tychovrahe
df42c99bc9 feat(core): add basic support for efficient frame buffer graphics
[no changelog]
2023-10-10 19:01:43 +02:00
grdddj
532f368a14 feat(core): not allowing to send empty PIN in T2B1
[no changelog]
2023-10-02 22:14:58 +02:00
Martin Milata
f226c9599b fix(core/ui): better contrast for bip39 keyboard button
[no changelog]
2023-10-02 19:04:28 +02:00
grdddj
07fb451048 feat(core): not allowing to send empty PIN in T2B1
[no changelog]
2023-10-02 16:33:51 +02:00
Martin Milata
040f6c2c8e Merge branch 'master' into release/23.09 2023-09-29 16:42:23 +02:00
matejcik
193a53f22b feat(core/rust): use MODEL_FULL_NAME from build system
[no changelog]
2023-09-29 16:27:27 +02:00
grdddj
b07f4d938a fix(core): make the marquee take always 2 seconds to animate from end to end
[no changelog]
2023-09-29 14:19:38 +02:00
grdddj
046ff15275 feat(core): show the preview of default homescreen image
[no changelog]
2023-09-27 14:14:42 +02:00
matejcik
bb5b91b920 Merge branch 'master' into release/23.09 2023-09-27 12:58:22 +02:00
tychovrahe
a6d0842663 fix(core/bootloader): fix erroneous shutdown when rejecting firmware upload 2023-09-27 12:14:13 +02:00
grdddj
a3f137d488 feat(core): forcing the letter to always change after selection in T2B1 recovery
[no changelog]
2023-09-26 09:28:11 +02:00
grdddj
65c9380ab7 feat(core): triggering delete action in ChoicePage after 1 second even without release
[no changelog]
2023-09-26 08:07:32 +02:00
grdddj
e06335d877 feat(core/rust): differentiate between short and long button press
With the help of this, making long DELETE press delete all the
inputted characters in PIN or passphrase entries.

[no changelog]
2023-09-21 11:30:02 +02:00
tychovrahe
29c16c212d fix(core): fix T2B1 "restarting in" label capitalization
[no changelog]
2023-09-20 21:36:07 +02:00
grdddj
0c4540ae0a feat(core): show new homescreen preview for T2B1
[no changelog]
2023-09-20 13:58:05 +02:00
grdddj
42a6a5ac9b chore(core): adjust the chunkification logic to account for really mono font
Also improving the positioning of prev/next page arrows when paginating.

[no changelog]
2023-09-19 11:48:58 +02:00
tychovrahe
3c1236bf82 refactor(core): setup single-place layout selection
[no changelog]
2023-09-18 18:05:37 +02:00
Martin Milata
07027a69e9 Merge branch 'master' into release/23.09 2023-09-15 14:33:20 +02:00
grdddj
8a9354cd85 chore(core): separate confirm_output for T2B1 into two layouts so we can send a button request in between
[no changelog]
2023-09-15 09:50:21 +02:00
grdddj
bcb353a4a1 feat(core): support optional chunkification of addresses in receive and send flows 2023-09-15 09:50:21 +02:00
grdddj
4b9d22066c chore(core/rust): change the position of up arrow icon
[no changelog]
2023-09-14 11:43:43 +02:00
grdddj
568c5f135b feat(core/rust): add ChoicePage animation and hold-to-move functionality
[no changelog]
2023-09-13 17:12:51 +02:00
grdddj
272fb4842a feat(core/rust): show last entered passphrase character for T2B1
[no changelog]
2023-09-13 17:12:51 +02:00
Andrew Kozlik
db6630a5a3 feat(core): Support Optiga in Trezor firmware. 2023-09-13 15:45:48 +02:00
grdddj
70fa46a318 chore(core/rust): decrease top margin over homescreen label in T2B1
[no changelog]
2023-09-12 13:44:21 +02:00
grdddj
623e0ce468 chore(core/rust): improve vertical centering in some screens
[no changelog]
2023-09-12 11:06:38 +02:00
grdddj
d2f67d48fa chore(core/rust): transform if-elif into match
[no changelog]
2023-09-12 11:06:38 +02:00
Martin Milata
7e9f127aec feat(core): revise path warning on model T 2023-09-12 00:39:08 +02:00
Martin Milata
58ffe95369 fix(core): display XPUBs in a similar way to addresses
[no changelog]
2023-09-12 00:39:08 +02:00
grdddj
84659dc904 feat(core/rust): show WRONG PIN header in PIN entry after bad previous PIN input
[no changelog]
2023-09-11 09:29:12 +02:00
grdddj
8956350aca feat(core): create new Ethereum send flow for TT
[no changelog]
2023-09-04 13:50:30 +02:00
grdddj
eed6e0b71c feat(core): create new Ethereum send flow for TR
[no changelog]
2023-09-04 13:50:30 +02:00
grdddj
492ff958a5 feat(core): improve sign message designs
[no changelog]
2023-09-01 13:30:29 +02:00
grdddj
09cd64123b feat(core): implement show_more dialogue for TR
[no changelog]
2023-09-01 13:30:29 +02:00
grdddj
78d5abd9b1 chore(core): replace View full button text with Show all
[no changelog]
2023-08-28 12:09:58 +02:00
grdddj
bb959892ac chore(core): improve the shamir info button handling, regenerate tests
[no changelog]
2023-08-23 11:03:09 +02:00
conduition
30ddabc15b fix(core): more info button on shamir recovery screen
chore(core): add changelog
2023-08-23 11:03:09 +02:00
tychovrahe
c9a657b074 feat(core): set final name for Safe 3
[no changelog]
2023-08-18 16:14:47 +02:00
matejcik
ae7a1c7d52 refactor(core): render full/empty logo same way as in TR 2023-08-18 16:13:58 +02:00
tychovrahe
5947f8a50d feat(core): add model name below empty logo on boot
[no changlog]
2023-08-18 16:13:58 +02:00
tychovrahe
90bdab6599 fix(core): fixed unwanted delays in T2B1
[no changelog]
2023-08-18 16:13:58 +02:00
tychovrahe
17f13b4140 feat(core): design for T2B1 "unsafe, do not use" screen
[no changelog]
2023-08-15 22:08:11 +02:00
tychovrahe
e8281385f6 feat(core): implement secret handling in bootloader 2023-08-15 09:37:38 +02:00
grdddj
6f60462d12 fix(core/rust): do not increase margin of right choice items
[no changelog]
2023-08-09 13:57:09 +02:00
grdddj
5bcfd5709f chore(core/rust): change fonts in confirm_properties for TT
Making the key font NORMAL and the value MONO in all cases

[no changelog]
2023-08-09 10:50:57 +02:00
grdddj
8d78dd8872 chore(core): change some UI text and TR's screens to match the Figma designs
[no changelog]
2023-08-07 15:30:38 +02:00
grdddj
d48bae4598 chore(core/rust): delete unused NotificationFrame
[no changelog]
2023-07-28 09:41:04 +02:00
grdddj
463f0df22a chore(core): modify design of recovery flow
[no changelog]
2023-07-28 09:41:04 +02:00
grdddj
a8d57bf2c4 chore(core/rust): add missing traces to components
[no changelog]
2023-07-28 09:41:04 +02:00
grdddj
4227b5c0b9 chore(core/rust): change design of TT's disabled confirm button
[no changelog]
2023-07-18 13:01:25 +02:00
grdddj
91740ae4aa chore(core): change title of Shamir wallet creation
[no changelog]
2023-07-18 10:09:35 +02:00
grdddj
e31eb9570b chore(core/rust): change design of TR's middle button
Move the text one pixel lower so the arms touch it in its center.
Decreasing the overall height by 2 pixels.

[no changelog]
2023-07-18 09:25:01 +02:00
grdddj
52c69de138 chore(all): small design fixes
[no changelog]
2023-07-17 15:30:00 +02:00
grdddj
bc502287fc feat(core): new design of recovery dialogs
[no changelog]
2023-07-17 15:30:00 +02:00
grdddj
03f77c50e9 feat(core/rust): new design of wallet creation dialogs
[no changelog]
2023-07-17 15:30:00 +02:00
grdddj
672d6b7d13 feat(core): new design of PIN dialogs
[no changelog]
2023-07-17 15:30:00 +02:00
grdddj
10449759bf chore(core): new designs of passphrase dialogs
[no changelog]
2023-07-17 15:30:00 +02:00
grdddj
3f6a55cc3a refactor(core/rust): replace Label::new with alignment-specific constructor
[no changelog]
2023-07-17 15:30:00 +02:00
grdddj
c04cd19c6c chore(core/rust): decrease margin space between key and value paragraphs in confirm_properties
[no changelog]
2023-07-17 15:30:00 +02:00
grdddj
b5226b55c8 feat(core/rust): use loaders in coinjoin screens
[no changelog]
2023-07-17 15:30:00 +02:00
grdddj
a318706145 feat(core/rust): introduce small indeterminate loader
[no changelog]
2023-07-17 15:30:00 +02:00
grdddj
b96b9d43bb feat(core/rust): improve and use coinjoin loading screens
[no changelog]
2023-07-17 15:30:00 +02:00
grdddj
245ab416cb feat(core): regenerate exclamation mark icons to be centered in warning dialogs
[no changelog]
2023-07-14 12:00:21 +02:00
matejcik
78a8b48f1e refactor(core): generate trezorproto module straight from Rust 2023-07-12 10:09:36 +02:00
tychovrahe
eca1fc381b refactor(core): rust bindgen mcu-type related arguments are taken from board definition
[no changelog]
2023-07-07 22:09:56 +02:00
tychovrahe
ebbd7f9d35 refactor(core): restructure trezorhal, prepare to support more platforms
[no changelog]
2023-07-07 22:09:56 +02:00
tychovrahe
40b5fedbd2 fix(core): fix TT bootloader emulator backlight, fix rust warning
[no changelog]
2023-07-03 10:19:28 +02:00
tychovrahe
539420cac8 refactor(core): make backlight/fading optional
[no changelog]
2023-06-27 16:18:30 +02:00
grdddj
f9f21176fd feat(core/rust): improve progress screen design
[no changelog]
2023-06-27 07:57:45 +02:00
grdddj
64236e699f feat(core/rust): add account and address labels into send flow
[no changelog]
2023-06-27 07:57:45 +02:00
grdddj
570ffe2c0d chore(core/rust): make info button wider
[no changelog]
2023-06-27 07:57:45 +02:00
tychovrahe
4cc6413a46 chore(core/rust): fix compilation warnings
[no changelog]
2023-06-23 19:13:47 +02:00
matejcik
0ef1d20062 style(core/rust): remove unused mut 2023-06-21 14:19:03 +02:00
matejcik
437b9e5991 feat(core/rust): allow debug feature in tests (means we can print things) 2023-06-21 14:19:03 +02:00
matejcik
5a83a7171d refactor(core/rust): improve ergonomy of IterBuf 2023-06-21 14:19:03 +02:00
matejcik
b91e225076 refactor(core/rust): expose obj types and (debug only) type names 2023-06-21 14:19:03 +02:00
matejcik
ccddc8f5f3 fix(core/rust): disable stack checking in tests (fixes spurious "recursion exceeded" errors) 2023-06-21 14:19:03 +02:00
grdddj
b420064c08 feat(core/rust): improve the painting of TR's buttons + new inverse design
[no changelog]
2023-06-20 11:08:21 +02:00
grdddj
a6316f964e chore(core/rust): regenerate TR's icons based on new designs
[no changelog]
2023-06-20 11:08:21 +02:00
grdddj
13cb1ea4ce chore(core/rust): improve the design of TR's tutorial flow
[no changelog]
2023-06-20 11:08:21 +02:00
grdddj
947e2ee24f fix(core/rust): make vertical alignment for FormattedText work for paginated content
[no changelog]
2023-06-20 11:08:21 +02:00
Jan Šetina
c85102494d feat(core/ui): update colors - grey_dark and green 2023-06-20 10:58:09 +02:00
Martin Milata
cf4dcfcbd4 refactor(core/ui): namespaced Alignment2D
[no changelog]
2023-06-19 19:34:16 +02:00
Martin Milata
3a5fdfedcc fix(core/ui): minor visual tweaks
- centered title for coinjoin loader
- make device label bold on label confirmation screen

[no changelog]
2023-06-19 19:34:16 +02:00
Martin Milata
312f6899c7 feat(core/ui): vertical alignment for FormattedText
[no changelog]
2023-06-19 19:34:16 +02:00
tychovrahe
cfb674cf01 feat(core): adjust bootloader screens to look better on rectangular screens
[no changelog]
2023-06-15 17:08:14 +02:00
tychovrahe
32a2b371bd feat(core): allow different screen sizes for TT UI
[no changelog]
2023-06-15 17:08:14 +02:00
tychovrahe
d3284baf21 feat(core): support STM32F429 discovery board 2023-06-15 17:08:14 +02:00
grdddj
ef2d2a3e75 feat(core/rust): make font changes for TR
[no changelog]
2023-06-14 18:17:09 +02:00
grdddj
d199a17cfc feat(core): introduce FONT_BIG as a fifth optional font
[no changelog]
2023-06-14 18:17:09 +02:00
grdddj
359f6709b0 chore(core): remove unused model R icons
[no changelog]
2023-06-14 18:17:09 +02:00
grdddj
100e36ac20 feat(core/rust): randomize positions in passphrase input
[no changelog]
2023-06-14 17:27:44 +02:00
grdddj
eacc1a3826 feat(core/rust): randomize letter choice positions in recovery word entry + randomize the order of words
[no changelog]
2023-06-14 17:27:44 +02:00
grdddj
8c7ad72062 feat(core/rust): randomize PIN digits fully and show last digit to user
[no changelog]
2023-06-14 17:27:44 +02:00
grdddj
5efafce856 chore(core): modify Shamir backup flow design
[no changelog]
2023-06-14 16:44:02 +02:00
Martin Milata
732e2cc9b5 refactor(core): split tjpgdec into own crate
[no changelog]
2023-06-14 15:53:56 +02:00
grdddj
127e6f42cf chore(core/rust): center TR's input method vertically
[no changelog]
2023-06-14 15:23:40 +02:00
grdddj
55bff602fa fix(core): add dynamic title to the FIDO dialogue for model R
[no changelog]
2023-06-14 15:20:43 +02:00
grdddj
5258e9a307 feat(core/rust): use icon for displaying device name in welcome screen
[no changelog]
2023-06-06 17:49:53 +02:00
grdddj
88fd4cd11f chore(core/rust): mark icons with empty right column, delete unused ones
[no changelog]
2023-06-06 17:49:53 +02:00
grdddj
f27405109e feat(core/rust): add better support for odd-width icons
[no changelog]
2023-06-06 17:49:53 +02:00
tychovrahe
531511407b feat(core/rust): add bootloader design for T2B1
[no changelog]
2023-06-06 17:49:53 +02:00
Martin Milata
fee0d70211 fix(core/ui): workaround different TT and TR UI API
[no changelog]
2023-06-02 18:47:09 +02:00
Martin Milata
611d4edc32 fix(core/ui): clarify transaction replacement screens
[no changelog]
2023-06-02 18:47:09 +02:00
grdddj
da14c22712 feat(all): add UI for Model R 2023-05-31 10:14:54 +02:00
grdddj
019a3ced7d fix(core): revert some UI changes for TT (PIN, wipecode, backup homescreen) 2023-05-16 09:25:56 +02:00
grdddj
74246150e5 fix(core/rust): allow for cycling through the last character in TT passphrase 2023-05-11 21:02:21 +02:00
grdddj
c4bbf17433 feat(core/rust): allow for margin between text and ellipsis icon 2023-05-11 21:02:21 +02:00
grdddj
1c698656c3 feat(core/rust): create common function for ellipsised text 2023-05-11 21:02:21 +02:00
grdddj
e00af4f7f3 chore(core/rust): use format_i64 to convert numbers to strings 2023-05-11 21:02:21 +02:00
grdddj
3bf3e4c38b feat(core/rust): introduce Wordlist component for both bip39 and slip39 2023-05-11 21:02:21 +02:00
grdddj
c291285927 chore(core/rust): make TextBox common component 2023-05-11 21:02:21 +02:00
grdddj
1bb6288512 chore(core/rust): move Font and Color into their own modules 2023-05-11 21:02:21 +02:00
grdddj
5940129bfc feat(core/rust): show fee rate in modify-fee dialogue 2023-05-11 21:02:21 +02:00
grdddj
db38b708b4 feat(core/rust): make Checklist component usable by more models 2023-05-11 21:02:21 +02:00
grdddj
610c832dee feat(core/rust): add useful macros 2023-05-11 21:02:21 +02:00
grdddj
73c493d118 chore(core/rust): tracing and other smaller improvements/clippy lints 2023-05-11 21:02:21 +02:00
matejcik
eee4c624f9 feat(core/rust): JSON output from component tracing 2023-05-11 21:02:21 +02:00
grdddj
b63b72ed90 chore(core/rust): flag or delete unused code 2023-05-11 21:02:21 +02:00
grdddj
0c0d74a501 feat(core/rust): create mako template for QSTR generation 2023-05-11 21:02:21 +02:00
grdddj
8ee4c41938 chore(crypto): refactor slip39 same way as bip39 2023-05-11 21:02:21 +02:00
tychovrahe
0c5db05357 feat(core): support 16bit i8080 display bus
[no changelog]
2023-04-27 12:36:12 +02:00
tychovrahe
0a8981d643 refactor(core): rewrite display_image into rust
[no changelog]
2023-04-25 10:28:33 +02:00
tychovrahe
e578f7f0f8 refactor(core): remove unused C display_icon and display_loader functions
[no changelog]
2023-04-25 10:28:33 +02:00
tychovrahe
69be9b1edf refactor(core): improve safety of buffer handling
[no changelog]
2023-04-25 10:28:33 +02:00
Martin Milata
3fb3f108cc chore(vendor): bump micropython to 1.19.1
Relevant micropython commits:
  01374d941f9d7398e35990b574769b20c6779457 py/mpconfig.h: Define initial templates for "feature levels".
  7b89ad8dbf432ab51eea6d138e179bf51394c786 py/vm: Add a fast path for LOAD_ATTR on instance types.
  68219a295c75457c096ac42dbe8411b84e1e1a51 stm32: Enable LOAD_ATTR fast path, and map lookup caching on >M0.
  e0bf4611c3a8b23b3c52e6a7804aac341ac3a87d py: Only search frozen modules when '.frozen' is found in sys.path.
  f2040bfc7ee033e48acef9f289790f3b4e6b74e5 py: Rework bytecode and .mpy file format to be mostly static data.
  926b554dafffa1e9bd80aa12fea5c621221c9d79 extmod/moduos: Create general uos module to be used by all ports.
  2b409ef8a46015f8f3bd20bc44e644637dbe9bd3 unix/moduos: Convert module to use extmod version.
  47f634300c5572571816817f16836113c98814ae py: Change makemoduledefs process so it uses output of qstr extraction.
  0e7bfc88c6ac6b5d64240f91183a3cfe2ab67ade all: Use mp_obj_malloc everywhere it's applicable.
  2a6ba47110be88ff1e1f5abd1bd76c353447884c py/obj: Add static safety checks to mp_obj_is_type().
2023-04-21 13:14:07 +02:00
tychovrahe
dd5468fe88 fix(core): fix homescreen shade positioning
[no changelog]
2023-04-21 09:07:18 +02:00
tychovrahe
83500487b8 refactor(core): improve conditional compilations based on model
[no changelog]
2023-04-19 21:36:51 +02:00
tychovrahe
eb72fb4241 refactor(core): remove unused functions
[no changelog]
2023-04-19 21:36:51 +02:00
tychovrahe
6ea68baf34 refactor(core): move files out of extmod
[no changelog]
2023-04-19 21:36:51 +02:00
Martin Milata
7a3ab389f8 style(core/rust): fix indent
[no changelog]
2023-04-19 19:53:33 +02:00
Martin Milata
58be59529d style(core): fix clippy lints
[no changelog]
2023-04-19 13:05:03 +02:00
tychovrahe
44178514f3 feat(core): support differently sized homescreen
[no changelog]
2023-04-12 14:03:12 +02:00
Martin Milata
aa9f848b70 fix(core/ui): button text and warning style update
[no changelog]
2023-04-12 13:10:45 +02:00
Martin Milata
2456219d52 fix(core/ui): hold to confirm when finializing replacement transaction
[no changelog]
2023-04-10 18:42:38 +02:00
Martin Milata
a44e738d31 feat(core/ui): sending transaction style update
[no changelog]
2023-04-04 00:15:12 +02:00
Martin Milata
229c81fa7e feat(core/ui): frames with title and subtitle
[no changelog]
2023-04-04 00:15:12 +02:00
matejcik
a09c404359 fix(core): restore original Label bounds checking
so that if the text does not vertically fit into the provided bounds,
it will only render part of itself (and an optional ellipse)
and remain properly vertically centered
2023-04-03 22:01:26 +02:00
matejcik
ca5a68ebc5 fix(core): unify error strings 2023-04-03 22:01:26 +02:00
matejcik
38b6b9adc8 style(core/bootloader): unify import section 2023-04-03 22:01:26 +02:00
matejcik
63c27bafd6 fix(core/bootloader): properly display upgrade/downgrade 2023-04-03 22:01:26 +02:00
matejcik
d1d373a51f refactor(core/bootloader): simplify Confirm arguments 2023-04-03 22:01:26 +02:00
matejcik
a9a18bf80d refactor(core/bootloader): make use of Label vertical alignment 2023-04-03 22:01:26 +02:00
matejcik
c3af3eafe2 refactor(core/bootloader): get rid of Paragraphs
for a ~10kB space saving
2023-04-03 22:01:26 +02:00
matejcik
14f0fba949 feat(core/bootloader): tweak initial screens
* do not wait for user touch when we know we are going to the welcome
  screen
* do not fade before the Trezor Model T screen
2023-04-03 22:01:26 +02:00
matejcik
839a940990 feat(core/bootloader): new style for result screens (fixes #2910) 2023-04-03 22:01:26 +02:00
matejcik
e10b6ecc26 feat(core/rust): improve behavior of from_c_str / from_c_array 2023-04-03 22:01:26 +02:00
tychovrahe
7e96b96d00 feat(core/bootloader): remove different logo color when firmware present 2023-04-03 22:01:26 +02:00
matejcik
ae9960ca61 feat(core): introduce bootloader emulator 2023-04-03 22:01:26 +02:00
matejcik
af6c6d43ed fix(core/unix): add miscellaneous missing header entries 2023-04-03 22:01:26 +02:00
tychovrahe
9b8984896e refactor(core): unify error screens
[no changelog]
2023-04-03 22:01:26 +02:00
tychovrahe
64bc94cbc9 feat(core): uninitialized welcome flow
[no changelog]
2023-04-03 22:01:26 +02:00
tychovrahe
2537436211 feat(core): update bootloader style
[no changelog]
2023-04-03 22:01:26 +02:00
tychovrahe
dcda5e0142 feat(core): support old homescreen format
[no changelog]
2023-03-30 19:06:35 +02:00
Martin Milata
2388a8edea style(core/rust/ui): rename Map to MsgMap
[no changelog]
2023-03-30 13:55:54 +02:00
Martin Milata
08cad2f909 fix(core/ui): coinjoin layouts style update
[no changelog]
2023-03-30 13:55:54 +02:00
matejcik
9244522721 fix(core): remove shutdown()
In a very weird situation, our declaration of `shutdown()` shadows a
function `shutdown(int, int)` from sys/socket, which _just happens_ to
be called by libxcb when closing the sdl window. This calls
`main_clean_exit` which calls into micropython and causes at best an
uncaught NLR and at worst an outright segfault because by that time the
micropython environment doesn't exist anymore.

I didn't think this sort of thing would be possible but here we are??

Fixed by removing `__shutdown()` and replacing `shutdown` with
`trezor_shutdown`
2023-03-24 13:24:46 +01:00
Martin Milata
e60ed788f2 fix(core/rust/ui): add cargo flag for Component::bounds() support
Rarely used debugging feature.

[no changelog]
2023-03-23 20:16:22 +01:00
Martin Milata
afe965687f fix(core/ui): style update: frame and corner button
[no changelog]
2023-03-23 20:16:22 +01:00
Martin Milata
670cbd7a1d fix(core/ui): style update: paging
[no changelog]
2023-03-23 20:16:22 +01:00
Martin Milata
19a2ea21b6 fix(core/ui): Model T style update
[no changelog]
2023-03-23 20:16:22 +01:00
Martin Milata
3623f966dc fix(core/rust/ui): fix text baseline calculation
[no changelog]
2023-03-23 20:16:22 +01:00
Jan Šetina
04964dc2e8 feat(core/ui): change GREY_DARK and GREY_MEDIUM
[no changelog]
2023-03-13 01:34:14 +01:00
Martin Milata
b8abccbc94 feat(core/rust/ui): implement Clone for StrBuffer
[no changelog]
2023-03-09 23:36:36 +01:00
Martin Milata
4af5939a0b feat(core/ui): redesigned receive flow
[no changelog]
2023-03-09 23:36:36 +01:00
Martin Milata
1b94a7cb7b feat(core/ui): page break icons
Co-authored-by: grdddj <jiri.musil06@seznam.cz>

[no changelog]
2023-03-09 23:36:36 +01:00
Martin Milata
4622aec0f1 refactor(core): switch to Rust implementation of QR-Code-generator
[no changelog]
2023-03-09 23:36:36 +01:00
tychovrahe
d633fa885b feat(core/rust): model R bootloader implementation in rust 2023-03-09 16:14:36 +01:00
tychovrahe
659c939080 fix(core/rust): fix glyph positioning in TextOverlay 2023-03-09 16:14:36 +01:00
tychovrahe
5a991f3244 feat(core/rust): bootloader implementation in rust 2023-03-09 16:14:36 +01:00
matejcik
f9612898ab feat(core/rust): improved error reporting 2023-03-09 16:14:36 +01:00
matejcik
e0bcdb16e0 refactor(core/rust): clarify safety of StrBuffer creation 2023-03-09 16:14:36 +01:00
matejcik
b864ad58b2 feat(core/rust): cleaner backlight functions 2023-03-09 16:14:36 +01:00
tychovrahe
9b9443ead7 feat(core/rust): added color constructor from rgba format, added text display functions using top-left coordinates 2023-03-09 16:14:36 +01:00
tychovrahe
a1312d8453 feat(core/rust): added button with icon and text 2023-03-09 16:14:36 +01:00
tychovrahe
e75f112ec2 feat(core/rust): expose touch processing functions to rust 2023-03-09 16:14:36 +01:00
tychovrahe
cacae36c73 feat(core/rust): bootloader compilation with rust 2023-03-09 16:14:36 +01:00
Jan Šetina
d540c52c0c chore(core): change the homescreen 2023-03-09 14:03:48 +01:00
Jan Šetina
30b636079e chore(core): change the color definitions 2023-03-09 14:03:48 +01:00
grdddj
1215268ae9 chore(rust): decrease icon top margin on welcome screen to 48 px
[no changelog]
2023-03-02 15:58:58 +01:00
Martin Milata
557e29769b feat(core/ui): redesigned passphrase dialogs
[no changelog]
2023-02-28 23:30:38 +01:00
Andrew Kozlik
9528e2f9eb feat(common): Add Apple to known FIDO services. 2023-02-28 10:54:48 +01:00
grdddj
acec852aa4 feat(core): show welcome screen after device is connected
[no changelog]
2023-02-27 13:22:09 +01:00
Martin Milata
afb5c55416 feat(core/ui): reset_device copy change
[no changelog]
2023-02-17 12:35:19 +01:00
tychovrahe
9f7edf210e feat(core/rust): basic marquee implementation
[no changelog]
2023-02-10 19:33:12 +01:00
tychovrahe
9aa8662ba9 feat(core): implement loaders for T2B1
[no changelog]
2023-02-08 12:18:33 +01:00
tychovrahe
52cd43bf29 fix(core): improve tearing effect prevention
[no changelog]
2023-02-07 19:05:01 +01:00
Martin Milata
099d00de84 perf(core/rust): use less Button instances in PassphraseKeyboard
[no changelog]
2023-02-06 17:35:31 +01:00
Martin Milata
0df81b18e3 perf(core/rust): parse Toif metadata on demand
[no changelog]
2023-02-06 17:35:31 +01:00
Martin Milata
194868438a perf(core/rust): drop NamedToif
Makes structs larger despite only being used in panic.

[no changelog]
2023-02-06 17:35:31 +01:00
grdddj
f8c432e955 chore(core/rust): delete model_1 code - it should use model_r
[no changelog]
2023-01-31 10:55:12 +01:00
tychovrahe
236396338c refactor(core/rust): introduce icon/image type
[no changelog]
2023-01-30 12:33:39 +01:00
tychovrahe
1359b21508 feat(core): confirm homescreen image with thumbnail
[no changelog]
2023-01-19 14:11:42 +01:00
tychovrahe
d00e87ea80 feat(core/rust): homescreen background image
[no changelog]
2023-01-19 14:11:42 +01:00
tychovrahe
12f87aa01e fix(core): fix usb disconnected warning in new homescreen
[no changelog]
2023-01-19 14:11:42 +01:00
tychovrahe
02e2b50d3f feat(core/rust): tjpgd in rust
[no changelog]
2023-01-19 14:11:42 +01:00
matejcik
497285f9a1 feat(core): make first steps to unify Rust API for both models
wip: unify confirm_action

wip: unify confirm_fido

wip: unify request_pin, clean up prompts

wip: unify select_word

wip: unify request_number

refactor(core/reset): refactor confirm_share_words

[no changelog]
2023-01-13 17:09:25 +01:00
tychovrahe
305b7fe84d fix(core/rust): fix position calculation from center and size
[no changelog]
2022-12-16 16:41:24 +01:00
Martin Milata
bdec3f3979 fix(core/rust/ui): polish confirm_fido
[no changelog]
2022-12-15 17:24:15 +01:00
Martin Milata
2a3aabb57e refactor(core/rust/ui): avoid homescreen flicker during workflow restarts
[no changelog]
2022-12-13 17:15:15 +01:00
Martin Milata
5b3db7eca1 refactor(core/rust/ui): homescreen layouts
[no changelog]
2022-12-13 17:15:15 +01:00
tychovrahe
12b3dc23db fix(core/rust): fix bip39 input not recognizing three-letter words that could continue
[no changelog]
2022-12-13 00:38:23 +01:00
Martin Milata
1b4dff6275 fix(core/rust/ui): respect DISABLE_ANIMATION
[no changelog]
2022-12-12 16:00:42 +01:00
Martin Milata
95d8a21294 feat(core/rust/ui): progress indicators
[no changelog]
2022-12-12 16:00:42 +01:00
Martin Milata
11ffee0b45 refactor(core/rust/ui): use AsRef instead of Deref
[no changelog]
2022-12-12 16:00:42 +01:00
tychovrahe
387af03842 fix(core/rust): optimize keyboard behavior
[no changelog]
2022-12-09 22:35:39 +01:00
Martin Milata
701d75d6d8 fix(core/rust/ui): handle very long scrollbars on Model T
[no changelog]
2022-12-07 16:47:30 +01:00
Martin Milata
4135b00708 refactor(core/rust): support for StrBuffer slicing
[no changelog]
2022-12-06 10:40:32 +01:00
Martin Milata
452857757a feat(core/rust/ui): support ask_pagination flag in confirm_blob
[no changelog]
2022-12-06 00:26:25 +01:00
tychovrahe
38548f02f2 feat(core/rust): special shape erase button
[no changelog]
2022-11-30 13:49:12 +01:00
Martin Milata
a61a46808e fix(core/rust/ui): no hyphens when breaking monospace lines
[no changelog]
2022-11-29 21:03:06 +01:00
Martin Milata
3b92923caa feat(core/rust/ui): on-the-fly conversion of bytes to hexadecimal representation
[no changelog]
2022-11-29 21:03:06 +01:00
grdddj
61277bd80a feat(core/ui): implement webauthn layouts for UI2
[no changelog]
2022-11-24 13:03:34 +01:00
matejcik
e80712f4d9 chore(core/rust/ui): workaround for "re-enter wipe code"
[no changelog]
2022-11-24 13:03:34 +01:00
matejcik
4200539546 refactor(core/rust/ui): redesign Label to make use of TextLayout machinery
also replace LabelStyle with TextStyle

[no changelog]
2022-11-24 13:03:34 +01:00
matejcik
3f6ea00e02 feat(core/rust/ui): expose text_max_height and baseline
[no changelog]
2022-11-24 13:03:34 +01:00
matejcik
9708175d19 fix(core/rust): improve & document safety of slice operations
[no changelog]
2022-11-24 13:03:34 +01:00
tychovrahe
0d733d8e22 feat(core): change display type for model R
[no changelog]
2022-11-24 11:37:52 +01:00
tychovrahe
1bad41ddb0 fix(core/rust): fix success animation
[no changelog]
2022-11-21 22:20:35 +01:00
matejcik
d1126b85be feat(rust): expose micropython lists as slices
[no changelog]
2022-11-21 18:15:48 +01:00
grdddj
f48890afb3 chore(tests): make all the device tests work with UI2 2022-11-21 14:08:47 +01:00