From 10e78b9e0311485982711857826ffa79e0d869f4 Mon Sep 17 00:00:00 2001 From: Iván Ávalos Date: Thu, 30 Dec 2021 16:46:21 -0600 Subject: Center map on device click --- .../TrackerMap/android/devices/DevicesAdapter.kt | 3 ++- .../TrackerMap/android/devices/DevicesFragment.kt | 19 +++++++++++++------ 2 files changed, 15 insertions(+), 7 deletions(-) (limited to 'androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices') diff --git a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesAdapter.kt b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesAdapter.kt index 4852757..ffe6ca7 100644 --- a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesAdapter.kt +++ b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesAdapter.kt @@ -15,7 +15,7 @@ import mx.trackermap.TrackerMap.android.databinding.UnitItemBinding import mx.trackermap.TrackerMap.client.models.UnitInformation enum class Action { - DETAILS, REPORTS, COMMANDS + CLICK, DETAILS, REPORTS, COMMANDS } typealias ActionCallback = (unit: UnitInformation, action: Action) -> Unit @@ -75,6 +75,7 @@ class DevicesAdapter( lastAddress.text = unit.position?.address lastDate.text = "yyyy/mm/dd, hh:mm" actionCallback?.let { callback -> + unitCard.setOnClickListener { callback(unit, Action.CLICK) } detailsButton.setOnClickListener { callback(unit, Action.DETAILS) } reportsButton.setOnClickListener { callback(unit, Action.REPORTS) } commandsButton.setOnClickListener { callback(unit, Action.COMMANDS) } diff --git a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesFragment.kt b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesFragment.kt index a8782cc..933316a 100644 --- a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesFragment.kt +++ b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/devices/DevicesFragment.kt @@ -64,11 +64,18 @@ class DevicesFragment : Fragment() { } private fun itemAction(unit: UnitInformation, action: Action) { - Log.d("DevicesFragment", "Action: $action - Unit: $unit") - val activity = requireActivity() - val intent = Intent(activity.applicationContext, DetailsActivity::class.java) - intent.putExtra(DetailsActivity.DEVICE_ID_EXTRA, unit.device.id) - intent.putExtra(DetailsActivity.ACTION_EXTRA, action) - startActivity(intent) + when (action) { + Action.DETAILS, Action.REPORTS, Action.COMMANDS -> { + Log.d("DevicesFragment", "Action: $action - Unit: $unit") + val activity = requireActivity() + val intent = Intent(activity.applicationContext, DetailsActivity::class.java) + intent.putExtra(DetailsActivity.DEVICE_ID_EXTRA, unit.device.id) + intent.putExtra(DetailsActivity.ACTION_EXTRA, action) + startActivity(intent) + } + Action.CLICK -> { + unitsViewModel.selectUnit(unit) + } + } } } \ No newline at end of file -- cgit v1.2.3