1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-01-26 07:11:25 +00:00
Commit Graph

84 Commits

Author SHA1 Message Date
Martin Milata
391602ae99 refactor(core): turn show_address, show_pubkey, show_xpub into layouts 2021-02-10 13:57:19 +01:00
Martin Milata
03699f5639 refactor(core): turn show_success, show_warning into layouts 2021-02-10 13:57:19 +01:00
Martin Milata
f38abf9d89 refactor(core): introduce layouts
Layouts can be used by the application code to interact with user using
small number of dialogs or other groups of UI components. Each layout is
identified by name and takes some parameters. Most layouts will have an
implementation for each hardware model, mechanism is provided to import
the correct version so that application code can be oblivious to the
model.

This commit introduces the layout concept and converts a couple of
dialogs to use it.
2021-02-10 13:57:19 +01:00
Martin Milata
18cb429610 feat(core): introduce Text.format_parametrized() 2021-02-10 13:57:19 +01:00
Martin Milata
f1382bf892 refactor(core): model-dependent UI component directories
They now live under trezor.ui.components.tt. Later
trezor.ui.components.t1 will be added and application code will be
rewritten to not use them directly in order to work on both TT and T1.
2021-02-10 13:57:19 +01:00
matejcik
2d3a4d15fa fix(core/ui): render_text uses correct font and color with item_offset 2021-01-11 16:47:59 +01:00
matejcik
24195d7c3e fix(core/ui): use full line_width for content 2021-01-11 16:47:59 +01:00
matejcik
bbef9c650b refactor(core): improve render_text behavior
* use less memory due to copy-less rendering
* implement linebreaking on embedded \n
2021-01-11 16:47:59 +01:00
Pavol Rusnak
a1dda836ec style(core/src): use new syntax for typing 2020-12-01 15:52:29 +01:00
Martin Milata
ee64b65b26 refactor(core): call super().__init__() in subclasses 2020-11-30 14:48:08 +01:00
Martin Milata
fa1566cb71 refactor(core): call super().__init__() in Component and Layout subclasses 2020-11-30 14:48:08 +01:00
Pavol Rusnak
952adc5961
style(core): use PEP515 Underscores in Numeric Literals 2020-11-23 14:30:16 +01:00
Martin Milata
b8bb63fbef core: drop unused FONT_SIZE constant 2020-09-01 19:57:46 +02:00
Andrew Kozlik
dd540a2ccd core/ui: Initialize Qr class properly. 2020-08-20 18:13:09 +02:00
Pavol Rusnak
4e11735d22 core/modtrezorui: remove prefill from text functions
use display.bar where needed to prefill the areas
2020-08-07 15:08:14 +02:00
Pavol Rusnak
cec87bba50
core: remove mono bold font variant (not used anywhere) 2020-07-27 23:22:34 +02:00
matejcik
051763575d core: touch idle timer in keyboards (fixes #1099) 2020-07-10 14:05:52 +02:00
Andrew Kozlik
f382f77c89 core/ui: Fix repaint bug in QR code rendering #1067. 2020-06-25 12:25:41 +02:00
Andrew Kozlik
9c61257e8e core: Use the Lock icon in the PIN entry dialog only when the device is actually locked. 2020-06-05 11:52:56 +02:00
matejcik
9df7c84c56 core/ui: lower lockscreen brightness 2020-06-04 16:18:46 +02:00
matejcik
872e0fb0e0 core: lower scheduler resolution to milliseconds
This avoids problems with large timeouts causing the scheduler queue to
think the time counter has overflown, and ordering the autolock task before
immediate tasks.

The maximum reasonable time difference is 0x20000000, which in
microseconds is ~8 minutes, but in milliseconds a more reasonable ~6
days.
2020-06-04 16:18:46 +02:00
matejcik
847691798b core: simplify homescreen and lockscreen implementations 2020-06-04 16:18:46 +02:00
matejcik
70f67883c5 core: fix artifacts in click-based UI tests 2020-06-04 16:18:46 +02:00
matejcik
f32c2f9e23 core: replace workflow.kill_default with workflow.close_others 2020-06-04 16:18:46 +02:00
matejcik
7ff1251ee1 core: dim lockscreen (fixes #974) 2020-06-04 16:18:46 +02:00
matejcik
67b723e4ca core: add a global idle timer 2020-06-04 16:18:46 +02:00
matejcik
246998910a core: refactor usage of input_signals
this prevents a certain class of UI test failure. It also localizes the
use of debuglink signals into the layout classes instead of call sites,
which is a design we were already using for confirm_signals
2020-06-04 16:18:46 +02:00
Tomas Susanka
0b7a8449f8 core: style 2020-03-30 16:04:05 +00:00
Tomas Susanka
bf20537f41 core: add option to omit cancel button in HoldToConfirm; add it to reset 2020-03-30 16:00:12 +00:00
Tomas Susanka
f8de140271 core: add cancel to hold to confirm dialogs 2020-03-02 13:58:41 +00:00
matejcik
7f91bc571c core: ensure default task restarts after a passphrase workflow (fixes #883) 2020-02-28 15:55:40 +01:00
Tomas Susanka
a8af9feebe core: fix text overflow in some dialogs 2020-02-27 12:43:33 +00:00
Tomas Susanka
2c0504ad1c
Merge pull request #803 from trezor/passphrase
Passphrase Redesign
2020-02-11 16:01:59 +01:00
Pavol Rusnak
fdfa64ac2a
core/ui: fix HoldToConfirm redraw 2020-02-07 15:21:16 +00:00
Tomas Susanka
aa6988a556
core/ui: introduce draw_simple 2020-02-07 11:41:01 +00:00
Tomas Susanka
cd09f9ce94
all: modify passphrase source to always on device 2020-02-07 11:40:59 +00:00
matejcik
a79279115e core: move confirm_signal evaluation into concrete Layout implementations
Apart from making the code more correct for its users in
apps.common.confirm and elsewhere, this fixes a problem where the
confirm_signal would be scheduled before the dialog is rendered.
By making sure that handle_rendering is scheduled (i.e., listed in
create_tasks) before confirm_signal, we can be sure to render at least
once and thus appear in the UI test results.
2020-01-23 15:45:10 +01:00
Tomas Susanka
30858c4969 tests/ui: omit the red square from screenshots
except the first one on homescreen because it gets rendered only once
2020-01-10 08:25:12 +00:00
Tomas Susanka
47419c7768 core/ui: simplify swipe if animation is disabled 2020-01-06 14:57:01 +00:00
Tomas Susanka
51ef963738 tests: introduce UI tests for core 2020-01-03 14:28:27 +00:00
Andrew Kozlik
3a4e9bd25c core/ui: Ignore any new alert requests if an alert is already in progress in order to avoid multiple alerts overlapping. 2019-12-03 14:18:43 +01:00
Milan Rossa
2143978b12 core/trezor/ui/loader: fixes #655 Button hold-to-confirm press detection. 2019-10-31 23:04:46 +01:00
matejcik
a5ccf95260 core: fix mypy problems 2019-10-22 17:06:49 +02:00
matejcik
3664a5f06f core/debug: reading layouts, inserting synthetic events 2019-10-22 17:06:49 +02:00
Tomas Susanka
0511cc8b8c core: add final mypy fixes! 2019-10-22 14:36:25 +00:00
Tomas Susanka
cefb1cf4fd core: refactor slip39 2019-09-19 16:38:29 +02:00
Andrew Kozlik
f5ea81f905 core: Move some PIN-related functions to apps.common.request_pin and implement verify_user_pin(). 2019-09-18 18:55:58 +02:00
Andrew Kozlik
5472499326 core/webauthn: Process debuglink signals in dialogs (#519) 2019-09-13 18:34:23 +02:00
Andrew Kozlik
f658958057 core/ui: Add ui.alert() for CTAP WINK command. 2019-09-11 15:33:16 +02:00
Andrew Kozlik
509a815f73 core/ui: Implement multi-page confirmation screen. 2019-09-11 15:33:16 +02:00