Repository navigation
Conversation
Implements the "4c" Map redesign on the existing offline vector map: - Borders: draw country outlines (world_countries.json) in both the equirectangular and azimuthal projections, plus US state borders once zoomed past a threshold (showStateBorders). The data + loaders already shipped; they were just unused. - Layout: header (title + "N decoded · M worked this session" + gear) over a layer-chip row (Decodes / PSK spots / Worked) over an inset rounded map card. Layer chips partition which markers draw. - Controls: top-left greyline info pill (band + "greyline in Xh Ym"), a 44dp +/-/Me stack where Me recenters on the operator grid, and Projection + Gray line moved into the gear menu. - Station card restyled to 4c (avatar + callsign + distance/bearing/SNR + Details). Pure logic extracted to MapRedesign.kt (layer visibility, greyline countdown, formatting) and MapViewport.panToCenter, covered by MapRedesignTest. Verified on a tablet emulator with demo data. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Addresses two legibility issues raised on the redesign: - Indicators are now obvious dots: marker radius 3.5/5.5 -> 6/9, a layered glow halo instead of a single faint one, an SNR alpha floor raised from 0.45 to 0.78 (weak decodes no longer wash out), and a bold amber operator "you are here" dot with a glow. Shapes (triangle CQ / diamond to-me / donut worked / dot) are kept. - Auto-fit: on the standard projection the map now frames the region that actually has markers (stations + operator) instead of a mostly-empty world. fitEquirectView computes the zoom/pan; it re-frames when the marker spread changes and stops once the operator pans/zooms/recenters (a global spread stays at 1x, a regional cluster zooms in). New pure logic (fitEquirectView + MapViewFit) and the raised SNR floor are covered by tests; verified on a tablet emulator (regional inject zooms to North America, global inject frames the world). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
feat(map): redesign Map tab (concept 4c) with a real bordered basemap
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## staging #912 +/- ##
=============================================
- Coverage 41.73% 41.50% -0.24%
Complexity 252 252
=============================================
Files 279 280 +1
Lines 33668 33973 +305
Branches 3958 4033 +75
=============================================
+ Hits 14052 14100 +48
- Misses 19329 19584 +255
- Partials 287 289 +2
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Promotes
dev→stagingwith the Map tab redesign (PR #911).What's in it
world_countries.json) draw in both the equirectangular and azimuthal projections, plus US state borders past a zoom threshold. Offline vector data, no tile/slippy-map dependency.Map+ "N decoded · M worked this session" + ⚙ gear) → layer-chip row (Decodes / PSK spots / Worked) → inset rounded map card. Chips partition which station markers draw.Diff
3 commits, 7 files, +858 / −149 — all under
ui/map/plusstrings_compose.xmland the two test classes. No native, CAT, audio, or navigation changes.Testing
Pure logic extracted to
MapRedesign.kt/MapViewport.panToCenterand covered byMapRedesignTest;assembleDebugbuilds and the screen was verified live on a tablet emulator with demo data (borders, gear menu, greyline countdown, recenter).🤖 Generated with Claude Code