Register popup fix

This commit is contained in:
Bertrand Songis
2019-05-06 09:56:01 +02:00
parent 88bff79523
commit 61700b56b6
13 changed files with 26 additions and 16 deletions
+1
View File
@@ -498,6 +498,7 @@ void runPopupRegister(event_t event)
void startRegisterDialog(uint8_t module)
{
memclear(&reusableBuffer.moduleSetup.pxx2, sizeof(reusableBuffer.moduleSetup.pxx2));
reusableBuffer.moduleSetup.pxx2.registerPopupVerticalPosition = ITEM_REGISTER_BUTTONS;
moduleState[module].mode = MODULE_MODE_REGISTER;
s_editMode = 0;
POPUP_INPUT("", runPopupRegister);
+1 -1
View File
@@ -634,7 +634,7 @@ void menuRadioSetup(event_t event)
g_eeGeneral.stickMode = reusableBuffer.generalSettings.stickMode;
checkTHR();
resumePulses();
clearKeyEvents();
waitKeysReleased();
}
MOVE_CURSOR_FROM_HERE();
break;
+1 -1
View File
@@ -502,7 +502,7 @@ void menuRadioSetup(event_t event)
g_eeGeneral.stickMode = reusableBuffer.generalSettings.stickMode;
checkTHR();
resumePulses();
clearKeyEvents();
waitKeysReleased();
}
break;
}
+1 -1
View File
@@ -86,7 +86,7 @@ void readModelNotes()
strcpy(buf, TEXT_EXT);
}
clearKeyEvents();
waitKeysReleased();
event_t event = EVT_ENTRY;
while (event != EVT_KEY_FIRST(KEY_EXIT)) {
lcdRefreshWait();
+1 -1
View File
@@ -61,7 +61,7 @@ void showAlertBox(const char * title, const char * text, const char * action, ui
AUDIO_ERROR_MESSAGE(sound);
lcdRefresh();
lcdSetContrast();
clearKeyEvents();
waitKeysReleased();
backlightOn();
checkBacklight();
}
+3 -3
View File
@@ -440,8 +440,8 @@ bool menuRadioSetup(event_t event)
else {
g_eeGeneral.fai = editCheckBox(g_eeGeneral.fai, RADIO_SETUP_2ND_COLUMN, y, attr, event);
if (attr && checkIncDec_Ret) {
g_eeGeneral.fai = false;
POPUP_CONFIRMATION("FAI mode?");
g_eeGeneral.fai = false;
POPUP_CONFIRMATION("FAI mode?");
}
}
break;
@@ -489,7 +489,7 @@ bool menuRadioSetup(event_t event)
g_eeGeneral.stickMode = reusableBuffer.generalSettings.stickMode;
checkTHR();
resumePulses();
clearKeyEvents();
waitKeysReleased();
}
break;
}
+1 -1
View File
@@ -226,7 +226,7 @@ void showAlertBox(const char * title, const char * text, const char * action , u
AUDIO_ERROR_MESSAGE(sound);
lcdRefresh();
lcdSetContrast();
clearKeyEvents();
waitKeysReleased();
backlightOn();
checkBacklight();
}
+4
View File
@@ -91,6 +91,7 @@ enum
inline void POPUP_INFORMATION(const char * s)
{
killAllEvents();
warningText = s;
warningInfoText = nullptr;
warningType = WARNING_TYPE_INFO;
@@ -99,6 +100,7 @@ enum
inline void POPUP_WARNING(const char * s)
{
killAllEvents();
warningText = s;
warningInfoText = nullptr;
warningType = WARNING_TYPE_ASTERISK;
@@ -107,6 +109,7 @@ enum
inline void POPUP_CONFIRMATION(const char * s, PopupMenuHandler handler)
{
killAllEvents();
warningText = s;
warningInfoText = nullptr;
warningType = WARNING_TYPE_CONFIRM;
@@ -116,6 +119,7 @@ enum
inline void POPUP_INPUT(const char * s, PopupFunc func)
{
killAllEvents();
warningText = s;
warningInfoText = nullptr;
warningType = WARNING_TYPE_INPUT;
+1 -1
View File
@@ -110,7 +110,7 @@ void readModelNotes()
char *buf = strcat_modelname(&s_text_file[sizeof(MODELS_PATH)], g_eeGeneral.currModel);
strcpy(buf, TEXT_EXT);
clearKeyEvents();
waitKeysReleased();
event_t event = EVT_ENTRY;
while (event != EVT_KEY_BREAK(KEY_EXIT)) {
lcdRefreshWait();
+8 -1
View File
@@ -169,7 +169,14 @@ void killEvents(event_t event)
}
}
bool clearKeyEvents()
void killAllEvents()
{
for (uint8_t key = 0; key < DIM(keys); key++) {
keys[key].killEvents();
}
}
bool waitKeysReleased()
{
#if defined(PCBSKY9X)
RTOS_WAIT_MS(200); // 200ms
+2 -4
View File
@@ -113,11 +113,9 @@ inline void putEvent(event_t evt)
void pauseEvents(event_t event);
void killEvents(event_t event);
bool clearKeyEvents();
void killAllEvents();
bool waitKeysReleased();
event_t getEvent(bool trim=false);
bool keyDown();
#endif // _KEYS_H_
+1 -1
View File
@@ -873,7 +873,7 @@ void checkAll()
readModelNotes();
}
if (!clearKeyEvents()) {
if (!waitKeysReleased()) {
showMessageBox(STR_KEYSTUCK);
tmr10ms_t tgtime = get_tmr10ms() + 500;
while (tgtime != get_tmr10ms()) {
+1 -1
View File
@@ -737,7 +737,7 @@ void checkSwitches()
lcdRefresh();
lcdSetContrast();
clearKeyEvents();
waitKeysReleased();
last_bad_switches = switches_states;
}