Skip to content

Commit 301e61c

Browse files
Changed order of app settings + fixed client
1 parent f562f9b commit 301e61c

File tree

3 files changed

+45
-42
lines changed

3 files changed

+45
-42
lines changed

client/src/ledger_app_clients/ethereum/settings.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,22 +5,25 @@
55

66

77
class SettingID(Enum):
8+
BLIND_SIGNING = auto()
89
VERBOSE_ENS = auto()
9-
VERBOSE_EIP712 = auto()
1010
NONCE = auto()
11+
VERBOSE_EIP712 = auto()
1112
DEBUG_DATA = auto()
1213

1314

1415
def get_device_settings(firmware: Firmware) -> list[SettingID]:
1516
if firmware == Firmware.NANOS:
1617
return [
18+
SettingID.BLIND_SIGNING,
1719
SettingID.NONCE,
1820
SettingID.DEBUG_DATA,
1921
]
2022
return [
23+
SettingID.BLIND_SIGNING,
2124
SettingID.VERBOSE_ENS,
22-
SettingID.VERBOSE_EIP712,
2325
SettingID.NONCE,
26+
SettingID.VERBOSE_EIP712,
2427
SettingID.DEBUG_DATA,
2528
]
2629

src_bagl/ui_flow.c

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -12,22 +12,22 @@
1212
// No risk of collision as this buffer is unused in the settings menu
1313
#define SETTING_BLIND_SIGNING_STATE (strings.common.fullAmount + (BUF_INCREMENT * 0))
1414
#define SETTING_VERBOSE_DOMAIN_NAME_STATE (strings.common.fullAmount + (BUF_INCREMENT * 1))
15-
#define SETTING_VERBOSE_EIP712_STATE (strings.common.fullAmount + (BUF_INCREMENT * 2))
16-
#define SETTING_DISPLAY_NONCE_STATE (strings.common.fullAmount + (BUF_INCREMENT * 3))
15+
#define SETTING_DISPLAY_NONCE_STATE (strings.common.fullAmount + (BUF_INCREMENT * 2))
16+
#define SETTING_VERBOSE_EIP712_STATE (strings.common.fullAmount + (BUF_INCREMENT * 3))
1717
#define SETTING_DISPLAY_DATA_STATE (strings.common.fullAmount + (BUF_INCREMENT * 4))
1818

1919
#define BOOL_TO_STATE_STR(b) (b ? ENABLED_STR : DISABLED_STR)
2020

2121
static void display_settings(const ux_flow_step_t* const start_step);
2222
static void switch_settings_blind_signing(void);
23+
#ifdef HAVE_DOMAIN_NAME
24+
static void switch_settings_verbose_domain_name(void);
25+
#endif // HAVE_DOMAIN_NAME
2326
static void switch_settings_display_data(void);
2427
static void switch_settings_display_nonce(void);
2528
#ifdef HAVE_EIP712_FULL_SUPPORT
2629
static void switch_settings_verbose_eip712(void);
2730
#endif // HAVE_EIP712_FULL_SUPPORT
28-
#ifdef HAVE_DOMAIN_NAME
29-
static void switch_settings_verbose_domain_name(void);
30-
#endif // HAVE_DOMAIN_NAME
3131

3232
//////////////////////////////////////////////////////////////////////
3333
// clang-format off
@@ -105,19 +105,6 @@ UX_STEP_CB(
105105
});
106106
#endif // HAVE_DOMAIN_NAME
107107

108-
#ifdef HAVE_EIP712_FULL_SUPPORT
109-
UX_STEP_CB(
110-
ux_settings_flow_verbose_eip712_step,
111-
bnnn,
112-
switch_settings_verbose_eip712(),
113-
{
114-
"Raw messages",
115-
"Displays raw content",
116-
"from EIP712 messages",
117-
SETTING_VERBOSE_EIP712_STATE
118-
});
119-
#endif // HAVE_EIP712_FULL_SUPPORT
120-
121108
UX_STEP_CB(
122109
ux_settings_flow_display_nonce_step,
123110
#ifdef TARGET_NANOS
@@ -138,6 +125,19 @@ UX_STEP_CB(
138125
SETTING_DISPLAY_NONCE_STATE
139126
});
140127

128+
#ifdef HAVE_EIP712_FULL_SUPPORT
129+
UX_STEP_CB(
130+
ux_settings_flow_verbose_eip712_step,
131+
bnnn,
132+
switch_settings_verbose_eip712(),
133+
{
134+
"Raw messages",
135+
"Displays raw content",
136+
"from EIP712 messages",
137+
SETTING_VERBOSE_EIP712_STATE
138+
});
139+
#endif // HAVE_EIP712_FULL_SUPPORT
140+
141141
UX_STEP_CB(
142142
ux_settings_flow_display_data_step,
143143
#ifdef TARGET_NANOS
@@ -173,10 +173,10 @@ UX_FLOW(ux_settings_flow,
173173
#ifdef HAVE_DOMAIN_NAME
174174
&ux_settings_flow_verbose_domain_name_step,
175175
#endif // HAVE_DOMAIN_NAME
176+
&ux_settings_flow_display_nonce_step,
176177
#ifdef HAVE_EIP712_FULL_SUPPORT
177178
&ux_settings_flow_verbose_eip712_step,
178179
#endif // HAVE_EIP712_FULL_SUPPORT
179-
&ux_settings_flow_display_nonce_step,
180180
&ux_settings_flow_display_data_step,
181181
&ux_settings_flow_back_step);
182182

src_nbgl/ui_home.c

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -15,25 +15,25 @@
1515

1616
enum {
1717
BLIND_SIGNING_TOKEN = FIRST_USER_TOKEN,
18-
DEBUG_TOKEN,
18+
#ifdef HAVE_DOMAIN_NAME
19+
DOMAIN_NAME_VERBOSE_TOKEN,
20+
#endif
1921
NONCE_TOKEN,
2022
#ifdef HAVE_EIP712_FULL_SUPPORT
2123
EIP712_VERBOSE_TOKEN,
2224
#endif
23-
#ifdef HAVE_DOMAIN_NAME
24-
DOMAIN_NAME_VERBOSE_TOKEN
25-
#endif
25+
DEBUG_TOKEN,
2626
};
2727

2828
enum {
2929
BLIND_SIGNING_ID,
3030
#ifdef HAVE_DOMAIN_NAME
3131
DOMAIN_NAME_VERBOSE_ID,
3232
#endif
33+
NONCE_ID,
3334
#ifdef HAVE_EIP712_FULL_SUPPORT
3435
EIP712_VERBOSE_ID,
3536
#endif
36-
NONCE_ID,
3737
DEBUG_ID,
3838
SETTINGS_SWITCHES_NB
3939
};
@@ -61,11 +61,13 @@ static void setting_toggle_callback(int token, uint8_t index, int page) {
6161
switches[BLIND_SIGNING_ID].initState = (nbgl_state_t) value;
6262
nvm_write((void *) &N_storage.dataAllowed, (void *) &value, sizeof(value));
6363
break;
64-
case DEBUG_TOKEN:
65-
value = !N_storage.contractDetails;
66-
switches[DEBUG_ID].initState = (nbgl_state_t) value;
67-
nvm_write((void *) &N_storage.contractDetails, (void *) &value, sizeof(value));
64+
#ifdef HAVE_DOMAIN_NAME
65+
case DOMAIN_NAME_VERBOSE_TOKEN:
66+
value = !N_storage.verbose_domain_name;
67+
switches[DOMAIN_NAME_VERBOSE_ID].initState = (nbgl_state_t) value;
68+
nvm_write((void *) &N_storage.verbose_domain_name, (void *) &value, sizeof(value));
6869
break;
70+
#endif // HAVE_DOMAIN_NAME
6971
case NONCE_TOKEN:
7072
value = !N_storage.displayNonce;
7173
switches[NONCE_ID].initState = (nbgl_state_t) value;
@@ -78,13 +80,11 @@ static void setting_toggle_callback(int token, uint8_t index, int page) {
7880
nvm_write((void *) &N_storage.verbose_eip712, (void *) &value, sizeof(value));
7981
break;
8082
#endif // HAVE_EIP712_FULL_SUPPORT
81-
#ifdef HAVE_DOMAIN_NAME
82-
case DOMAIN_NAME_VERBOSE_TOKEN:
83-
value = !N_storage.verbose_domain_name;
84-
switches[DOMAIN_NAME_VERBOSE_ID].initState = (nbgl_state_t) value;
85-
nvm_write((void *) &N_storage.verbose_domain_name, (void *) &value, sizeof(value));
83+
case DEBUG_TOKEN:
84+
value = !N_storage.contractDetails;
85+
switches[DEBUG_ID].initState = (nbgl_state_t) value;
86+
nvm_write((void *) &N_storage.contractDetails, (void *) &value, sizeof(value));
8687
break;
87-
#endif // HAVE_DOMAIN_NAME
8888
}
8989
}
9090

@@ -132,6 +132,12 @@ static void prepare_and_display_home(const char *appname, const char *tagline, u
132132
switches[DOMAIN_NAME_VERBOSE_ID].tuneId = TUNE_TAP_CASUAL;
133133
#endif // HAVE_DOMAIN_NAME
134134

135+
switches[NONCE_ID].initState = N_storage.displayNonce ? ON_STATE : OFF_STATE;
136+
switches[NONCE_ID].text = "Nonce";
137+
switches[NONCE_ID].subText = "Display nonce in transactions.";
138+
switches[NONCE_ID].token = NONCE_TOKEN;
139+
switches[NONCE_ID].tuneId = TUNE_TAP_CASUAL;
140+
135141
#ifdef HAVE_EIP712_FULL_SUPPORT
136142
switches[EIP712_VERBOSE_ID].initState = N_storage.verbose_eip712 ? ON_STATE : OFF_STATE;
137143
switches[EIP712_VERBOSE_ID].text = "Raw messages";
@@ -140,12 +146,6 @@ static void prepare_and_display_home(const char *appname, const char *tagline, u
140146
switches[EIP712_VERBOSE_ID].tuneId = TUNE_TAP_CASUAL;
141147
#endif // HAVE_EIP712_FULL_SUPPORT
142148

143-
switches[NONCE_ID].initState = N_storage.displayNonce ? ON_STATE : OFF_STATE;
144-
switches[NONCE_ID].text = "Nonce";
145-
switches[NONCE_ID].subText = "Display nonce in transactions.";
146-
switches[NONCE_ID].token = NONCE_TOKEN;
147-
switches[NONCE_ID].tuneId = TUNE_TAP_CASUAL;
148-
149149
switches[DEBUG_ID].initState = N_storage.contractDetails ? ON_STATE : OFF_STATE;
150150
switches[DEBUG_ID].text = "Debug smart contracts";
151151
switches[DEBUG_ID].subText = "Display contract data details.";

0 commit comments

Comments
 (0)