Merge pull request #826 from alvinhochun/temp-chg-menu-fix
Fix temp. adjust menu button behaviour
This commit is contained in:
@@ -180,20 +180,33 @@ static void gui_drawBatteryIcon() {
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
static void gui_solderingTempAdjust() {
|
static void gui_solderingTempAdjust() {
|
||||||
uint32_t lastChange = xTaskGetTickCount();
|
uint32_t lastChange = xTaskGetTickCount();
|
||||||
currentTempTargetDegC = 0;
|
currentTempTargetDegC = 0;
|
||||||
uint32_t autoRepeatTimer = 0;
|
uint32_t autoRepeatTimer = 0;
|
||||||
uint8_t autoRepeatAcceleration = 0;
|
uint8_t autoRepeatAcceleration = 0;
|
||||||
|
bool waitForRelease = false;
|
||||||
|
ButtonState buttons = getButtonState();
|
||||||
|
if (buttons != BUTTON_NONE) {
|
||||||
|
// Temp adjust entered by long-pressing F button.
|
||||||
|
waitForRelease = true;
|
||||||
|
}
|
||||||
for (;;) {
|
for (;;) {
|
||||||
OLED::setCursor(0, 0);
|
OLED::setCursor(0, 0);
|
||||||
OLED::clearScreen();
|
OLED::clearScreen();
|
||||||
OLED::setFont(0);
|
OLED::setFont(0);
|
||||||
ButtonState buttons = getButtonState();
|
buttons = getButtonState();
|
||||||
if (buttons)
|
if (buttons) {
|
||||||
|
if (waitForRelease) {
|
||||||
|
buttons = BUTTON_NONE;
|
||||||
|
}
|
||||||
lastChange = xTaskGetTickCount();
|
lastChange = xTaskGetTickCount();
|
||||||
|
} else {
|
||||||
|
waitForRelease = false;
|
||||||
|
}
|
||||||
switch (buttons) {
|
switch (buttons) {
|
||||||
case BUTTON_NONE:
|
case BUTTON_NONE:
|
||||||
// stay
|
// stay
|
||||||
|
autoRepeatAcceleration = 0;
|
||||||
break;
|
break;
|
||||||
case BUTTON_BOTH:
|
case BUTTON_BOTH:
|
||||||
// exit
|
// exit
|
||||||
|
|||||||
Reference in New Issue
Block a user