mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-11-02 19:02:00 +00:00
feat: per-contact actions, device settings, a companion CLI and your contact's QR code
- Nodes: telemetry permissions per contact, reset path, share nearby (L1 options menu; L2 node card with "Can ask for" switches) - Settings > Privacy: fixed position (typed in, from a waypoint, cleared) and the Bluetooth PIN; Settings > System: factory reset, asked twice - Companion CLI (CMD_RUN_CLI_COMMAND 66 / RESP_CODE_CLI_REPLY 29, as upstream; FIRMWARE_VER_CODE 14): upstream's command names plus a key for every schema setting (get / set / keys) - Screenshots move to 0x7E; tools/screenshot.py falls back to 66 / 29 - Your contact as a QR code (meshcore://contact/add): Status > System on ui-new, Settings > About on the L2; Nayuki's qrcodegen made header-only Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -60,6 +60,7 @@ public:
|
||||
void onViewedHistoryGrew(bool channel) override { (void)channel; _thread_dirty = true; }
|
||||
void botSetGPS(bool on) override;
|
||||
void applySoundPrefs() override;
|
||||
bool cliCommand(const char* command, char* reply, int n) override;
|
||||
|
||||
// ── Navigation (called from LVGL event callbacks) ────────────────────────
|
||||
void showHome();
|
||||
@@ -87,6 +88,14 @@ public:
|
||||
void otaAction();
|
||||
void adminPick(int row);
|
||||
void pruneContacts();
|
||||
// Settings > Privacy: the position adverts carry with the GPS off, the
|
||||
// Bluetooth PIN; Settings: factory reset, asked twice (stage 1, 2; 3 erases).
|
||||
void ownPositionPopup();
|
||||
void ownPositionPick(int code);
|
||||
void ownPositionDone(bool ok);
|
||||
void blePinPopup();
|
||||
void blePinDone(bool ok);
|
||||
void factoryResetStep(int stage);
|
||||
void setBrightnessPct(uint8_t pct, bool save);
|
||||
void applyDisplayPrefs() override;
|
||||
void setSchemaValue(int idx, int v);
|
||||
@@ -595,6 +604,7 @@ private:
|
||||
lv_obj_t* _node_info = nullptr;
|
||||
lv_obj_t* _node_ping = nullptr;
|
||||
lv_obj_t* _node_delete_lbl = nullptr;
|
||||
lv_obj_t* _node_path_lbl = nullptr;
|
||||
bool _node_from_map = false;
|
||||
|
||||
// Map (SCR_MAP): view centre in fractional tile coords at zoom _map_z
|
||||
|
||||
Reference in New Issue
Block a user