James Rich
2cf4e8f80e
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-13 11:40:48 -05:00
James Rich
39620d063b
fix(nav): restore broken traceroute map navigation ( #5104 )
2026-04-13 12:25:21 +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
0441093ce8
refactor(node): move Position to last in telemetry list on node details ( #5068 )
2026-04-11 17:06:17 +00: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
37e9e2c8f0
fix(charts): hoist rememberVicoZoomState above vararg layers to prevent ClassCastException ( #5060 )
2026-04-11 00:05:56 +00:00
James Rich
ce32e640de
fix(icons): replace outline (FILL=0) pathData with filled (FILL=1) from upstream Material Symbols ( #5056 )
2026-04-10 22:15:43 +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
02f6fd67b8
fix: clean up flaky, duplicated, and misplaced tests; remove redundant deps ( #5048 )
2026-04-10 19:46:45 +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
9c0e9b82d6
feat(charts): adopt Vico best practices, add sensor data, and migrate TracerouteLog ( #5026 )
2026-04-09 23:44:59 +00:00
James Rich
1649e46dd5
chore(deps): remove 7 unused dependencies across modules ( #5017 )
2026-04-09 12:35:28 -05:00
James Rich
60cc2f4237
fix: resolve bugs across connection, PKI, admin, packet flow, and stability subsystems ( #5011 )
2026-04-09 13:20:06 +00: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
464a12b9f7
chore: standardize resources and update documentation for Navigation 3 ( #4961 )
2026-03-31 21:25:37 +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
141b54ff9c
feat: migrate to Material 3 Expressive APIs ( #4934 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-26 16:42:46 +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
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
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
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
James Rich
b3b38acc0b
feat: Migrate networking to Ktor and enhance multiplatform support ( #4890 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-23 16:48:10 +00:00
James Rich
c38bfc64de
Refactor command handling, enhance tests, and improve discovery logic ( #4878 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-22 05:42:27 +00:00
James Rich
d136b162a4
feat: Implement iOS support and unify Compose Multiplatform infrastructure ( #4876 )
2026-03-21 23:19:13 +00:00
James Rich
06b9f8c77a
feat: Enhance test coverage ( #4847 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-19 03:09:19 +00:00
James Rich
1b0dc75dfe
feat: Complete app module thinning and feature module extraction ( #4844 )
2026-03-19 00:21:18 +00:00
James Rich
dcbbc0823b
feat: Integrate Mokkery and Turbine into KMP testing framework ( #4845 )
2026-03-18 18:33:37 -05:00
Victorio Berra
eae5a6bdac
Add "Exclude MQTT" filter to Nodes view. ( #4825 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com >
Co-authored-by: James Rich <james.a.rich@gmail.com >
2026-03-18 15:39:59 +00:00
James Rich
cb95cace25
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) ( #4832 )
2026-03-17 16:51:09 -05:00
James Rich
7d63f8b824
feat: build logic ( #4829 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-17 20:35:39 +00:00
James Rich
8c964a15ca
feat: Integrate notification management and preferences across platforms ( #4819 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-17 01:17:34 +00:00
James Rich
0b2e89c46f
refactor: Replace Nordic, use Kable backend for Desktop and Android with BLE support ( #4818 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-16 23:06:43 +00:00
James Rich
6e81ceec91
feat: Complete ViewModel extraction and update documentation ( #4817 )
2026-03-16 20:05:50 +00:00
James Rich
427c0f3bbb
fix: fix animation stalls and update dependencies for stability ( #4784 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-13 23:01:17 +00:00
James Rich
eb3349fa11
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) ( #4773 )
2026-03-12 22:15:20 -05:00
James Rich
ac6bb5479b
feat: introduce Desktop target and expand Kotlin Multiplatform (KMP) architecture ( #4761 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-12 21:14:49 +00:00
James Rich
d076361c55
refactor: migrate core UI and features to KMP, adopt Navigation 3 ( #4750 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-10 17:29:47 +00:00
James Rich
b1070321fe
chore: Scheduled updates (Firmware, Hardware, Translations, Graphs) ( #4748 )
2026-03-09 20:45:41 -05:00
James Rich
875cf1cff2
refactor: migrate from Hilt to Koin and expand KMP common modules ( #4746 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-10 01:19:46 +00:00
James Rich
0ce322a0f5
feat: Migrate project to Kotlin Multiplatform (KMP) architecture ( #4738 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-07 02:43:45 +00:00
James Rich
cffbd08806
refactor: migrate core modules to Kotlin Multiplatform and consolidat… ( #4735 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-06 22:06:50 +00:00
James Rich
b9b68d2779
refactor: migrate preferences to DataStore and decouple core:domain for KMP ( #4731 )
2026-03-05 20:37:35 -06:00
James Rich
fe67219207
refactor: simplify traceroute tracking and unify cooldown button logic ( #4699 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-03 18:34:12 +00:00
James Rich
2c49db8041
feat/decoupling ( #4685 )
...
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com >
2026-03-03 13:15:28 +00:00