mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-12-18 04:18:10 +00:00
feat(common): Add SetBusy message.
[no changelog]
This commit is contained in:
parent
c962d3520b
commit
792dadfc4d
@ -111,6 +111,7 @@ message Features {
|
||||
optional uint32 auto_lock_delay_ms = 38; // number of milliseconds after which the device locks itself
|
||||
optional uint32 display_rotation = 39; // in degrees from North
|
||||
optional bool experimental_features = 40; // are experimental message types enabled?
|
||||
optional bool busy = 41; // is the device busy, showing "Do not disconnect"?
|
||||
}
|
||||
|
||||
/**
|
||||
@ -121,6 +122,15 @@ message Features {
|
||||
message LockDevice {
|
||||
}
|
||||
|
||||
/**
|
||||
* Request: Show a "Do not disconnect" dialog instead of the standard homescreen.
|
||||
* @start
|
||||
* @next Success
|
||||
*/
|
||||
message SetBusy {
|
||||
optional uint32 expiry_ms = 1; // The time in milliseconds after which the dialog will automatically disappear. Overrides any previously set expiry. If not set, then the dialog is hidden.
|
||||
}
|
||||
|
||||
/**
|
||||
* Request: end the current sesson. Following actions must call Initialize again.
|
||||
* Cache for the current session is discarded, other sessions remain intact.
|
||||
|
@ -87,6 +87,7 @@ enum MessageType {
|
||||
MessageType_Entropy = 10 [(bitcoin_only) = true, (wire_out) = true];
|
||||
MessageType_LoadDevice = 13 [(bitcoin_only) = true, (wire_in) = true];
|
||||
MessageType_ResetDevice = 14 [(bitcoin_only) = true, (wire_in) = true];
|
||||
MessageType_SetBusy = 16 [(bitcoin_only) = true, (wire_in) = true];
|
||||
MessageType_Features = 17 [(bitcoin_only) = true, (wire_out) = true];
|
||||
MessageType_PinMatrixRequest = 18 [(bitcoin_only) = true, (wire_out) = true];
|
||||
MessageType_PinMatrixAck = 19 [(bitcoin_only) = true, (wire_in) = true, (wire_tiny) = true, (wire_no_fsm) = true];
|
||||
|
@ -14,6 +14,7 @@ GetEntropy = 9
|
||||
Entropy = 10
|
||||
LoadDevice = 13
|
||||
ResetDevice = 14
|
||||
SetBusy = 16
|
||||
Features = 17
|
||||
PinMatrixRequest = 18
|
||||
PinMatrixAck = 19
|
||||
|
@ -31,6 +31,7 @@ if TYPE_CHECKING:
|
||||
Entropy = 10
|
||||
LoadDevice = 13
|
||||
ResetDevice = 14
|
||||
SetBusy = 16
|
||||
Features = 17
|
||||
PinMatrixRequest = 18
|
||||
PinMatrixAck = 19
|
||||
|
@ -2050,6 +2050,7 @@ if TYPE_CHECKING:
|
||||
auto_lock_delay_ms: "int | None"
|
||||
display_rotation: "int | None"
|
||||
experimental_features: "bool | None"
|
||||
busy: "bool | None"
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
@ -2091,6 +2092,7 @@ if TYPE_CHECKING:
|
||||
auto_lock_delay_ms: "int | None" = None,
|
||||
display_rotation: "int | None" = None,
|
||||
experimental_features: "bool | None" = None,
|
||||
busy: "bool | None" = None,
|
||||
) -> None:
|
||||
pass
|
||||
|
||||
@ -2104,6 +2106,20 @@ if TYPE_CHECKING:
|
||||
def is_type_of(cls, msg: protobuf.MessageType) -> TypeGuard["LockDevice"]:
|
||||
return isinstance(msg, cls)
|
||||
|
||||
class SetBusy(protobuf.MessageType):
|
||||
expiry_ms: "int | None"
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
*,
|
||||
expiry_ms: "int | None" = None,
|
||||
) -> None:
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
def is_type_of(cls, msg: protobuf.MessageType) -> TypeGuard["SetBusy"]:
|
||||
return isinstance(msg, cls)
|
||||
|
||||
class EndSession(protobuf.MessageType):
|
||||
|
||||
@classmethod
|
||||
|
@ -5,7 +5,7 @@ endif
|
||||
SKIPPED_MESSAGES := Binance Cardano DebugMonero Eos Monero Ontology Ripple SdProtect Tezos WebAuthn \
|
||||
DebugLinkRecordScreen DebugLinkEraseSdCard DebugLinkWatchLayout \
|
||||
GetOwnershipProof OwnershipProof GetOwnershipId OwnershipId AuthorizeCoinJoin DoPreauthorized \
|
||||
CancelAuthorization DebugLinkLayout GetNonce \
|
||||
CancelAuthorization DebugLinkLayout GetNonce SetBusy \
|
||||
TxAckInput TxAckOutput TxAckPrev TxAckPaymentRequest \
|
||||
EthereumSignTypedData EthereumTypedDataStructRequest EthereumTypedDataStructAck \
|
||||
EthereumTypedDataValueRequest EthereumTypedDataValueAck
|
||||
|
@ -39,6 +39,7 @@ class MessageType(IntEnum):
|
||||
Entropy = 10
|
||||
LoadDevice = 13
|
||||
ResetDevice = 14
|
||||
SetBusy = 16
|
||||
Features = 17
|
||||
PinMatrixRequest = 18
|
||||
PinMatrixAck = 19
|
||||
@ -3064,6 +3065,7 @@ class Features(protobuf.MessageType):
|
||||
38: protobuf.Field("auto_lock_delay_ms", "uint32", repeated=False, required=False),
|
||||
39: protobuf.Field("display_rotation", "uint32", repeated=False, required=False),
|
||||
40: protobuf.Field("experimental_features", "bool", repeated=False, required=False),
|
||||
41: protobuf.Field("busy", "bool", repeated=False, required=False),
|
||||
}
|
||||
|
||||
def __init__(
|
||||
@ -3107,6 +3109,7 @@ class Features(protobuf.MessageType):
|
||||
auto_lock_delay_ms: Optional["int"] = None,
|
||||
display_rotation: Optional["int"] = None,
|
||||
experimental_features: Optional["bool"] = None,
|
||||
busy: Optional["bool"] = None,
|
||||
) -> None:
|
||||
self.capabilities: Sequence["Capability"] = capabilities if capabilities is not None else []
|
||||
self.major_version = major_version
|
||||
@ -3146,12 +3149,27 @@ class Features(protobuf.MessageType):
|
||||
self.auto_lock_delay_ms = auto_lock_delay_ms
|
||||
self.display_rotation = display_rotation
|
||||
self.experimental_features = experimental_features
|
||||
self.busy = busy
|
||||
|
||||
|
||||
class LockDevice(protobuf.MessageType):
|
||||
MESSAGE_WIRE_TYPE = 24
|
||||
|
||||
|
||||
class SetBusy(protobuf.MessageType):
|
||||
MESSAGE_WIRE_TYPE = 16
|
||||
FIELDS = {
|
||||
1: protobuf.Field("expiry_ms", "uint32", repeated=False, required=False),
|
||||
}
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
*,
|
||||
expiry_ms: Optional["int"] = None,
|
||||
) -> None:
|
||||
self.expiry_ms = expiry_ms
|
||||
|
||||
|
||||
class EndSession(protobuf.MessageType):
|
||||
MESSAGE_WIRE_TYPE = 83
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user