Commit 2cf4e8f
committed
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.1 parent 048c74d commit 2cf4e8f
86 files changed
Lines changed: 1653 additions & 8321 deletions
File tree
- app
- src
- fdroid/kotlin/org/meshtastic/app
- map
- component
- model
- node
- traceroute
- node
- component
- metrics
- google/kotlin/org/meshtastic/app
- di
- map
- component
- model
- node
- prefs
- di
- map
- repository
- traceroute
- node
- component
- metrics
- main/kotlin/org/meshtastic/app
- test/kotlin/org/meshtastic/app/di
- core
- prefs/src/commonMain/kotlin/org/meshtastic/core/prefs/map
- repository/src/commonMain/kotlin/org/meshtastic/core/repository
- resources/src/commonMain/composeResources/values
- testing/src/commonMain/kotlin/org/meshtastic/core/testing
- ui/src/commonMain/kotlin/org/meshtastic/core/ui/util
- feature
- map
- src
- androidMain/kotlin/org/meshtastic/feature/map
- androidUnitTestGoogle/kotlin/org/meshtastic/feature/map
- commonMain/kotlin/org/meshtastic/feature/map
- component
- model
- node
- util
- commonTest/kotlin/org/meshtastic/feature/map
- node/src/commonMain/kotlin/org/meshtastic/feature/node
- component
- metrics
- gradle
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
277 | 277 | | |
278 | 278 | | |
279 | 279 | | |
280 | | - | |
281 | | - | |
282 | | - | |
283 | | - | |
284 | | - | |
285 | 280 | | |
286 | 281 | | |
287 | 282 | | |
| |||
294 | 289 | | |
295 | 290 | | |
296 | 291 | | |
297 | | - | |
298 | | - | |
299 | | - | |
300 | | - | |
301 | 292 | | |
302 | 293 | | |
303 | 294 | | |
| |||
Lines changed: 0 additions & 39 deletions
This file was deleted.
Lines changed: 0 additions & 21 deletions
This file was deleted.
This file was deleted.
0 commit comments