Aperture: Make sure we only have one torch/zoom state observer

Change-Id: Icdcea60450bb05bd2138cf20054cb385bd5a1608
diff --git a/app/src/main/java/org/lineageos/aperture/MainActivity.kt b/app/src/main/java/org/lineageos/aperture/MainActivity.kt
index 49b249c..d0d0efb 100644
--- a/app/src/main/java/org/lineageos/aperture/MainActivity.kt
+++ b/app/src/main/java/org/lineageos/aperture/MainActivity.kt
@@ -423,6 +423,7 @@
         }
 
         // Observe zoom state
+        cameraController.zoomState.removeObservers(this)
         cameraController.zoomState.observe(this) {
             zoomLevel.valueFrom = it.minZoomRatio
             zoomLevel.valueTo = it.maxZoomRatio
@@ -434,6 +435,7 @@
         }
 
         // Observe torch state
+        cameraController.torchState.removeObservers(this)
         cameraController.torchState.observe(this) {
             updateTorchModeIcon()
         }