From 7d386583ff1e623f96729fe0c4219a1f6dcde2b9 Mon Sep 17 00:00:00 2001 From: PWRxPSYCHO Date: Mon, 3 Oct 2022 09:21:06 -0400 Subject: [PATCH] working on updates --- .../com/geeksville/mesh/ui/MapFragment.kt | 37 ++++++++++++++----- 1 file changed, 27 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/geeksville/mesh/ui/MapFragment.kt b/app/src/main/java/com/geeksville/mesh/ui/MapFragment.kt index 9f4961bc..3aa193fa 100644 --- a/app/src/main/java/com/geeksville/mesh/ui/MapFragment.kt +++ b/app/src/main/java/com/geeksville/mesh/ui/MapFragment.kt @@ -30,6 +30,9 @@ import com.google.android.material.floatingactionbutton.FloatingActionButton import dagger.hilt.android.AndroidEntryPoint import org.osmdroid.api.IMapController import org.osmdroid.config.Configuration +import org.osmdroid.events.MapListener +import org.osmdroid.events.ScrollEvent +import org.osmdroid.events.ZoomEvent import org.osmdroid.tileprovider.cachemanager.CacheManager import org.osmdroid.tileprovider.cachemanager.CacheManager.CacheManagerCallback import org.osmdroid.tileprovider.modules.SqliteArchiveTileWriter @@ -101,11 +104,7 @@ class MapFragment : ScreenFragment("Map"), Logging, View.OnClickListener, OnSeek setupMapProperties() map.setTileSource(loadOnlineTileSourceBase()) - if (!(map.tileProvider.tileSource as OnlineTileSourceBase).tileSourcePolicy.acceptsBulkDownload()) { - downloadBtn.visibility = View.GONE - } else { - downloadBtn.visibility = View.VISIBLE - } + renderDownloadButton() map.let { if (view != null) { mapController = map.controller @@ -367,16 +366,20 @@ class MapFragment : ScreenFragment("Map"), Logging, View.OnClickListener, OnSeek editor.apply() dialog.dismiss() map.setTileSource(loadOnlineTileSourceBase()) - if (!(map.tileProvider.tileSource as OnlineTileSourceBase).tileSourcePolicy.acceptsBulkDownload()) { - downloadBtn.visibility = View.GONE - } else { - downloadBtn.visibility = View.VISIBLE - } + renderDownloadButton() } val dialog = builder.create() dialog.show() } + private fun renderDownloadButton() { + if (!(map.tileProvider.tileSource as OnlineTileSourceBase).tileSourcePolicy.acceptsBulkDownload()) { + downloadBtn.visibility = View.GONE + } else { + downloadBtn.visibility = View.VISIBLE + } + } + private fun onWaypointChanged(wayPt: Collection) { /** @@ -496,6 +499,20 @@ class MapFragment : ScreenFragment("Map"), Logging, View.OnClickListener, OnSeek defaultMinZoom // sets the minimum zoom level (the furthest out you can zoom) map.setMultiTouchControls(true) // Sets gesture controls to true. map.zoomController.setVisibility(CustomZoomButtonsController.Visibility.NEVER) // Disables default +/- button for zooming + map.addMapListener(onMapLongPress()) + } + } + + private fun onMapLongPress(): MapListener { + return object : MapListener { + override fun onScroll(event: ScrollEvent?): Boolean { + return true + } + + override fun onZoom(event: ZoomEvent?): Boolean { + return true + } + } }