aboutsummaryrefslogtreecommitdiff
path: root/androidApp/src/main/java/mx/trackermap/TrackerMap/android/map
diff options
context:
space:
mode:
authorIván Ávalos <avalos@disroot.org>2022-03-10 21:23:09 -0600
committerIván Ávalos <avalos@disroot.org>2022-03-10 21:23:09 -0600
commit9df32de8d2d26b8ebb6c6fb3f0bed10831947293 (patch)
tree81106acd83a93665850af40aca61fc145ae34dde /androidApp/src/main/java/mx/trackermap/TrackerMap/android/map
parent440399490ec8874ed5295ca6b5770c94d47d4f3d (diff)
parent620cd5b1e2782adfd57660017878013f2fb896bd (diff)
downloadetbsa-trackermap-mobile-9df32de8d2d26b8ebb6c6fb3f0bed10831947293.tar.gz
etbsa-trackermap-mobile-9df32de8d2d26b8ebb6c6fb3f0bed10831947293.tar.bz2
etbsa-trackermap-mobile-9df32de8d2d26b8ebb6c6fb3f0bed10831947293.zip
Merge branch 'main' of https://git.sr.ht/~avalos/trackermap-mobile
Diffstat (limited to 'androidApp/src/main/java/mx/trackermap/TrackerMap/android/map')
-rw-r--r--androidApp/src/main/java/mx/trackermap/TrackerMap/android/map/UnitMapFragment.kt19
1 files changed, 11 insertions, 8 deletions
diff --git a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/map/UnitMapFragment.kt b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/map/UnitMapFragment.kt
index e7e5ce0..5e2224b 100644
--- a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/map/UnitMapFragment.kt
+++ b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/map/UnitMapFragment.kt
@@ -85,7 +85,7 @@ class UnitMapFragment : Fragment() {
childFragmentManager.commit {
replace(R.id.unitsMap, mapFragment)
}
- mapFragment.setMarkerCallback(unitsViewModel::selectUnitWith)
+ mapFragment.setMarkerCallback(unitsViewModel::selectUnitWithPositionId)
}
private fun setupObservers() {
@@ -132,14 +132,16 @@ class UnitMapFragment : Fragment() {
), binding.mapUnitCard.context, unit, this::itemAction
)
- unitsViewModel.moveCamera(
- UnitsViewModel.Camera(
- point = Point2d(
- unit.position!!.longitude!!, unit.position!!.latitude!!
- ),
- animated = true
+ if (selectedUnit.device.id != unitsViewModel.oldSelectedUnit.value?.device?.id) {
+ unitsViewModel.moveCamera(
+ UnitsViewModel.Camera(
+ point = Point2d(
+ unit.position!!.longitude!!, unit.position!!.latitude!!
+ ),
+ animated = true
+ )
)
- )
+ }
}
}
@@ -178,6 +180,7 @@ class UnitMapFragment : Fragment() {
unitsViewModel.selectedUnit.removeObservers(viewLifecycleOwner)
unitsViewModel.mapLayerType.removeObservers(viewLifecycleOwner)
unitsViewModel.geofences.removeObservers(viewLifecycleOwner)
+ unitsViewModel.camera.removeObservers(viewLifecycleOwner)
}
private fun itemAction(unit: UnitInformation, action: UnitRenderData.Action) {