mirror of
https://github.com/trezor/trezor-firmware.git
synced 2025-07-13 18:18:08 +00:00
WIP: core part
This commit is contained in:
parent
db8e019711
commit
a476530b4e
@ -292,7 +292,7 @@ extern "C" fn verify(data: Obj) -> Obj {
|
||||
#[no_mangle]
|
||||
#[rustfmt::skip]
|
||||
pub static mp_module_trezortranslate: Module = obj_module! {
|
||||
/// from trezortranslate_keys import TR # noqa: F401
|
||||
/// from trezortranslate_keys import TR as TR # noqa: F401
|
||||
/// """Translation object with attributes."""
|
||||
Qstr::MP_QSTR_TR => TR_OBJ.as_obj(),
|
||||
|
||||
|
@ -1640,18 +1640,8 @@ extern "C" fn new_confirm_firmware_update(
|
||||
.vertically_centered();
|
||||
|
||||
let obj = LayoutObj::new(
|
||||
Confirm::new(
|
||||
theme::BG,
|
||||
title,
|
||||
message,
|
||||
None,
|
||||
TR::buttons__install,
|
||||
false,
|
||||
)
|
||||
.with_info_screen(
|
||||
TR::firmware_update__title_fingerprint,
|
||||
fingerprint,
|
||||
),
|
||||
Confirm::new(theme::BG, title, message, None, TR::buttons__install, false)
|
||||
.with_info_screen(TR::firmware_update__title_fingerprint, fingerprint),
|
||||
)?;
|
||||
Ok(obj.into())
|
||||
};
|
||||
|
@ -1,11 +1,15 @@
|
||||
use crate::{
|
||||
error::Error, micropython::buffer::StrBuffer, time::Instant, translations::TR, ui::{
|
||||
error::Error,
|
||||
micropython::buffer::StrBuffer,
|
||||
time::Instant,
|
||||
translations::TR,
|
||||
ui::{
|
||||
component::{paginated::PageMsg, Component, ComponentExt, Event, EventCtx, Pad, Paginate},
|
||||
constant,
|
||||
display::{self, Color},
|
||||
geometry::{Insets, Rect},
|
||||
util::animation_disabled,
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
use super::{
|
||||
|
@ -1,5 +1,6 @@
|
||||
from typing import *
|
||||
from trezortranslate_keys import TR # noqa: F401
|
||||
from trezortranslate_keys import TR as TR # noqa: F401
|
||||
|
||||
"""Translation object with attributes."""
|
||||
MAX_HEADER_LEN: int
|
||||
"""Maximum length of the translations header."""
|
||||
|
@ -10,7 +10,7 @@ welcome_screen_start_ms = utime.ticks_ms()
|
||||
|
||||
import storage
|
||||
import storage.device
|
||||
from trezor import config, log, loop, ui, utils, wire
|
||||
from trezor import config, log, loop, ui, utils, wire, translations
|
||||
from trezor.pin import (
|
||||
allow_all_loader_messages,
|
||||
ignore_nonpin_loader_messages,
|
||||
@ -69,6 +69,7 @@ async def bootscreen() -> None:
|
||||
ignore_nonpin_loader_messages()
|
||||
|
||||
config.init(show_pin_timeout)
|
||||
translations.init()
|
||||
|
||||
if __debug__ and not utils.EMULATOR:
|
||||
config.wipe()
|
||||
|
@ -1,2 +1,6 @@
|
||||
import trezorconfig as config # noqa: F401
|
||||
import trezorio as io # noqa: F401
|
||||
|
||||
import trezortranslate as translations # noqa: F401
|
||||
|
||||
TR = translations.TR
|
||||
|
@ -1,29 +0,0 @@
|
||||
from trezor import config
|
||||
|
||||
DEFAULT_LANGUAGE = "en-US"
|
||||
|
||||
|
||||
def get_language() -> str:
|
||||
from trezortranslate import language_name
|
||||
|
||||
translation_lang = language_name()
|
||||
if translation_lang:
|
||||
return translation_lang
|
||||
return DEFAULT_LANGUAGE
|
||||
|
||||
|
||||
def write(data: bytes | bytearray, offset: int) -> None:
|
||||
from trezor import wire
|
||||
|
||||
if offset + len(data) > data_max_size():
|
||||
raise wire.DataError("Language data too long")
|
||||
|
||||
config.translations_set(data, offset)
|
||||
|
||||
|
||||
def wipe() -> None:
|
||||
config.translations_wipe()
|
||||
|
||||
|
||||
def data_max_size() -> int:
|
||||
return config.translations_max_bytesize()
|
@ -7,7 +7,7 @@ from typing import TYPE_CHECKING, Dict
|
||||
HERE = Path(__file__).parent
|
||||
CORE = HERE.parent.parent
|
||||
|
||||
DIR = CORE / "embed" / "rust" / "src" / "ui" / "translations"
|
||||
DIR = CORE / "translations"
|
||||
|
||||
MISSING_VALUE = "TODO:missing"
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user