commit e63c4f9abf3c113eefbe270ea09688705ce9147e Merge: 1356b5a 5370279 Author: Fabio Mazza Date: Wed May 7 11:36:48 2025 +0200 Merge branch 'master' into arcpatch-D186_1 diff --cc app/src/main/java/it/reyboz/bustorino/fragments/MapLibreFragment.kt index aafd901,dbc0444..bfc0946 --- a/app/src/main/java/it/reyboz/bustorino/fragments/MapLibreFragment.kt +++ b/app/src/main/java/it/reyboz/bustorino/fragments/MapLibreFragment.kt @@@ -295,61 -280,67 +286,61 @@@ class MapLibreFragment : GeneralMapLibr override fun onMapReady(mapReady: MapLibreMap) { this.map = mapReady val context = requireContext() - val mjson = Styles.getJsonStyleFromAsset(context, PreferencesHolder.getMapLibreStyleFile(context)) + val mjson = MapLibreStyles.getJsonStyleFromAsset(context, PreferencesHolder.getMapLibreStyleFile(context)) //ViewUtils.loadJsonFromAsset(requireContext(),"map_style_good.json") - activity?.run { - val builder = Style.Builder().fromJson(mjson!!) - mapReady.setStyle(builder) { style -> + val builder = Style.Builder().fromJson(mjson!!) - mapStyle = style - //setupLayers(style) + mapReady.setStyle(builder) { style -> - // Start observing data - observeStops() - initMapLocation(style, mapReady, requireContext()) - //init stop layer with this - val stopsInCache = stopsViewModel.getAllStopsLoaded() - if(stopsInCache.isEmpty()) - initStopsLayer(style, FeatureCollection.fromFeatures(ArrayList())) - else - displayStops(stopsInCache) - if(showBusLayer) setupBusLayer(style) + mapStyle = style + //setupLayers(style) + // Start observing data + observeStops() + initMapLocation(style, mapReady, requireContext()) + //init stop layer with this + val stopsInCache = stopsViewModel.getAllStopsLoaded() + if(stopsInCache.isEmpty()) + initStopsLayer(style, FeatureCollection.fromFeatures(ArrayList())) + else + displayStops(stopsInCache) + if(showBusLayer) setupBusLayer(style) - /*symbolManager = SymbolManager(mapView,mapReady,style, null, "symbol-transit-airfield") - symbolManager.iconAllowOverlap = true - symbolManager.textAllowOverlap = false - symbolManager.textIgnorePlacement =true + /*symbolManager = SymbolManager(mapView,mapReady,style, null, "symbol-transit-airfield") + symbolManager.iconAllowOverlap = true + symbolManager.textAllowOverlap = false + symbolManager.textIgnorePlacement =true - */ - /*symbolManager.addClickListener{ _ -> - if (stopActiveSymbol!=null){ - hideStopBottomSheet() - - return@addClickListener true - } else - return@addClickListener false - } - */ + */ + /*symbolManager.addClickListener{ _ -> + if (stopActiveSymbol!=null){ + hideStopBottomSheet() + return@addClickListener true + } else + return@addClickListener false } - mapReady.addOnCameraIdleListener { - map?.let { - val newBbox = it.projection.visibleRegion.latLngBounds - if ((newBbox.center==lastBBox.center) && (newBbox.latitudeSpan==lastBBox.latitudeSpan) && (newBbox.longitudeSpan==lastBBox.latitudeSpan)){ - //do nothing - } else { - stopsViewModel.loadStopsInLatLngBounds(newBbox) - lastBBox = newBbox + */ - } + } - } - } - mapReady.addOnCameraMoveStartedListener { + mapReady.addOnCameraIdleListener { + isUserMovingCamera = false + map?.let { + val newBbox = it.projection.visibleRegion.latLngBounds + if ((newBbox.center==lastBBox.center) && (newBbox.latitudeSpan==lastBBox.latitudeSpan) && (newBbox.longitudeSpan==lastBBox.latitudeSpan)){ + //do nothing + } else { + stopsViewModel.loadStopsInLatLngBounds(newBbox) + lastBBox = newBbox - map?.let { setFollowingUser(it.locationComponent.cameraMode == CameraMode.TRACKING) } - //setFollowingUser() + } }