mirror of
https://github.com/meshtastic/firmware.git
synced 2025-08-13 16:55:08 +00:00
Cleanup
This commit is contained in:
parent
396fc1824e
commit
99f6b398b3
@ -454,12 +454,11 @@ static void drawBattery(OLEDDisplay *display, int16_t x, int16_t y, uint8_t *img
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Slightly more conservative scaling based on screen width
|
// Slightly more conservative scaling based on screen width
|
||||||
int screenWidth = display->getWidth();
|
|
||||||
int scale = 1;
|
int scale = 1;
|
||||||
|
|
||||||
if (screenWidth >= 200)
|
if (SCREEN_WIDTH >= 200)
|
||||||
scale = 2;
|
scale = 2;
|
||||||
if (screenWidth >= 300)
|
if (SCREEN_WIDTH >= 300)
|
||||||
scale = 2; // Do NOT go higher than 2
|
scale = 2; // Do NOT go higher than 2
|
||||||
|
|
||||||
// Draw scaled battery image (16 columns × 8 rows)
|
// Draw scaled battery image (16 columns × 8 rows)
|
||||||
@ -1008,14 +1007,13 @@ void drawCommonHeader(OLEDDisplay *display, int16_t x, int16_t y)
|
|||||||
const bool isBold = config.display.heading_bold;
|
const bool isBold = config.display.heading_bold;
|
||||||
const int xOffset = 4;
|
const int xOffset = 4;
|
||||||
const int highlightHeight = FONT_HEIGHT_SMALL - 1;
|
const int highlightHeight = FONT_HEIGHT_SMALL - 1;
|
||||||
const int screenWidth = display->getWidth();
|
|
||||||
|
|
||||||
display->setFont(FONT_SMALL);
|
display->setFont(FONT_SMALL);
|
||||||
display->setTextAlignment(TEXT_ALIGN_LEFT);
|
display->setTextAlignment(TEXT_ALIGN_LEFT);
|
||||||
|
|
||||||
// === Background highlight ===
|
// === Background highlight ===
|
||||||
if (isInverted) {
|
if (isInverted) {
|
||||||
drawRoundedHighlight(display, x, y, screenWidth, highlightHeight, 2);
|
drawRoundedHighlight(display, x, y, SCREEN_WIDTH, highlightHeight, 2);
|
||||||
display->setColor(BLACK);
|
display->setColor(BLACK);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1024,7 +1022,7 @@ void drawCommonHeader(OLEDDisplay *display, int16_t x, int16_t y)
|
|||||||
|
|
||||||
// === Battery dynamically scaled ===
|
// === Battery dynamically scaled ===
|
||||||
const int nubSize = 2;
|
const int nubSize = 2;
|
||||||
const int batteryLong = screenWidth > 200 ? 29 : 25; // Was 28/24
|
const int batteryLong = SCREEN_WIDTH > 200 ? 29 : 25; // Was 28/24
|
||||||
const int batteryShort = highlightHeight - nubSize - 2;
|
const int batteryShort = highlightHeight - nubSize - 2;
|
||||||
|
|
||||||
int batteryX = x + xOffset;
|
int batteryX = x + xOffset;
|
||||||
@ -1039,7 +1037,7 @@ void drawCommonHeader(OLEDDisplay *display, int16_t x, int16_t y)
|
|||||||
lastBlink = now;
|
lastBlink = now;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (screenWidth > 128) {
|
if (SCREEN_WIDTH > 128) {
|
||||||
// === Horizontal battery ===
|
// === Horizontal battery ===
|
||||||
batteryY = y + (highlightHeight - batteryShort) / 2;
|
batteryY = y + (highlightHeight - batteryShort) / 2;
|
||||||
|
|
||||||
@ -1100,7 +1098,7 @@ void drawCommonHeader(OLEDDisplay *display, int16_t x, int16_t y)
|
|||||||
char percentStr[8];
|
char percentStr[8];
|
||||||
snprintf(percentStr, sizeof(percentStr), "%d%%", chargePercent);
|
snprintf(percentStr, sizeof(percentStr), "%d%%", chargePercent);
|
||||||
|
|
||||||
const int batteryOffset = screenWidth > 128 ? 34 : 9;
|
const int batteryOffset = SCREEN_WIDTH > 128 ? 34 : 9;
|
||||||
const int percentX = x + xOffset + batteryOffset;
|
const int percentX = x + xOffset + batteryOffset;
|
||||||
display->drawString(percentX, textY, percentStr);
|
display->drawString(percentX, textY, percentStr);
|
||||||
if (isBold)
|
if (isBold)
|
||||||
@ -1121,8 +1119,8 @@ void drawCommonHeader(OLEDDisplay *display, int16_t x, int16_t y)
|
|||||||
char timeStr[10];
|
char timeStr[10];
|
||||||
snprintf(timeStr, sizeof(timeStr), "%d:%02d%s", hour, minute, isPM ? "p" : "a");
|
snprintf(timeStr, sizeof(timeStr), "%d:%02d%s", hour, minute, isPM ? "p" : "a");
|
||||||
|
|
||||||
int timeX = screenWidth + 3 - xOffset - display->getStringWidth(timeStr);
|
int timeX = SCREEN_WIDTH + 3 - xOffset - display->getStringWidth(timeStr);
|
||||||
if (screenWidth > 128)
|
if (SCREEN_WIDTH > 128)
|
||||||
timeX -= 1;
|
timeX -= 1;
|
||||||
display->drawString(timeX, textY, timeStr);
|
display->drawString(timeX, textY, timeStr);
|
||||||
if (isBold)
|
if (isBold)
|
||||||
@ -1142,12 +1140,11 @@ void drawTextMessageFrame(OLEDDisplay *display, OLEDDisplayUiState *state, int16
|
|||||||
display->setTextAlignment(TEXT_ALIGN_LEFT);
|
display->setTextAlignment(TEXT_ALIGN_LEFT);
|
||||||
display->setFont(FONT_SMALL);
|
display->setFont(FONT_SMALL);
|
||||||
|
|
||||||
const int screenWidth = display->getWidth();
|
|
||||||
const int screenHeight = display->getHeight();
|
const int screenHeight = display->getHeight();
|
||||||
const int navHeight = FONT_HEIGHT_SMALL;
|
const int navHeight = FONT_HEIGHT_SMALL;
|
||||||
const int scrollBottom = screenHeight - navHeight;
|
const int scrollBottom = screenHeight - navHeight;
|
||||||
const int usableHeight = scrollBottom;
|
const int usableHeight = scrollBottom;
|
||||||
const int textWidth = screenWidth;
|
const int textWidth = SCREEN_WIDTH;
|
||||||
const int cornerRadius = 2;
|
const int cornerRadius = 2;
|
||||||
|
|
||||||
bool isInverted = (config.display.displaymode == meshtastic_Config_DisplayConfig_DisplayMode_INVERTED);
|
bool isInverted = (config.display.displaymode == meshtastic_Config_DisplayConfig_DisplayMode_INVERTED);
|
||||||
@ -1163,7 +1160,7 @@ void drawTextMessageFrame(OLEDDisplay *display, OLEDDisplayUiState *state, int16
|
|||||||
bool useTimestamp = deltaToTimestamp(seconds, ×tampHours, ×tampMinutes, &daysAgo);
|
bool useTimestamp = deltaToTimestamp(seconds, ×tampHours, ×tampMinutes, &daysAgo);
|
||||||
|
|
||||||
if (useTimestamp && minutes >= 15 && daysAgo == 0) {
|
if (useTimestamp && minutes >= 15 && daysAgo == 0) {
|
||||||
std::string prefix = (daysAgo == 1 && screenWidth >= 200) ? "Yesterday" : "At";
|
std::string prefix = (daysAgo == 1 && SCREEN_WIDTH >= 200) ? "Yesterday" : "At";
|
||||||
std::string meridiem = "AM";
|
std::string meridiem = "AM";
|
||||||
if (config.display.use_12h_clock) {
|
if (config.display.use_12h_clock) {
|
||||||
if (timestampHours >= 12) meridiem = "PM";
|
if (timestampHours >= 12) meridiem = "PM";
|
||||||
@ -1233,7 +1230,7 @@ void drawTextMessageFrame(OLEDDisplay *display, OLEDDisplayUiState *state, int16
|
|||||||
if (strcmp(msg, e.code) == 0) {
|
if (strcmp(msg, e.code) == 0) {
|
||||||
// Draw the header
|
// Draw the header
|
||||||
if (isInverted) {
|
if (isInverted) {
|
||||||
drawRoundedHighlight(display, x, 0, screenWidth, FONT_HEIGHT_SMALL - 1, cornerRadius);
|
drawRoundedHighlight(display, x, 0, SCREEN_WIDTH, FONT_HEIGHT_SMALL - 1, cornerRadius);
|
||||||
display->setColor(BLACK);
|
display->setColor(BLACK);
|
||||||
display->drawString(x + 3, 0, headerStr);
|
display->drawString(x + 3, 0, headerStr);
|
||||||
if (isBold) display->drawString(x + 4, 0, headerStr);
|
if (isBold) display->drawString(x + 4, 0, headerStr);
|
||||||
@ -1245,7 +1242,7 @@ void drawTextMessageFrame(OLEDDisplay *display, OLEDDisplayUiState *state, int16
|
|||||||
// Center the emote below header + apply bounce
|
// Center the emote below header + apply bounce
|
||||||
int remainingHeight = screenHeight - FONT_HEIGHT_SMALL - navHeight;
|
int remainingHeight = screenHeight - FONT_HEIGHT_SMALL - navHeight;
|
||||||
int emoteY = FONT_HEIGHT_SMALL + (remainingHeight - e.height) / 2 + bounceY - bounceRange;
|
int emoteY = FONT_HEIGHT_SMALL + (remainingHeight - e.height) / 2 + bounceY - bounceRange;
|
||||||
display->drawXbm((screenWidth - e.width) / 2, emoteY, e.width, e.height, e.bitmap);
|
display->drawXbm((SCREEN_WIDTH - e.width) / 2, emoteY, e.width, e.height, e.bitmap);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1331,7 +1328,7 @@ void drawTextMessageFrame(OLEDDisplay *display, OLEDDisplayUiState *state, int16
|
|||||||
int lineY = static_cast<int>(i * rowHeight + yOffset);
|
int lineY = static_cast<int>(i * rowHeight + yOffset);
|
||||||
if (lineY > -rowHeight && lineY < scrollBottom) {
|
if (lineY > -rowHeight && lineY < scrollBottom) {
|
||||||
if (i == 0 && isInverted) {
|
if (i == 0 && isInverted) {
|
||||||
drawRoundedHighlight(display, x, lineY, screenWidth, FONT_HEIGHT_SMALL - 1, cornerRadius);
|
drawRoundedHighlight(display, x, lineY, SCREEN_WIDTH, FONT_HEIGHT_SMALL - 1, cornerRadius);
|
||||||
display->setColor(BLACK);
|
display->setColor(BLACK);
|
||||||
display->drawString(x + 3, lineY, lines[i].c_str());
|
display->drawString(x + 3, lineY, lines[i].c_str());
|
||||||
if (isBold) display->drawString(x + 4, lineY, lines[i].c_str());
|
if (isBold) display->drawString(x + 4, lineY, lines[i].c_str());
|
||||||
@ -1741,8 +1738,7 @@ static void drawNodeInfo(OLEDDisplay *display, OLEDDisplayUiState *state, int16_
|
|||||||
titleStr = titleBuf;
|
titleStr = titleBuf;
|
||||||
}
|
}
|
||||||
|
|
||||||
const int screenWidth = display->getWidth();
|
const int centerX = x + SCREEN_WIDTH / 2;
|
||||||
const int centerX = x + screenWidth / 2;
|
|
||||||
const int highlightHeight = FONT_HEIGHT_SMALL - 1;
|
const int highlightHeight = FONT_HEIGHT_SMALL - 1;
|
||||||
const int headerOffsetY = 2;
|
const int headerOffsetY = 2;
|
||||||
const int titleY = y + headerOffsetY + (highlightHeight - FONT_HEIGHT_SMALL) / 2;
|
const int titleY = y + headerOffsetY + (highlightHeight - FONT_HEIGHT_SMALL) / 2;
|
||||||
@ -1972,7 +1968,6 @@ void drawNodeListScreen(OLEDDisplay *display, OLEDDisplayUiState *state, int16_t
|
|||||||
const int rowYOffset = FONT_HEIGHT_SMALL - 3;
|
const int rowYOffset = FONT_HEIGHT_SMALL - 3;
|
||||||
|
|
||||||
int columnWidth = display->getWidth() / 2;
|
int columnWidth = display->getWidth() / 2;
|
||||||
int screenWidth = display->getWidth();
|
|
||||||
|
|
||||||
display->clear();
|
display->clear();
|
||||||
|
|
||||||
@ -1982,7 +1977,7 @@ void drawNodeListScreen(OLEDDisplay *display, OLEDDisplayUiState *state, int16_t
|
|||||||
// === Manually draw the centered title within the header ===
|
// === Manually draw the centered title within the header ===
|
||||||
const int highlightHeight = COMMON_HEADER_HEIGHT;
|
const int highlightHeight = COMMON_HEADER_HEIGHT;
|
||||||
const int textY = y + 2 + (highlightHeight - FONT_HEIGHT_SMALL) / 2;
|
const int textY = y + 2 + (highlightHeight - FONT_HEIGHT_SMALL) / 2;
|
||||||
const int centerX = x + screenWidth / 2;
|
const int centerX = x + SCREEN_WIDTH / 2;
|
||||||
|
|
||||||
display->setFont(FONT_SMALL);
|
display->setFont(FONT_SMALL);
|
||||||
display->setTextAlignment(TEXT_ALIGN_CENTER);
|
display->setTextAlignment(TEXT_ALIGN_CENTER);
|
||||||
@ -2053,12 +2048,11 @@ void drawNodeListScreen(OLEDDisplay *display, OLEDDisplayUiState *state, int16_t
|
|||||||
// ****************************
|
// ****************************
|
||||||
void drawEntryLastHeard(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int16_t x, int16_t y, int columnWidth)
|
void drawEntryLastHeard(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int16_t x, int16_t y, int columnWidth)
|
||||||
{
|
{
|
||||||
int screenWidth = display->getWidth();
|
bool isLeftCol = (x < SCREEN_WIDTH / 2);
|
||||||
bool isLeftCol = (x < screenWidth / 2);
|
|
||||||
|
|
||||||
// Adjust offset based on column and screen width
|
// Adjust offset based on column and screen width
|
||||||
int timeOffset =
|
int timeOffset =
|
||||||
(screenWidth > 128)
|
(SCREEN_WIDTH > 128)
|
||||||
? (isLeftCol ? 41 : 45)
|
? (isLeftCol ? 41 : 45)
|
||||||
: (isLeftCol ? 24 : 30); // offset large screen (?Left:Right column), offset small screen (?Left:Right column)
|
: (isLeftCol ? 24 : 30); // offset large screen (?Left:Right column), offset small screen (?Left:Right column)
|
||||||
|
|
||||||
@ -2090,16 +2084,15 @@ void drawEntryLastHeard(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int
|
|||||||
// ****************************
|
// ****************************
|
||||||
void drawEntryHopSignal(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int16_t x, int16_t y, int columnWidth)
|
void drawEntryHopSignal(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int16_t x, int16_t y, int columnWidth)
|
||||||
{
|
{
|
||||||
int screenWidth = display->getWidth();
|
bool isLeftCol = (x < SCREEN_WIDTH / 2);
|
||||||
bool isLeftCol = (x < screenWidth / 2);
|
|
||||||
|
|
||||||
int nameMaxWidth = columnWidth - 25;
|
int nameMaxWidth = columnWidth - 25;
|
||||||
int barsOffset =
|
int barsOffset =
|
||||||
(screenWidth > 128)
|
(SCREEN_WIDTH > 128)
|
||||||
? (isLeftCol ? 26 : 30)
|
? (isLeftCol ? 26 : 30)
|
||||||
: (isLeftCol ? 17 : 19); // offset large screen (?Left:Right column), offset small screen (?Left:Right column)
|
: (isLeftCol ? 17 : 19); // offset large screen (?Left:Right column), offset small screen (?Left:Right column)
|
||||||
int hopOffset =
|
int hopOffset =
|
||||||
(screenWidth > 128)
|
(SCREEN_WIDTH > 128)
|
||||||
? (isLeftCol ? 32 : 38)
|
? (isLeftCol ? 32 : 38)
|
||||||
: (isLeftCol ? 18 : 20); // offset large screen (?Left:Right column), offset small screen (?Left:Right column)
|
: (isLeftCol ? 18 : 20); // offset large screen (?Left:Right column), offset small screen (?Left:Right column)
|
||||||
|
|
||||||
@ -2139,9 +2132,8 @@ void drawEntryHopSignal(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int
|
|||||||
// **************************
|
// **************************
|
||||||
void drawNodeDistance(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int16_t x, int16_t y, int columnWidth)
|
void drawNodeDistance(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int16_t x, int16_t y, int columnWidth)
|
||||||
{
|
{
|
||||||
int screenWidth = display->getWidth();
|
bool isLeftCol = (x < SCREEN_WIDTH / 2);
|
||||||
bool isLeftCol = (x < screenWidth / 2);
|
int nameMaxWidth = columnWidth - (SCREEN_WIDTH > 128 ? (isLeftCol ? 25 : 28) : (isLeftCol ? 20 : 22));
|
||||||
int nameMaxWidth = columnWidth - (screenWidth > 128 ? (isLeftCol ? 25 : 28) : (isLeftCol ? 20 : 22));
|
|
||||||
|
|
||||||
String nodeName = getSafeNodeName(node);
|
String nodeName = getSafeNodeName(node);
|
||||||
char distStr[10] = "";
|
char distStr[10] = "";
|
||||||
@ -2188,7 +2180,7 @@ void drawNodeDistance(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int16
|
|||||||
display->drawStringMaxWidth(x, y, nameMaxWidth, nodeName);
|
display->drawStringMaxWidth(x, y, nameMaxWidth, nodeName);
|
||||||
|
|
||||||
if (strlen(distStr) > 0) {
|
if (strlen(distStr) > 0) {
|
||||||
int offset = (screenWidth > 128) ? (isLeftCol ? 55 : 63) : (isLeftCol ? 32 : 37);
|
int offset = (SCREEN_WIDTH > 128) ? (isLeftCol ? 55 : 63) : (isLeftCol ? 32 : 37);
|
||||||
display->drawString(x + columnWidth - offset, y, distStr);
|
display->drawString(x + columnWidth - offset, y, distStr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2213,11 +2205,10 @@ static void drawDistanceScreen(OLEDDisplay *display, OLEDDisplayUiState *state,
|
|||||||
// Helper function: Draw a single node entry for Node List (Modified for Compass Screen)
|
// Helper function: Draw a single node entry for Node List (Modified for Compass Screen)
|
||||||
void drawEntryCompass(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int16_t x, int16_t y, int columnWidth)
|
void drawEntryCompass(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int16_t x, int16_t y, int columnWidth)
|
||||||
{
|
{
|
||||||
int screenWidth = display->getWidth();
|
bool isLeftCol = (x < SCREEN_WIDTH / 2);
|
||||||
bool isLeftCol = (x < screenWidth / 2);
|
|
||||||
|
|
||||||
// Adjust max text width depending on column and screen width
|
// Adjust max text width depending on column and screen width
|
||||||
int nameMaxWidth = columnWidth - (screenWidth > 128 ? (isLeftCol ? 25 : 28) : (isLeftCol ? 20 : 22));
|
int nameMaxWidth = columnWidth - (SCREEN_WIDTH > 128 ? (isLeftCol ? 25 : 28) : (isLeftCol ? 20 : 22));
|
||||||
|
|
||||||
String nodeName = getSafeNodeName(node);
|
String nodeName = getSafeNodeName(node);
|
||||||
|
|
||||||
@ -2231,9 +2222,8 @@ void drawCompassArrow(OLEDDisplay *display, meshtastic_NodeInfoLite *node, int16
|
|||||||
if (!nodeDB->hasValidPosition(node))
|
if (!nodeDB->hasValidPosition(node))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int screenWidth = display->getWidth();
|
bool isLeftCol = (x < SCREEN_WIDTH / 2);
|
||||||
bool isLeftCol = (x < screenWidth / 2);
|
int arrowXOffset = (SCREEN_WIDTH > 128) ? (isLeftCol ? 22 : 24) : (isLeftCol ? 12 : 18);
|
||||||
int arrowXOffset = (screenWidth > 128) ? (isLeftCol ? 22 : 24) : (isLeftCol ? 12 : 18);
|
|
||||||
|
|
||||||
int centerX = x + columnWidth - arrowXOffset;
|
int centerX = x + columnWidth - arrowXOffset;
|
||||||
int centerY = y + FONT_HEIGHT_SMALL / 2;
|
int centerY = y + FONT_HEIGHT_SMALL / 2;
|
||||||
@ -2415,8 +2405,7 @@ static void drawLoRaFocused(OLEDDisplay *display, OLEDDisplayUiState *state, int
|
|||||||
// === Draw title (aligned with header baseline) ===
|
// === Draw title (aligned with header baseline) ===
|
||||||
const int highlightHeight = FONT_HEIGHT_SMALL - 1;
|
const int highlightHeight = FONT_HEIGHT_SMALL - 1;
|
||||||
const int textY = y + 2 + (highlightHeight - FONT_HEIGHT_SMALL) / 2;
|
const int textY = y + 2 + (highlightHeight - FONT_HEIGHT_SMALL) / 2;
|
||||||
const int screenWidth = display->getWidth();
|
const char *titleStr = (SCREEN_WIDTH > 128) ? "LoRa Info" : "LoRa";
|
||||||
const char *titleStr = (screenWidth > 128) ? "LoRa Info" : "LoRa";
|
|
||||||
const int centerX = x + SCREEN_WIDTH / 2;
|
const int centerX = x + SCREEN_WIDTH / 2;
|
||||||
|
|
||||||
if (config.display.displaymode == meshtastic_Config_DisplayConfig_DisplayMode_INVERTED) {
|
if (config.display.displaymode == meshtastic_Config_DisplayConfig_DisplayMode_INVERTED) {
|
||||||
@ -2436,7 +2425,7 @@ static void drawLoRaFocused(OLEDDisplay *display, OLEDDisplayUiState *state, int
|
|||||||
// Display Region and Radio Preset
|
// Display Region and Radio Preset
|
||||||
char regionradiopreset[25];
|
char regionradiopreset[25];
|
||||||
const char *region = myRegion ? myRegion->name : NULL;
|
const char *region = myRegion ? myRegion->name : NULL;
|
||||||
const char *preset = (screenWidth > 128) ? "Preset" : "Prst";
|
const char *preset = (SCREEN_WIDTH > 128) ? "Preset" : "Prst";
|
||||||
snprintf(regionradiopreset, sizeof(regionradiopreset), "%s: %s/%s", preset, region, mode);
|
snprintf(regionradiopreset, sizeof(regionradiopreset), "%s: %s/%s", preset, region, mode);
|
||||||
display->drawString(x, compactFirstLine, regionradiopreset);
|
display->drawString(x, compactFirstLine, regionradiopreset);
|
||||||
|
|
||||||
@ -2480,7 +2469,6 @@ static void drawCompassAndLocationScreen(OLEDDisplay *display, OLEDDisplayUiStat
|
|||||||
// === Draw title ===
|
// === Draw title ===
|
||||||
const int highlightHeight = FONT_HEIGHT_SMALL - 1;
|
const int highlightHeight = FONT_HEIGHT_SMALL - 1;
|
||||||
const int textY = y + 2 + (highlightHeight - FONT_HEIGHT_SMALL) / 2;
|
const int textY = y + 2 + (highlightHeight - FONT_HEIGHT_SMALL) / 2;
|
||||||
const int screenWidth = display->getWidth();
|
|
||||||
const char *titleStr = "GPS";
|
const char *titleStr = "GPS";
|
||||||
const int centerX = x + SCREEN_WIDTH / 2;
|
const int centerX = x + SCREEN_WIDTH / 2;
|
||||||
|
|
||||||
@ -2502,7 +2490,7 @@ static void drawCompassAndLocationScreen(OLEDDisplay *display, OLEDDisplayUiStat
|
|||||||
config.display.heading_bold = false;
|
config.display.heading_bold = false;
|
||||||
if (config.position.fixed_position) {
|
if (config.position.fixed_position) {
|
||||||
display->drawString(x, compactFirstLine, "Sat:");
|
display->drawString(x, compactFirstLine, "Sat:");
|
||||||
if (screenWidth > 128) {
|
if (SCREEN_WIDTH > 128) {
|
||||||
drawGPS(display, x + 32, compactFirstLine + 3, gpsStatus);
|
drawGPS(display, x + 32, compactFirstLine + 3, gpsStatus);
|
||||||
} else {
|
} else {
|
||||||
drawGPS(display, x + 23, compactFirstLine + 3, gpsStatus);
|
drawGPS(display, x + 23, compactFirstLine + 3, gpsStatus);
|
||||||
@ -2511,14 +2499,14 @@ static void drawCompassAndLocationScreen(OLEDDisplay *display, OLEDDisplayUiStat
|
|||||||
String displayLine =
|
String displayLine =
|
||||||
config.position.gps_mode == meshtastic_Config_PositionConfig_GpsMode_NOT_PRESENT ? "No GPS" : "GPS off";
|
config.position.gps_mode == meshtastic_Config_PositionConfig_GpsMode_NOT_PRESENT ? "No GPS" : "GPS off";
|
||||||
display->drawString(x, compactFirstLine, "Sat:");
|
display->drawString(x, compactFirstLine, "Sat:");
|
||||||
if (screenWidth > 128) {
|
if (SCREEN_WIDTH > 128) {
|
||||||
display->drawString(x + 32, compactFirstLine, displayLine);
|
display->drawString(x + 32, compactFirstLine, displayLine);
|
||||||
} else {
|
} else {
|
||||||
display->drawString(x + 23, compactFirstLine, displayLine);
|
display->drawString(x + 23, compactFirstLine, displayLine);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
display->drawString(x, compactFirstLine, "Sat:");
|
display->drawString(x, compactFirstLine, "Sat:");
|
||||||
if (screenWidth > 128) {
|
if (SCREEN_WIDTH > 128) {
|
||||||
drawGPS(display, x + 32, compactFirstLine + 3, gpsStatus);
|
drawGPS(display, x + 32, compactFirstLine + 3, gpsStatus);
|
||||||
} else {
|
} else {
|
||||||
drawGPS(display, x + 23, compactFirstLine + 3, gpsStatus);
|
drawGPS(display, x + 23, compactFirstLine + 3, gpsStatus);
|
||||||
@ -2611,8 +2599,7 @@ static void drawMemoryScreen(OLEDDisplay *display, OLEDDisplayUiState *state, in
|
|||||||
// === Draw title ===
|
// === Draw title ===
|
||||||
const int highlightHeight = FONT_HEIGHT_SMALL - 1;
|
const int highlightHeight = FONT_HEIGHT_SMALL - 1;
|
||||||
const int textY = y + 2 + (highlightHeight - FONT_HEIGHT_SMALL) / 2;
|
const int textY = y + 2 + (highlightHeight - FONT_HEIGHT_SMALL) / 2;
|
||||||
const int screenWidth = display->getWidth();
|
const char *titleStr = (SCREEN_WIDTH > 128) ? "Memory" : "Mem";
|
||||||
const char *titleStr = (screenWidth > 128) ? "Memory" : "Mem";
|
|
||||||
const int centerX = x + SCREEN_WIDTH / 2;
|
const int centerX = x + SCREEN_WIDTH / 2;
|
||||||
|
|
||||||
if (config.display.displaymode == meshtastic_Config_DisplayConfig_DisplayMode_INVERTED) {
|
if (config.display.displaymode == meshtastic_Config_DisplayConfig_DisplayMode_INVERTED) {
|
||||||
@ -2631,7 +2618,7 @@ static void drawMemoryScreen(OLEDDisplay *display, OLEDDisplayUiState *state, in
|
|||||||
const int rowYOffset = FONT_HEIGHT_SMALL - 3;
|
const int rowYOffset = FONT_HEIGHT_SMALL - 3;
|
||||||
const int barHeight = 6;
|
const int barHeight = 6;
|
||||||
const int labelX = x;
|
const int labelX = x;
|
||||||
const int barsOffset = (screenWidth > 128) ? 24 : 0;
|
const int barsOffset = (SCREEN_WIDTH > 128) ? 24 : 0;
|
||||||
const int barX = x + 40 + barsOffset;
|
const int barX = x + 40 + barsOffset;
|
||||||
|
|
||||||
int rowY = contentY;
|
int rowY = contentY;
|
||||||
@ -2650,7 +2637,7 @@ static void drawMemoryScreen(OLEDDisplay *display, OLEDDisplayUiState *state, in
|
|||||||
int percent = (used * 100) / total;
|
int percent = (used * 100) / total;
|
||||||
|
|
||||||
char combinedStr[24];
|
char combinedStr[24];
|
||||||
if (screenWidth > 128) {
|
if (SCREEN_WIDTH > 128) {
|
||||||
snprintf(combinedStr, sizeof(combinedStr), "%3d%% %lu/%luKB", percent, used / 1024, total / 1024);
|
snprintf(combinedStr, sizeof(combinedStr), "%3d%% %lu/%luKB", percent, used / 1024, total / 1024);
|
||||||
} else {
|
} else {
|
||||||
snprintf(combinedStr, sizeof(combinedStr), "%3d%%", percent);
|
snprintf(combinedStr, sizeof(combinedStr), "%3d%%", percent);
|
||||||
|
Loading…
Reference in New Issue
Block a user