chore(color): maintain 3.0 setting for key shortcuts and favorites (#6835)
This commit is contained in:
@@ -386,7 +386,7 @@ Node convert<GeneralSettings>::encode(const GeneralSettings& rhs)
|
||||
node["modelCustomScriptsDisabled"] = (int)rhs.modelCustomScriptsDisabled;
|
||||
node["modelTelemetryDisabled"] = (int)rhs.modelTelemetryDisabled;
|
||||
|
||||
if (hasColorLcd && VERSION_MAJOR > 2) {
|
||||
if (hasColorLcd) {
|
||||
for (int i = 0; i < MAX_KEYSHORTCUTS; i += 1)
|
||||
if (rhs.keyShortcuts[i] != GeneralSettings::QM_NONE)
|
||||
node["keyShortcuts"][std::to_string(i)]["shortcut"] = QMPageLut << rhs.keyShortcuts[i];
|
||||
|
||||
@@ -1092,9 +1092,9 @@ void GeneralSettings::setDefaultFavorites()
|
||||
void GeneralSettings::setDefaultKeyShortcuts()
|
||||
{
|
||||
keyShortcuts[0] = QM_MODEL_SETUP; // MDL short
|
||||
keyShortcuts[1] = (VERSION_MAJOR == 2) ? QM_TOOLS_APPS : QM_OPEN_QUICK_MENU; // SYS short
|
||||
keyShortcuts[1] = QM_OPEN_QUICK_MENU; // SYS short
|
||||
keyShortcuts[2] = QM_UI_SCREEN1; // TELE short
|
||||
keyShortcuts[3] = QM_MANAGE_MODELS; // MDL long
|
||||
keyShortcuts[4] = (VERSION_MAJOR == 2) ? QM_RADIO_SETUP : QM_TOOLS_APPS; // SYS long
|
||||
keyShortcuts[4] = QM_TOOLS_APPS; // SYS long
|
||||
keyShortcuts[5] = QM_TOOLS_CHAN_MON; // TELE long
|
||||
}
|
||||
|
||||
@@ -1162,13 +1162,8 @@ PACK(struct RadioData {
|
||||
NOBACKUP(uint8_t pwrOffIfInactive);
|
||||
|
||||
#if defined(COLORLCD)
|
||||
#if VERSION_MAJOR == 2
|
||||
NOBACKUP(QuickMenuPage keyShortcuts[MAX_KEY_SHORTCUTS] SKIP);
|
||||
NOBACKUP(QuickMenuPage qmFavorites[MAX_QM_FAVORITES] SKIP);
|
||||
#else
|
||||
NOBACKUP(QuickMenuPage keyShortcuts[MAX_KEY_SHORTCUTS]);
|
||||
NOBACKUP(QuickMenuPage qmFavorites[MAX_QM_FAVORITES]);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
NOBACKUP(uint8_t getBrightness() const
|
||||
|
||||
@@ -95,6 +95,30 @@ void RadioData::cfsSetOffColorLuaOverride(uint8_t n, bool v) {
|
||||
QMPage RadioData::getKeyShortcut(event_t event)
|
||||
{
|
||||
QMPage page = QM_NONE;
|
||||
#if VERSION_MAJOR == 2
|
||||
switch(event) {
|
||||
case EVT_KEY_BREAK(KEY_MODEL):
|
||||
page = QM_MODEL_SETUP;
|
||||
break;
|
||||
case EVT_KEY_BREAK(KEY_SYS):
|
||||
page = QM_TOOLS_APPS;
|
||||
break;
|
||||
case EVT_KEY_BREAK(KEY_TELE):
|
||||
page = QM_UI_SCREEN1;
|
||||
break;
|
||||
case EVT_KEY_LONG(KEY_MODEL):
|
||||
page = QM_MANAGE_MODELS;
|
||||
break;
|
||||
case EVT_KEY_LONG(KEY_SYS):
|
||||
page = QM_RADIO_SETUP;
|
||||
break;
|
||||
case EVT_KEY_LONG(KEY_TELE):
|
||||
page = QM_TOOLS_CHAN_MON;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
#else
|
||||
switch(event) {
|
||||
case EVT_KEY_BREAK(KEY_MODEL):
|
||||
page = (QMPage)keyShortcuts[0].shortcut;
|
||||
@@ -117,6 +141,7 @@ QMPage RadioData::getKeyShortcut(event_t event)
|
||||
default:
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
if (page >= QM_UI_SCREEN1 && page <= QM_UI_SCREEN10)
|
||||
page = (QMPage)(QM_UI_SCREEN1 + ViewMain::instance()->getCurrentMainView());
|
||||
return page;
|
||||
@@ -160,13 +185,8 @@ void RadioData::defaultKeyShortcuts()
|
||||
{
|
||||
setKeyShortcut(EVT_KEY_BREAK(KEY_MODEL), QM_MODEL_SETUP);
|
||||
setKeyShortcut(EVT_KEY_LONG(KEY_MODEL), QM_MANAGE_MODELS);
|
||||
#if VERSION_MAJOR == 2
|
||||
setKeyShortcut(EVT_KEY_BREAK(KEY_SYS), QM_TOOLS_APPS);
|
||||
setKeyShortcut(EVT_KEY_LONG(KEY_SYS), QM_RADIO_SETUP);
|
||||
#else
|
||||
setKeyShortcut(EVT_KEY_BREAK(KEY_SYS), QM_OPEN_QUICK_MENU);
|
||||
setKeyShortcut(EVT_KEY_LONG(KEY_SYS), QM_TOOLS_APPS);
|
||||
#endif
|
||||
setKeyShortcut(EVT_KEY_BREAK(KEY_TELE), QM_UI_SCREEN1);
|
||||
setKeyShortcut(EVT_KEY_LONG(KEY_TELE), QM_TOOLS_CHAN_MON);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user