fix(color): TELE navigation issue when editing top bar widgets (#4344)
This commit is contained in:
@@ -136,9 +136,8 @@ void ScreenUserInterfacePage::build(FormWindow* window)
|
||||
auto line = window->newLine(&grid);
|
||||
new StaticText(line, rect_t{}, STR_TOP_BAR, 0, COLOR_THEME_PRIMARY1);
|
||||
|
||||
auto menu = this->menu;
|
||||
auto setupTopbarWidgets = new TextButton(line, rect_t{}, STR_SETUP_WIDGETS);
|
||||
setupTopbarWidgets->setPressHandler([menu]() -> uint8_t {
|
||||
setupTopbarWidgets->setPressHandler([=]() -> uint8_t {
|
||||
menu->deleteLater();
|
||||
new SetupTopBarWidgetsPage();
|
||||
return 0;
|
||||
|
||||
@@ -87,3 +87,19 @@ void SetupTopBarWidgetsPage::deleteLater(bool detach, bool trash)
|
||||
|
||||
storageDirty(EE_MODEL);
|
||||
}
|
||||
|
||||
void SetupTopBarWidgetsPage::onEvent(event_t event)
|
||||
{
|
||||
#if defined(HARDWARE_KEYS)
|
||||
if (event == EVT_KEY_FIRST(KEY_PAGEUP) || event == EVT_KEY_FIRST(KEY_PAGEDN) ||
|
||||
event == EVT_KEY_FIRST(KEY_SYS) || event == EVT_KEY_FIRST(KEY_MODEL)) {
|
||||
killEvents(event);
|
||||
} else if (event == EVT_KEY_FIRST(KEY_TELE)) {
|
||||
onCancel();
|
||||
} else {
|
||||
FormWindow::onEvent(event);
|
||||
}
|
||||
#else
|
||||
FormWindow::onEvent(event);
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -48,5 +48,6 @@ class SetupTopBarWidgetsPage : public FormWindow
|
||||
|
||||
void onClicked() override;
|
||||
void onCancel() override;
|
||||
void onEvent(event_t event) override;
|
||||
void deleteLater(bool detach = true, bool trash = true) override;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user