aboutsummaryrefslogtreecommitdiff
path: root/androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt
diff options
context:
space:
mode:
authorIsidro Henoch <imhenoch@protonmail.com>2021-12-08 02:09:47 -0600
committerIsidro Henoch <imhenoch@protonmail.com>2021-12-08 02:09:47 -0600
commitd2ee6a21355c390a4aaefc6ea847060c8e47c6ae (patch)
tree3a4000d6c933109a91add937827168ab0a18c1b7 /androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt
parentc80ece3087b862e1849ad5c2972b9b13fec2eb3f (diff)
downloadetbsa-trackermap-mobile-d2ee6a21355c390a4aaefc6ea847060c8e47c6ae.tar.gz
etbsa-trackermap-mobile-d2ee6a21355c390a4aaefc6ea847060c8e47c6ae.tar.bz2
etbsa-trackermap-mobile-d2ee6a21355c390a4aaefc6ea847060c8e47c6ae.zip
WIP: Starts implementing the main activity
- Removes the MainActivity and the shared code it was using - Adds the UnitsActivity - Implements the Map/List toggle functionality
Diffstat (limited to 'androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt')
-rw-r--r--androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt52
1 files changed, 52 insertions, 0 deletions
diff --git a/androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt
new file mode 100644
index 0000000..6e9bc83
--- /dev/null
+++ b/androidApp/src/main/java/mx/trackermap/TrackerMap/android/units/UnitsActivity.kt
@@ -0,0 +1,52 @@
+package mx.trackermap.TrackerMap.android.units
+
+import android.os.Bundle
+import androidx.appcompat.app.AppCompatActivity
+import androidx.fragment.app.commit
+import mx.trackermap.TrackerMap.android.R
+import mx.trackermap.TrackerMap.android.databinding.UnitsActivityBinding
+import mx.trackermap.TrackerMap.android.devices.DevicesFragment
+import mx.trackermap.TrackerMap.android.map.MapFragment
+import org.koin.androidx.viewmodel.ext.android.viewModel
+
+class UnitsActivity : AppCompatActivity() {
+
+ private var _binding: UnitsActivityBinding? = null
+ private val binding get() = _binding!!
+
+ private val unitsViewModel: UnitsViewModel by viewModel()
+
+ override fun onCreate(savedInstanceState: Bundle?) {
+ super.onCreate(savedInstanceState)
+
+ _binding = UnitsActivityBinding.inflate(layoutInflater)
+ setContentView(binding.root)
+
+ setupEvents()
+ setupObservers()
+ }
+
+ override fun onDestroy() {
+ super.onDestroy()
+ _binding = null
+ }
+
+ private fun setupEvents() {
+ binding.displayModeToggle.setOnClickListener {
+ unitsViewModel.toggleDisplayMode()
+ }
+ }
+
+ private fun setupObservers() {
+ unitsViewModel.unitsDisplayMode.observe(this) { displayMode ->
+ val newFragment =
+ when (displayMode) {
+ UnitsViewModel.UnitsDisplayMode.LIST -> DevicesFragment()
+ UnitsViewModel.UnitsDisplayMode.MAP -> MapFragment()
+ }
+ supportFragmentManager.commit {
+ replace(R.id.displayContainer, newFragment)
+ }
+ }
+ }
+} \ No newline at end of file