fix(ui): drop {loc}/{time} placeholders in the room password keyboard

The shared keyboard seeds {loc}/{time} on begin() for message composition, but
a room/repeater login password is not a message — a placeholder token there is
nonsensical and a footgun (picking one inserts literal "{time}" into the
password). Clear them right after opening the keyboard in both room-login paths
(context-menu Login… and the Enter-on-room prompt), matching the same fix
already applied to preset names and waypoint labels.

Builds green: WioTrackerL1_companion_solo_dual.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Jakub
2026-07-06 20:39:11 +02:00
parent 21a34451d9
commit 8a9fb33a6a

View File

@@ -1228,6 +1228,7 @@ public:
if (the_mesh.getContactByIdx(_sorted[_contact_sel], _sel_contact)) { if (the_mesh.getContactByIdx(_sorted[_contact_sel], _sel_contact)) {
_login_mode = true; _login_mode = true;
_kb->begin("", 15); // room/repeater password: max 15 chars _kb->begin("", 15); // room/repeater password: max 15 chars
_kb->clearPlaceholders(); // {loc}/{time} are for messages, not a password
_phase = KEYBOARD; _phase = KEYBOARD;
} }
} }
@@ -1345,6 +1346,7 @@ public:
} else { } else {
_login_mode = true; _login_mode = true;
_kb->begin("", 15); // room/repeater password: max 15 chars _kb->begin("", 15); // room/repeater password: max 15 chars
_kb->clearPlaceholders(); // {loc}/{time} are for messages, not a password
_phase = KEYBOARD; _phase = KEYBOARD;
} }
return true; return true;