diff --git a/app_sat.go b/app_sat.go index cc77e51..8cc4805 100644 --- a/app_sat.go +++ b/app_sat.go @@ -339,8 +339,15 @@ func (a *App) SaveSatSettings(s SatSettings) error { func (a *App) satObserver() (sat.Observer, error) { set := a.satSettings() grid := set.Grid - if grid == "" && a.settings != nil { - grid, _ = a.settings.Get(a.ctx, keyStationMyGrid) + if grid == "" && a.profiles != nil { + // The station locator lives on the ACTIVE PROFILE, not in a settings key. + // keyStationMyGrid is a legacy key that EnsureDefault migrated into the + // profile years ago and nothing writes any more — reading it told an + // operator with a perfectly good locator on screen that he had not set + // one. + if p, err := a.profiles.Active(a.ctx); err == nil { + grid = p.MyGrid + } } grid = strings.TrimSpace(grid) lat, lon, ok := gridToLatLon(grid) diff --git a/frontend/src/components/SatellitePanel.tsx b/frontend/src/components/SatellitePanel.tsx index d7b8d2b..a45c1a3 100644 --- a/frontend/src/components/SatellitePanel.tsx +++ b/frontend/src/components/SatellitePanel.tsx @@ -415,8 +415,12 @@ export function SatellitePanel({ myGrid }: { myGrid: string }) { {err &&
{err}
}
- {/* The map. */} -
+ {/* The map. isolate is load-bearing, not tidiness: Leaflet stacks its + own panes and controls up to z-index 1000, which without a stacking + context of their own float over Preferences and every dialog in the + app — the map ends up on top of the very buttons that would close + it. */} +