|
@@ -3717,6 +3717,13 @@ static void lcd_crash_mode_set()
|
|
|
|
|
|
static void lcd_set_lang(unsigned char lang)
|
|
|
{
|
|
|
+ if (lang > LANG_ID_SEC)
|
|
|
+ if (!lcd_show_fullscreen_message_yes_no_and_wait_P(_i("Copy selected language from XFLASH?"), false, true))
|
|
|
+ {
|
|
|
+ lcd_return_to_status();
|
|
|
+ lcd_update_enable(true);
|
|
|
+ return;
|
|
|
+ }
|
|
|
lang_select(lang);
|
|
|
/*
|
|
|
lang_selected = lang;
|
|
@@ -3770,7 +3777,7 @@ static void lcd_language_menu()
|
|
|
MENU_ITEM(back, _T(MSG_WATCH), 0);
|
|
|
MENU_ITEM(setlang, lang_get_name_by_code(lang_get_code(0)), 0);
|
|
|
// MENU_ITEM(setlang, lang_get_name_by_code(lang_get_code(1)), 1);
|
|
|
- for (int i = 2; i < lang_get_count(); i++)
|
|
|
+ for (int i = 2; i < lang_get_count(); i++) //skip seconday language - solved in menu_action_setlang
|
|
|
MENU_ITEM(setlang, lang_get_name_by_code(lang_get_code(i)), i);
|
|
|
END_MENU();
|
|
|
}
|
|
@@ -7359,7 +7366,11 @@ static void menu_action_setlang(unsigned char lang)
|
|
|
return;
|
|
|
}
|
|
|
uint16_t code = lang_get_code(lang);
|
|
|
- if (code == lang_get_code(1)) lcd_set_lang(1);
|
|
|
+ if (code == lang_get_code(1))
|
|
|
+ {
|
|
|
+ lcd_set_lang(1);
|
|
|
+ return;
|
|
|
+ }
|
|
|
lcd_set_lang(lang);
|
|
|
}
|
|
|
|