1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2024-12-24 07:18:09 +00:00
Commit Graph

14184 Commits

Author SHA1 Message Date
obrusvit
7e1f160dba refactor(core): consistent naming for UI traits
[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
0e1696b3ed chore(core): cleanup warnings and clippy errors
[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
9caf540e16 refactor(core): remove trezorui2 module
- also remove "check" scripts which seem outdated

[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
ad9618c282 refactor(core): cleanup layout.rs
- last functions of all models moved out
- imports formatted
- tests moved

[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
dd9ac038d0 refactor(core): port functions to FirmwareUI
- keyboards
- standalone functions
  - disable_animations
  - check_homescreen_format
- confirm_action
- selectors
- confirm_firmware_update
- show_homescreen/lockscreen
- confirm_homescreen
- confirm_homescreen of mercury changed according to Figma
- set_brightness
- show_wait_text
- show_progress
- request_number
- show_checklist
- show_mismatch
- confirm_reset
- tutorial
- confirm_coinjoin
- confirm_modify_output/fee
- show_group_share_success
- show_remaining_shares
- show_success/warning/error/danger
- show_simple
- continue_recovery
  - confirm_recovery of model_t and model_r merged with
flow_continue_recovery of mercury into a continue_recovery_homepage
trait function, parameters renamed to be more descriptive
- show_share_words moved and refactored
  - model_t version was moved from using plain Paragraph to a dedicated
component `ShareWords` so that it's consistent with other models. This
allowed to move formatting to Rust and allowed the trait function to
have `words` parameter of type `Vec<TString, 33>`
  - model_r ShareWords::render slightly refactored to be consistent with
the new model_t version
  - mercury uses a unique version. The reason is that mercury SwipeFlow
contains also the initial screen with instructions and prompt screen at
the end.
- confirm_with_info
- show_info_with_cancel
- confirm_blob
- confirm_value
- confirm_properties
- confirm_more
- confirm_address
- prompt_backub
- confirm_emphasized
- show_address_details
- confirm_summary
- TR removed:
  - confirm_output_address and confirm_output_amount replaced with
confirm_blob. UI diff is minimal.
  - confirm_joint_total, replaced a TR-specific function with a generic
`confirm_properties` with no UI changes
- confirm_multiple_pages_texts
  - the function is TR specific and is used only in confirm_set_new_pin,
it would be better to use something different
- remaining mercury flows with no counterpart
  - confirm_blob_intro
  - flow_confirm_set_new_pin
  - flow_confirm_output
  - flow_get_address

[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
b2c6b09bfc feat(core): introduce FirmwareUI trait
- the commit introduces a trait defining high level UI building blocks,
common for all models.
- trezorui_api module exposes these functions to MicroPython world.
- `show_info` is implemented as a first function.

[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
091a0e8550 feat(core): introduce trezorui_api
- the new module is the place for type definitions of the interface
between rust and micropython world.
- the new module will replace `trezorui2` with `trezorui_api`

[no changelog]
2024-12-19 00:09:20 +01:00
obrusvit
78cce0ba04 fix(core): font generator padding
[no changelog]
2024-12-16 13:54:27 +01:00
obrusvit
5d1401ef4f refactor(core): safe iface for get_glyph_data
[no changelog]
2024-12-16 13:54:27 +01:00
obrusvit
5a9c8c81ae refactor(core): remove UTF-8 support from C
- re-implement some fonts handling functions in Rust and delete them
from C
- C code only needs to handle ASCII characters

[no changelog]
2024-12-16 13:54:27 +01:00
obrusvit
0c4225491b refactor(core): change gen_font.py and regen fonts
Change to the new structures and preserve manual changes. This commit
also removes duplicated definition of nonprintable glyph for _UPPER
fonts.

[no changelog]
2024-12-16 13:54:27 +01:00
obrusvit
db0e8e8421 refactor(core): simplify font handling
This commit removes the usage of macros for font data definitions.
Instead, it includes data as const structs of newly introduced
font_info_t type.

[no changelog]

refactor(core): use font_id_t instead of plain int

[no changelog]
2024-12-16 13:54:27 +01:00
obrusvit
b5ea26eb7a refactor(core): separate concerns of FONT macros
Introduce a new flag `_NAME` for each font and reduce the usage of
`_ENABLE` flag to purely compilation guard.

[no changelog]
2024-12-16 13:54:27 +01:00
Ondřej Vejpustek
ecc38f267f fix(crypto): make ge25519_cmove_stride4b constant time 2024-12-16 12:20:11 +01:00
cepetr
e196413bb7 feat(core): initialize powerclt in boardloader
[no changelog]
2024-12-13 17:24:03 +01:00
tychovrahe
3bc13b5707 refactor(core): switch DISC2 display driver to universal LTDC DSI implementation
[no changelog]
2024-12-13 17:24:03 +01:00
tychovrahe
03a296f815 feat(core): display driver for T3W1
[no changelog]
2024-12-13 17:24:03 +01:00
tychovrahe
dac6c17f73 refactor(core): extract framebuffer queue for reuse
[no changelog]
2024-12-13 17:24:03 +01:00
tychovrahe
791340cc6b fix(core): restore RSOD info
[no changelog]
2024-12-13 10:35:03 +01:00
Lukas Bielesch
75ee4dc7a7 chore(core): turn labeling click test into device test 2024-12-12 18:46:57 +01:00
tychovrahe
0bc729a3da refactor(core): streamline RAM layout
[no changelog]
2024-12-11 21:41:52 +01:00
tychovrahe
0d3407b075 fix(core): resolve crashes when running without display or with uninitialized display
[no changelog]
2024-12-11 21:41:36 +01:00
Ioan Bizău
e6802bdd09 fix(core/ui): don't swipe left if there is no menu 2024-12-11 16:33:15 +02:00
cepetr
a0bd4860ca feat(core/prodtest): add npm1300 buck control commands
[no changelog]
2024-12-11 14:45:16 +01:00
cepetr
9d2d96f832 feat(core): add npm1300 buck regulator control
[no changelog]
2024-12-11 14:45:16 +01:00
cepetr
27b27df17d feat(core/prodtest): add suspend command
[no changelog]
2024-12-11 14:45:16 +01:00
cepetr
dda9d2ba36 feat(core/prodtest): add wpc control commands
[no changelog]
2024-12-11 14:45:16 +01:00
cepetr
bfe36fd8db feat(core/prodtest): add pmic control commands
[no changelog]
2024-12-11 14:45:16 +01:00
cepetr
a6acabd917 refactor(core): introduce drivers init/deinit in boot/boardloader
[no changelog]
2024-12-11 14:45:16 +01:00
cepetr
e456e2ad27 feat(core): add power button wakeup functionality
[no changelog]
2024-12-11 14:45:16 +01:00
cepetr
519a1a0f7b feat(core): introduce powerctl module
[no changelog]
2024-12-11 14:45:16 +01:00
cepetr
97dbf2fab3 feat(core): introduce stwlc38 driver
[no changelog]
2024-12-11 14:45:16 +01:00
cepetr
1da149f129 feat(core): introduce npm1300 driver
[no changelog]
2024-12-11 14:45:16 +01:00
Martin Milata
748a19ac5d ci(nix): macos: fix --args devTools true 2024-12-09 21:17:01 +01:00
Lukas Bielesch
6de0e5de0f chore(core): change display orientation labels [no changelog] 2024-12-09 15:03:57 +01:00
Ondřej Vejpustek
0f54f63c99 chore(style): include core/tests python files for style linting
[no changelog]
2024-12-06 16:14:54 +01:00
Ondřej Vejpustek
8bf23696e1 style(core/tests): apply formatting
[no changelog]
2024-12-06 16:14:54 +01:00
Ondřej Vejpustek
97b2e6c751 style(core/tests): fix warnings
[no changelog]
2024-12-06 16:14:54 +01:00
Ondřej Vejpustek
345eaf79f9 style(core/tests): silent star import warnings
[no changelog]
2024-12-06 16:14:54 +01:00
tychovrahe
b4ba056a39 fix(core): fix translation area access from coreapp applet
[no changelog]
2024-12-05 17:17:08 +01:00
matejcik
81adeb247d build(build-docker): use QUIET_MODE for core builds 2024-12-04 16:36:19 +01:00
matejcik
7d4cd8ffb7 build(build-docker): perform a reproducible shallow clone of the repository in build-docker.sh 2024-12-04 16:36:19 +01:00
Martin Milata
2635e4c7fd build(core): use deterministic git rev-parse
The output may differ in shallow vs. full repo.

[no changelog]
2024-12-04 16:36:19 +01:00
obrusvit
61ebb19515 refactor(core): mercury confirm_summary
- old confirm_total removed
- flow_confirm_summary refactored to confirm_summary

[no changelog]
2024-12-04 14:47:53 +01:00
obrusvit
af6240b52c refactor(core): model_r confirm_summary
- altcoin_tx_summary removed and replaced with confirm_summary

[no changelog]
2024-12-04 14:47:53 +01:00
obrusvit
6e94748e92 refactor(core): model_t confirm_summary
- model_t confirm_total refactored to confirm_summary
- parameter set changed to pave the way for unification across models

[no changelog]
2024-12-04 14:47:53 +01:00
matejcik
ef02c4de5d feat(core): introduce storage insecure mode
reduces the number of PIN iterations and avoids erasing the other
storage bank -- if a test ever overruns, it will probably RSOD out, but
that's unlikely to happen
2024-12-03 11:02:17 +01:00
matejcik
835f7087c6 build(core): correctly propagate DISABLE_OPTIGA to kernel 2024-12-03 11:02:17 +01:00
matejcik
331e07b1e0 feat(core): disable animations in debug firmware by default
This makes it possible to run HW tests on the T3T1 where animations mess
things up. It also speeds up HW tests on other models slightly.

export TREZOR_DISABLE_ANIMATION=0 to build a debug firmware with
animations enabled
2024-12-03 11:02:17 +01:00
Ioan Bizău
13df961317 refactor(core/ui): introduce show_danger
This is a unified interface for flow_warning_hi_prio,
which was available only on Mercury before.

[no changelog]
2024-12-02 22:28:00 +01:00