mirror of
https://github.com/meshtastic/firmware.git
synced 2025-12-20 17:52:35 +00:00
Merge branch 'develop' into multi-message-Storage
This commit is contained in:
@@ -31,21 +31,23 @@ MUIDB_8MB=(
|
|||||||
"seeed-sensecap-indicator"
|
"seeed-sensecap-indicator"
|
||||||
)
|
)
|
||||||
BIGDB_16MB=(
|
BIGDB_16MB=(
|
||||||
"t-deck"
|
|
||||||
"mesh-tab"
|
|
||||||
"t-energy-s3"
|
|
||||||
"dreamcatcher"
|
"dreamcatcher"
|
||||||
"ESP32-S3-Pico"
|
|
||||||
"m5stack-cores3"
|
|
||||||
"station-g2"
|
|
||||||
"t-eth-elite"
|
|
||||||
"tlora-pager"
|
|
||||||
"t-watch-s3"
|
|
||||||
"elecrow-adv"
|
"elecrow-adv"
|
||||||
|
"ESP32-S3-Pico"
|
||||||
|
"heltec-v4"
|
||||||
|
"m5stack-cores3"
|
||||||
|
"mesh-tab"
|
||||||
|
"station-g2"
|
||||||
|
"t-deck"
|
||||||
|
"t-energy-s3"
|
||||||
|
"t-eth-elite"
|
||||||
|
"t-watch-s3"
|
||||||
|
"tlora-pager"
|
||||||
)
|
)
|
||||||
S3_VARIANTS=(
|
S3_VARIANTS=(
|
||||||
"s3"
|
"s3"
|
||||||
"-v3"
|
"-v3"
|
||||||
|
"-v4"
|
||||||
"t-deck"
|
"t-deck"
|
||||||
"wireless-paper"
|
"wireless-paper"
|
||||||
"wireless-tracker"
|
"wireless-tracker"
|
||||||
|
|||||||
@@ -425,6 +425,12 @@ void drawNodeListScreen(OLEDDisplay *display, OLEDDisplayUiState *state, int16_t
|
|||||||
{
|
{
|
||||||
const int COMMON_HEADER_HEIGHT = FONT_HEIGHT_SMALL - 1;
|
const int COMMON_HEADER_HEIGHT = FONT_HEIGHT_SMALL - 1;
|
||||||
const int rowYOffset = FONT_HEIGHT_SMALL - 3;
|
const int rowYOffset = FONT_HEIGHT_SMALL - 3;
|
||||||
|
bool locationScreen = false;
|
||||||
|
|
||||||
|
if (strcmp(title, "Bearings") == 0)
|
||||||
|
locationScreen = true;
|
||||||
|
else if (strcmp(title, "Distance") == 0)
|
||||||
|
locationScreen = true;
|
||||||
#if defined(M5STACK_UNITC6L)
|
#if defined(M5STACK_UNITC6L)
|
||||||
int columnWidth = display->getWidth();
|
int columnWidth = display->getWidth();
|
||||||
#else
|
#else
|
||||||
@@ -440,7 +446,7 @@ void drawNodeListScreen(OLEDDisplay *display, OLEDDisplayUiState *state, int16_t
|
|||||||
|
|
||||||
int totalEntries = nodeDB->getNumMeshNodes();
|
int totalEntries = nodeDB->getNumMeshNodes();
|
||||||
int totalRowsAvailable = (display->getHeight() - y) / rowYOffset;
|
int totalRowsAvailable = (display->getHeight() - y) / rowYOffset;
|
||||||
|
int numskipped = 0;
|
||||||
int visibleNodeRows = totalRowsAvailable;
|
int visibleNodeRows = totalRowsAvailable;
|
||||||
#if defined(M5STACK_UNITC6L)
|
#if defined(M5STACK_UNITC6L)
|
||||||
int totalColumns = 1;
|
int totalColumns = 1;
|
||||||
@@ -460,6 +466,10 @@ void drawNodeListScreen(OLEDDisplay *display, OLEDDisplayUiState *state, int16_t
|
|||||||
int rowCount = 0;
|
int rowCount = 0;
|
||||||
|
|
||||||
for (int i = startIndex; i < endIndex; ++i) {
|
for (int i = startIndex; i < endIndex; ++i) {
|
||||||
|
if (locationScreen && !nodeDB->getMeshNodeByIndex(i)->has_position) {
|
||||||
|
numskipped++;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
int xPos = x + (col * columnWidth);
|
int xPos = x + (col * columnWidth);
|
||||||
int yPos = y + yOffset;
|
int yPos = y + yOffset;
|
||||||
renderer(display, nodeDB->getMeshNodeByIndex(i), xPos, yPos, columnWidth);
|
renderer(display, nodeDB->getMeshNodeByIndex(i), xPos, yPos, columnWidth);
|
||||||
@@ -482,6 +492,9 @@ void drawNodeListScreen(OLEDDisplay *display, OLEDDisplayUiState *state, int16_t
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// This should correct the scrollbar
|
||||||
|
totalEntries -= numskipped;
|
||||||
|
|
||||||
#if !defined(M5STACK_UNITC6L)
|
#if !defined(M5STACK_UNITC6L)
|
||||||
// Draw column separator
|
// Draw column separator
|
||||||
if (shownCount > 0) {
|
if (shownCount > 0) {
|
||||||
|
|||||||
Reference in New Issue
Block a user