mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-08-06 04:06:12 +00:00
fix(ui): revert corner-anchored context menus, centre unread badge, add room logout
- Context menus (PopupMenu, Nearby/QuickMsg call sites) go back to centring on screen; the header's discoverable-menu glyph stays, but dropping the popup out of its corner looked bad on some screens. - Unread pill badge digit wasn't centred: Adafruit_GFX's classic built-in font (SH1106/SSD1306) always pads a measured string by one trailing advance column regardless of the glyph drawn, so centring on the raw width left 1px more slack on the right than the left. New DisplayDriver:: textWidthTrailingGap() (0 by default) corrects for it on those two backends. - On-device room Logout: mirrors the app's CMD_LOGOUT (drops keep-alive tracking, forgets the saved password) so a room can be deliberately signed out of from the Room options menu, not just re-logged-in. Not build-verified — no PlatformIO toolchain available this session.
This commit is contained in:
@@ -230,6 +230,16 @@ public:
|
||||
return true;
|
||||
}
|
||||
|
||||
// On-device UI logout: drops the local keep-alive tracking (mirrors the app's
|
||||
// CMD_LOGOUT) and forgets the saved password, so the next room open prompts
|
||||
// for credentials again instead of silently re-using them. No packet is sent
|
||||
// to the server -- the room ACL has no session state to tear down, this is
|
||||
// purely local "forget this login" bookkeeping.
|
||||
void logoutRoom(const uint8_t* pub_key) {
|
||||
stopConnection(pub_key);
|
||||
forgetRoomPassword(pub_key);
|
||||
}
|
||||
|
||||
// On-device-saved room/repeater login passwords, persisted to flash (own
|
||||
// small file, independent of /contacts3) so a room that's already been
|
||||
// logged into doesn't need its password retyped after reboot.
|
||||
|
||||
Reference in New Issue
Block a user