Xlite can now change telemetry screens
This commit is contained in:
@@ -520,7 +520,10 @@ void incrTelemetryScreen()
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(PCBX7)
|
||||
#if defined(PCBXLITE)
|
||||
#define EVT_KEY_PREVIOUS_VIEW EVT_KEY_LONG(KEY_LEFT)
|
||||
#define EVT_KEY_NEXT_VIEW EVT_KEY_LONG(KEY_RIGHT)
|
||||
#elif defined(PCBX7)
|
||||
#define EVT_KEY_PREVIOUS_VIEW EVT_KEY_LONG(KEY_PAGE)
|
||||
#define EVT_KEY_NEXT_VIEW EVT_KEY_BREAK(KEY_PAGE)
|
||||
#else
|
||||
@@ -544,14 +547,26 @@ void menuViewTelemetryFrsky(event_t event)
|
||||
break;
|
||||
|
||||
case EVT_KEY_PREVIOUS_VIEW:
|
||||
#if defined(PCBXLITE)
|
||||
if (IS_SHIFT_PRESSED()) {
|
||||
decrTelemetryScreen();
|
||||
}
|
||||
#else
|
||||
if (IS_KEY_LONG(EVT_KEY_PREVIOUS_VIEW)) {
|
||||
killEvents(event);
|
||||
}
|
||||
decrTelemetryScreen();
|
||||
#endif
|
||||
break;
|
||||
|
||||
case EVT_KEY_NEXT_VIEW:
|
||||
#if defined(PCBXLITE)
|
||||
if (IS_SHIFT_PRESSED()) {
|
||||
incrTelemetryScreen();
|
||||
}
|
||||
#else
|
||||
incrTelemetryScreen();
|
||||
#endif
|
||||
break;
|
||||
|
||||
#if defined(CPUARM)
|
||||
|
||||
@@ -307,8 +307,13 @@ void handleGui(event_t event) {
|
||||
// so Lua telemetry script can fully use them
|
||||
if (event) {
|
||||
uint8_t key = EVT_KEY_MASK(event);
|
||||
#if defined(PCBXLITE)
|
||||
// SHIFT + LEFT/RIGHT used to change telemetry screen on XLITE
|
||||
if ((!IS_KEY_LONG(event) && key == KEY_RIGHT && IS_SHIFT_PRESSED()) || (!IS_KEY_LONG(event) && key == KEY_LEFT && IS_SHIFT_PRESSED()) || (!IS_KEY_LONG(event) && key == KEY_EXIT)) {
|
||||
#else
|
||||
// no need to filter out MENU and ENT(short), because they are not used by menuViewTelemetryFrsky()
|
||||
if (key == KEY_PLUS || key == KEY_MINUS || (!IS_KEY_LONG(event) && key == KEY_EXIT)) {
|
||||
#endif
|
||||
// TRACE("Telemetry script event 0x%02x killed", event);
|
||||
event = 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user