diff options
Diffstat (limited to 'androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/reports/UnitReportsFragment.kt')
-rw-r--r-- | androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/reports/UnitReportsFragment.kt | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/reports/UnitReportsFragment.kt b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/reports/UnitReportsFragment.kt index d3e008f..600cfe1 100644 --- a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/reports/UnitReportsFragment.kt +++ b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/details/reports/UnitReportsFragment.kt @@ -60,17 +60,29 @@ class UnitReportsFragment : Fragment() { unitReportsViewModel.setDeviceId( arguments?.getInt(UnitDetailsAdapter.DEVICE_ID_ARG) ?: 0) - initializeMap() setupEvents() + initializeMap() + } + + override fun onResume() { + super.onResume() + setupObservers() } + override fun onStop() { + super.onStop() + + removeObservers() + } + override fun onDestroyView() { super.onDestroyView() _binding = null } private fun initializeMap() { + Log.d("UnitReportsFragment", "initializeMap()") childFragmentManager.commit { replace(R.id.reportsMapContainer, reportsMapFragment) } @@ -140,6 +152,11 @@ class UnitReportsFragment : Fragment() { } } + private fun removeObservers() { + unitReportsViewModel.report.removeObservers(viewLifecycleOwner) + unitReportsViewModel.reportPeriod.removeObservers(viewLifecycleOwner) + } + private fun showPeriodPopUp(view: View) { val popOver = PopupMenu(context, view) popOver.menuInflater.inflate(R.menu.report_period_options, popOver.menu) @@ -262,6 +279,7 @@ class UnitReportsFragment : Fragment() { } private fun showMap(shouldShowMap: Boolean) { + Log.d("UnitReportsFragment", "showMap($shouldShowMap)") binding.reportLoading.root.visibility = View.GONE binding.eventsScroll.visibility = if (shouldShowMap) View.GONE else View.VISIBLE binding.reportsMapContainer.visibility = if (shouldShowMap) View.VISIBLE else View.GONE |