Skip to content

Commit 2cf4e8f

Browse files
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

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

app/build.gradle.kts

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -277,11 +277,6 @@ dependencies {
277277
debugImplementation(libs.androidx.compose.ui.test.manifest)
278278
debugImplementation(libs.androidx.glance.preview)
279279

280-
googleImplementation(libs.location.services)
281-
googleImplementation(libs.play.services.maps)
282-
googleImplementation(libs.maps.compose)
283-
googleImplementation(libs.maps.compose.utils)
284-
googleImplementation(libs.maps.compose.widgets)
285280
googleImplementation(libs.dd.sdk.android.compose)
286281
googleImplementation(libs.dd.sdk.android.logs)
287282
googleImplementation(libs.dd.sdk.android.rum)
@@ -294,10 +289,6 @@ dependencies {
294289
googleImplementation(libs.firebase.analytics)
295290
googleImplementation(libs.firebase.crashlytics)
296291

297-
fdroidImplementation(libs.osmdroid.android)
298-
fdroidImplementation(libs.osmdroid.geopackage) { exclude(group = "com.j256.ormlite") }
299-
fdroidImplementation(libs.osmbonuspack)
300-
301292
testImplementation(kotlin("test-junit"))
302293
testImplementation(libs.androidx.work.testing)
303294
testImplementation(libs.koin.test)

app/src/fdroid/kotlin/org/meshtastic/app/map/FdroidMapViewProvider.kt

Lines changed: 0 additions & 39 deletions
This file was deleted.

app/src/fdroid/kotlin/org/meshtastic/app/map/GetMapViewProvider.kt

Lines changed: 0 additions & 21 deletions
This file was deleted.

app/src/fdroid/kotlin/org/meshtastic/app/map/MapUtils.kt

Lines changed: 0 additions & 80 deletions
This file was deleted.

0 commit comments

Comments
 (0)