From 34fe126fd07ea0d2015d2ea7e5e1af4e68003124 Mon Sep 17 00:00:00 2001 From: Johan von Forstner Date: Sun, 24 May 2020 11:26:13 +0200 Subject: [PATCH] add option to show Google Maps traffic layer (fixes #19) --- .../vonforst/evmap/fragment/MapFragment.kt | 7 ++++- .../vonforst/evmap/viewmodel/MapViewModel.kt | 6 ++++ app/src/main/res/layout/fragment_map.xml | 2 +- app/src/main/res/layout/map_layers.xml | 28 +++++++++++++++++++ app/src/main/res/values-de/strings.xml | 2 ++ app/src/main/res/values/strings.xml | 2 ++ 6 files changed, 45 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/net/vonforst/evmap/fragment/MapFragment.kt b/app/src/main/java/net/vonforst/evmap/fragment/MapFragment.kt index 46709f24..05d57254 100644 --- a/app/src/main/java/net/vonforst/evmap/fragment/MapFragment.kt +++ b/app/src/main/java/net/vonforst/evmap/fragment/MapFragment.kt @@ -331,6 +331,9 @@ class MapFragment : Fragment(), OnMapReadyCallback, MapsActivity.FragmentCallbac vm.mapType.observe(viewLifecycleOwner, Observer { map?.mapType = it }) + vm.mapTrafficEnabled.observe(viewLifecycleOwner, Observer { + map?.isTrafficEnabled = it + }) } private fun updateBackPressedCallback() { @@ -443,7 +446,9 @@ class MapFragment : Fragment(), OnMapReadyCallback, MapsActivity.FragmentCallbac override fun onMapReady(map: GoogleMap) { this.map = map - map.uiSettings.isTiltGesturesEnabled = false; + map.uiSettings.isTiltGesturesEnabled = false + map.isIndoorEnabled = false + map.uiSettings.isIndoorLevelPickerEnabled = false map.setOnCameraIdleListener { vm.mapPosition.value = MapPosition( map.projection.visibleRegion.latLngBounds, map.cameraPosition.zoom diff --git a/app/src/main/java/net/vonforst/evmap/viewmodel/MapViewModel.kt b/app/src/main/java/net/vonforst/evmap/viewmodel/MapViewModel.kt index 6a34e934..df29e57e 100644 --- a/app/src/main/java/net/vonforst/evmap/viewmodel/MapViewModel.kt +++ b/app/src/main/java/net/vonforst/evmap/viewmodel/MapViewModel.kt @@ -144,6 +144,12 @@ class MapViewModel(application: Application, geApiKey: String) : AndroidViewMode } } + val mapTrafficEnabled: MutableLiveData by lazy { + MutableLiveData().apply { + value = false + } + } + fun setMapType(type: Int) { mapType.value = type } diff --git a/app/src/main/res/layout/fragment_map.xml b/app/src/main/res/layout/fragment_map.xml index 241abcff..7f4a55f2 100644 --- a/app/src/main/res/layout/fragment_map.xml +++ b/app/src/main/res/layout/fragment_map.xml @@ -165,7 +165,7 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 280e6248..592db917 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -71,4 +71,6 @@ Satellit Gelände Kartentyp + Kartendetails + Verkehr \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 4cde42ba..2912942b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -70,4 +70,6 @@ Satellite Terrain Map type + Map details + Traffic