M2 step 4: GNSS mark in the Status Bar; the clock follows the Fix

Q61: a muted G while searching (or the receiver is silent), G with a 2D
Fix, G and the satellite count with a 3D Fix; nothing when GNSS is off.
Verified on the device by a window: 3D Fix, 9 of 11 satellites used
(GPS, GLONASS, BeiDou), HDOP 1.3, Status Bar "G9", and "gnss: clock set".

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EhqxQ49eCju4CzKYNjZzwT
This commit is contained in:
2026-10-04 22:29:20 +02:00
co-authored by Claude Opus 5.5
parent 988253ef02
commit d408bada07
3 changed files with 17 additions and 1 deletions
+8
View File
@@ -91,6 +91,14 @@ static StatusInfo currentStatus() {
s.sdLevel = storageState.level;
s.compose = keyMapper.pendingCompose();
s.unread = irc->totalUnread();
if (gnssService && gnssService->on()) {
const auto& g = gnssService->state();
bool fresh = gnssService->receiving(millis());
s.gnss = !fresh || g.fix == gnss::FixType::None ? StatusInfo::Gnss::Searching
: g.fix == gnss::FixType::TwoD ? StatusInfo::Gnss::TwoD
: StatusInfo::Gnss::ThreeD;
s.gnssSatellites = g.satellitesUsed;
}
using WifiState = WifiController::State;
switch (wifi->state()) {
case WifiState::Connected: {