|
|
|
@ -225,11 +225,11 @@ public: |
|
|
|
} |
|
|
|
|
|
|
|
bool handleInput(char c) override { |
|
|
|
if (c == KEY_LEFT) { |
|
|
|
if (c == KEY_LEFT || c == KEY_PREV) { |
|
|
|
_page = (_page + HomePage::Count - 1) % HomePage::Count; |
|
|
|
return true; |
|
|
|
} |
|
|
|
if (c == KEY_RIGHT || c == KEY_SELECT) { |
|
|
|
if (c == KEY_NEXT || c == KEY_RIGHT) { |
|
|
|
_page = (_page + 1) % HomePage::Count; |
|
|
|
if (_page == HomePage::RECENT) { |
|
|
|
_task->showAlert("Recent adverts", 800); |
|
|
|
@ -331,7 +331,7 @@ public: |
|
|
|
} |
|
|
|
|
|
|
|
bool handleInput(char c) override { |
|
|
|
if (c == KEY_SELECT || c == KEY_RIGHT) { |
|
|
|
if (c == KEY_NEXT || c == KEY_RIGHT) { |
|
|
|
num_unread--; |
|
|
|
if (num_unread == 0) { |
|
|
|
_task->gotoHomeScreen(); |
|
|
|
@ -494,9 +494,13 @@ void UITask::loop() { |
|
|
|
#if defined(PIN_USER_BTN) |
|
|
|
int ev = user_btn.check(); |
|
|
|
if (ev == BUTTON_EVENT_CLICK) { |
|
|
|
c = checkDisplayOn(KEY_SELECT); |
|
|
|
c = checkDisplayOn(KEY_NEXT); |
|
|
|
} else if (ev == BUTTON_EVENT_LONG_PRESS) { |
|
|
|
c = handleLongPress(KEY_ENTER); |
|
|
|
} else if (ev == BUTTON_EVENT_DOUBLE_CLICK) { |
|
|
|
c = handleDoubleClick(KEY_PREV); |
|
|
|
} else if (ev == BUTTON_EVENT_TRIPLE_CLICK) { |
|
|
|
c = handleTripleClick(KEY_SELECT); |
|
|
|
} |
|
|
|
#endif |
|
|
|
#if defined(WIO_TRACKER_L1) |
|
|
|
@ -516,9 +520,13 @@ void UITask::loop() { |
|
|
|
#if defined(PIN_USER_BTN_ANA) |
|
|
|
ev = analog_btn.check(); |
|
|
|
if (ev == BUTTON_EVENT_CLICK) { |
|
|
|
c = checkDisplayOn(KEY_SELECT); |
|
|
|
c = checkDisplayOn(KEY_NEXT); |
|
|
|
} else if (ev == BUTTON_EVENT_LONG_PRESS) { |
|
|
|
c = handleLongPress(KEY_ENTER); |
|
|
|
} else if (ev == BUTTON_EVENT_DOUBLE_CLICK) { |
|
|
|
c = handleDoubleClick(KEY_PREV); |
|
|
|
} else if (ev == BUTTON_EVENT_TRIPLE_CLICK) { |
|
|
|
c = handleTripleClick(KEY_SELECT); |
|
|
|
} |
|
|
|
#endif |
|
|
|
#if defined(DISP_BACKLIGHT) && defined(BACKLIGHT_BTN) |
|
|
|
@ -615,20 +623,53 @@ char UITask::handleLongPress(char c) { |
|
|
|
return c; |
|
|
|
} |
|
|
|
|
|
|
|
/*
|
|
|
|
void UITask::handleButtonTriplePress() { |
|
|
|
MESH_DEBUG_PRINTLN("UITask: triple press triggered"); |
|
|
|
// Toggle buzzer quiet mode
|
|
|
|
char UITask::handleDoubleClick(char c) { |
|
|
|
MESH_DEBUG_PRINTLN("UITask: double click triggered"); |
|
|
|
checkDisplayOn(c); |
|
|
|
return c; |
|
|
|
} |
|
|
|
|
|
|
|
char UITask::handleTripleClick(char c) { |
|
|
|
MESH_DEBUG_PRINTLN("UITask: triple click triggered"); |
|
|
|
checkDisplayOn(c); |
|
|
|
toggleBuzzer(); |
|
|
|
c = 0; |
|
|
|
return c; |
|
|
|
} |
|
|
|
|
|
|
|
void UITask::toggleGPS() { |
|
|
|
if (_sensors != NULL) { |
|
|
|
// toggle GPS on/off
|
|
|
|
int num = _sensors->getNumSettings(); |
|
|
|
for (int i = 0; i < num; i++) { |
|
|
|
if (strcmp(_sensors->getSettingName(i), "gps") == 0) { |
|
|
|
if (strcmp(_sensors->getSettingValue(i), "1") == 0) { |
|
|
|
_sensors->setSettingValue("gps", "0"); |
|
|
|
soundBuzzer(UIEventType::ack); |
|
|
|
showAlert("GPS: Disabled", 800); |
|
|
|
} else { |
|
|
|
_sensors->setSettingValue("gps", "1"); |
|
|
|
soundBuzzer(UIEventType::ack); |
|
|
|
showAlert("GPS: Enabled", 800); |
|
|
|
} |
|
|
|
_next_refresh = 0; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
void UITask::toggleBuzzer() { |
|
|
|
// Toggle buzzer quiet mode
|
|
|
|
#ifdef PIN_BUZZER |
|
|
|
if (buzzer.isQuiet()) { |
|
|
|
buzzer.quiet(false); |
|
|
|
soundBuzzer(UIEventType::ack); |
|
|
|
showAlert("Buzzer: ON", 600); |
|
|
|
showAlert("Buzzer: ON", 800); |
|
|
|
} else { |
|
|
|
buzzer.quiet(true); |
|
|
|
showAlert("Buzzer: OFF", 600); |
|
|
|
showAlert("Buzzer: OFF", 800); |
|
|
|
} |
|
|
|
_next_refresh = 0; // trigger refresh
|
|
|
|
#endif |
|
|
|
} |
|
|
|
*/ |
|
|
|
|