Commit Graph

3730 Commits

Author SHA1 Message Date
James Rich
01d2642275 fix(map): delete leftover fdroid OSMDroid cluster Java files breaking lint
The MarkerClusterer, RadiusMarkerClusterer, and StaticCluster Java files
under app/src/fdroid/java/ were missed during the MapLibre migration and
still referenced the removed osmdroid dependency, causing lintFdroidDebug
to fail on CI.
2026-04-14 22:30:42 -05:00
James Rich
598cae564e feat(map): replace Google Maps + OSMDroid with unified MapLibre Compose Multiplatform
Replace the dual flavor-specific map implementations (Google Maps for google,
OSMDroid for fdroid) with a single MapLibre Compose Multiplatform implementation
in feature:map/commonMain, eliminating ~8,500 lines of duplicated code.

Key changes:
- Add maplibre-compose v0.12.1 dependency (KMP: Android, Desktop, iOS)
- Create unified MapViewModel with camera persistence via MapCameraPrefs
- Create MapScreen, MaplibreMapContent, NodeTrackLayers, TracerouteLayers,
  InlineMap, NodeTrackMap, TracerouteMap, NodeMapScreen in commonMain
- Create MapStyle enum with predefined OpenFreeMap tile styles
- Create GeoJsonConverters for Node/Waypoint/Position to GeoJSON
- Move TracerouteMapScreen from feature:node/androidMain to commonMain
- Wire navigation to use direct imports instead of CompositionLocal providers
- Delete 61 flavor-specific map files (google + fdroid source sets)
- Remove 8 CompositionLocal map providers from core:ui
- Remove SharedMapViewModel (replaced by new MapViewModel)
- Remove dead google-maps and osmdroid entries from version catalog
- Add MapViewModelTest with 10 test cases in commonTest

Baseline verified: spotlessCheck, detekt, assembleGoogleDebug, allTests all pass.
2026-04-14 22:30:27 -05:00
James Rich
72b981f73b chore: KMP audit — commonize code, centralize utilities, eliminate dead abstractions (#5133)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-15 02:17:50 +00:00
James Rich
79ed0a865a chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#5128)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2026-04-15 01:14:38 +00:00
James Rich
fa63a4ac50 feat: add high-contrast theme with accessible message bubbles (#5135)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-15 01:14:20 +00:00
James Rich
9acdf5309f refactor: modern APIs — Koin 4.2, CMP 1.11, Ktor resilience, Room @Upsert, injected dispatchers (#5119) 2026-04-14 11:41:01 +00:00
James Rich
b13f9bf989 fix(resources): add resourcePrefix to KMP + widget modules, rename prefixed resources (#5111) 2026-04-13 18:25:23 +00:00
James Rich
048c74db13 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#5105)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2026-04-13 12:37:53 +00:00
James Rich
b0c603c7ed fix(build): align AndroidX Compose versions with CMP and migrate to runComposeUiTest (#5096) 2026-04-13 02:49:11 +00:00
James Rich
a11dee42a7 test: migrate Compose UI tests from androidTest to commonTest (#5091) 2026-04-12 20:20:00 +00:00
James Rich
19502cd1e0 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#5078) 2026-04-12 01:48:42 +00:00
James Rich
62264b10c6 refactor(model): remove ConnectionState helper methods and fix updateStatusNotification return type (#5074) 2026-04-11 23:41:34 +00:00
James Rich
a3c0a4832d fix(transport): Kable BLE audit + thread-safety, MQTT, and logging fixes across transport layers (#5071) 2026-04-11 22:56:29 +00:00
James Rich
5f0e60eb21 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#5067) 2026-04-11 22:07:04 +00:00
James Rich
b3d0c97206 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#5065) 2026-04-11 04:53:07 -05:00
James Rich
3794c79dae refactor: adopt M3 Expressive components from material3 1.11.0-alpha06 (#5063) 2026-04-11 02:10:03 +00:00
James Rich
a6423d0a0f feat(metrics): redesign position log with SelectableMetricCard and add CSV export to all metrics screens (#5062) 2026-04-11 01:26:26 +00:00
James Rich
9c8532f80d refactor: leverage new dependency features from recent updates (#5057) 2026-04-10 22:51:08 +00:00
James Rich
929e273978 fix(build): resolve all actionable compile-time warnings (#5058) 2026-04-10 22:42:30 +00:00
James Rich
3d139d32fd chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#5059) 2026-04-10 22:15:59 +00:00
James Rich
520fa717a9 refactor(metrics/map): DRY up charts, decompose MapView monoliths, add test coverage (#5049) 2026-04-10 20:54:09 +00:00
James Rich
1390a3cd4f ci: cache Robolectric SDK jars to prevent flaky SocketException failures (#5045) 2026-04-10 10:05:07 -05:00
James Rich
dba037466e refactor(icons): migrate to self-hosted VectorDrawable XMLs via MeshtasticIcons (#5030) 2026-04-10 01:35:52 +00:00
James Rich
14b381c1eb fix: harden reliability, clean up KMP compliance, and improve code quality (#5023) 2026-04-09 18:21:46 +00:00
James Rich
150ee3f1a4 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#5012) 2026-04-09 13:37:09 +00:00
James Rich
87d507eb6e chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4997) 2026-04-09 12:08:01 +00:00
James Rich
72f4697d0d chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4993) 2026-04-04 19:51:47 -05:00
James Rich
fda96e2f8c chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4975) 2026-04-03 09:13:23 -05:00
James Rich
51251ab16a feat(ci): shard test suite and enable JUnit 5 parallel execution (#4977) 2026-04-03 13:08:49 +00:00
James Rich
7e041c00e1 feat(wifi): introduce BLE-based WiFi provisioning for nymea-compatible devices (#4968) 2026-04-02 17:31:17 +00:00
James Rich
1fee6c4431 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4973) 2026-04-01 18:40:29 -05:00
James Rich
0167063497 feat(analytics): expand DataDog RUM integration and align with iOS parity (#4970) 2026-04-01 20:27:28 +00:00
James Rich
e249461e3c feat(tak): introduce built-in Local TAK Server and mesh integration (#4951)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-04-01 20:21:25 +00:00
James Rich
d1ca8ec527 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4967) 2026-04-01 10:56:33 -05:00
James Rich
fefe74d217 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4965) 2026-04-01 12:45:23 +00:00
James Rich
d8e295cafb chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4964) 2026-03-31 21:15:06 -05:00
James Rich
ad6e12445b chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4943) 2026-03-27 14:51:32 +00:00
James Rich
f2d09ff79d Refactor nav3 architecture and enhance adaptive layouts (#4944)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-03-27 14:43:44 +00:00
James Rich
3feec759a1 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4939) 2026-03-27 02:45:08 +00:00
James Rich
a005231d94 Refactor map layer management and navigation infrastructure (#4921)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-03-26 00:29:24 +00:00
James Rich
b608a04ca4 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4912) 2026-03-25 16:37:36 -05:00
James Rich
6516287c62 refactor: BLE transport and UI for Kotlin Multiplatform unification (#4911)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-03-25 02:15:51 +00:00
James Rich
b0e91a390c feat: implement unified deep link routing for Kotlin Multiplatform (#4910)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-03-25 00:21:24 +00:00
James Rich
553ca2f8ed feat: implement global SnackbarManager and consolidate common UI setup (#4909)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-03-24 22:31:40 +00:00
James Rich
0c3ab92908 chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) (#4907) 2026-03-24 22:21:59 +00:00
James Rich
96060a0a4d refactor: coroutine dispatchers and modernize testing infrastructure (#4901)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-03-24 01:31:48 +00:00
James Rich
664ebf218e refactor: null safety, update date/time libraries, and migrate tests (#4900)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-03-23 23:17:50 +00:00
James Rich
f826cac6c8 refactor(di): specify disk cache directory for ImageLoader (#4899)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-03-23 21:05:50 +00:00
James Rich
57242d905c refactor: Consolidate UI preference handling (#4895) 2026-03-23 19:36:02 +00:00
James Rich
7b327215f3 refactor: adaptive UI components for Navigation 3 (#4891) 2026-03-23 12:35:02 -05:00