diff --git a/src/graphics/draw/MessageRenderer.cpp b/src/graphics/draw/MessageRenderer.cpp index 529b2702c..7b24d2d5e 100644 --- a/src/graphics/draw/MessageRenderer.cpp +++ b/src/graphics/draw/MessageRenderer.cpp @@ -456,7 +456,7 @@ void drawTextMessageFrame(OLEDDisplay *display, OLEDDisplayUiState *state, int16 char chanType[32] = ""; if (currentMode == ThreadMode::ALL) { if (m.dest == NODENUM_BROADCAST) { - snprintf(chanType, sizeof(chanType), "(Ch%d)", m.channelIndex); + snprintf(chanType, sizeof(chanType), "#%s", channels.getName(m.channelIndex)); } else { snprintf(chanType, sizeof(chanType), "(DM)"); } @@ -504,6 +504,7 @@ void drawTextMessageFrame(OLEDDisplay *display, OLEDDisplayUiState *state, int16 // Build header line for this message meshtastic_NodeInfoLite *node = nodeDB->getMeshNode(m.sender); + meshtastic_NodeInfoLite *node_recipient = nodeDB->getMeshNode(m.dest); char senderBuf[48] = "???"; if (node && node->has_user) { @@ -514,9 +515,10 @@ void drawTextMessageFrame(OLEDDisplay *display, OLEDDisplayUiState *state, int16 // If this is *our own* message, override sender to "Me" bool mine = (m.sender == nodeDB->getNodeNum()); if (mine) { - strcpy(senderBuf, "Me"); + strcpy(senderBuf, node_recipient->user.long_name); } + // Shrink Sender name if needed int availWidth = SCREEN_WIDTH - display->getStringWidth(timeBuf) - display->getStringWidth(chanType) - display->getStringWidth(" @...") - 10; if (availWidth < 0) @@ -535,7 +537,15 @@ void drawTextMessageFrame(OLEDDisplay *display, OLEDDisplayUiState *state, int16 // Final header line char headerStr[96]; if (mine) { - snprintf(headerStr, sizeof(headerStr), "%s %s", timeBuf, chanType); + if (currentMode == ThreadMode::ALL) { + if (strcmp(chanType, "(DM)") == 0) { + snprintf(headerStr, sizeof(headerStr), "%s to %s", timeBuf, senderBuf); + } else { + snprintf(headerStr, sizeof(headerStr), "%s to %s", timeBuf, chanType); + } + } else { + snprintf(headerStr, sizeof(headerStr), "%s", timeBuf); + } } else { snprintf(headerStr, sizeof(headerStr), "%s @%s %s", timeBuf, senderBuf, chanType); }