diff --git a/app/src/main/java/org/lineageos/aperture/CameraActivity.kt b/app/src/main/java/org/lineageos/aperture/CameraActivity.kt
index 4b4ae9e..d357871 100644
--- a/app/src/main/java/org/lineageos/aperture/CameraActivity.kt
+++ b/app/src/main/java/org/lineageos/aperture/CameraActivity.kt
@@ -74,11 +74,11 @@
 import com.google.android.material.button.MaterialButton
 import org.lineageos.aperture.ui.CapturePreviewLayout
 import org.lineageos.aperture.ui.CountDownView
-import org.lineageos.aperture.ui.LocationPermissionsDialog
 import org.lineageos.aperture.ui.GridView
 import org.lineageos.aperture.ui.HorizontalSlider
 import org.lineageos.aperture.ui.LensSelectorLayout
 import org.lineageos.aperture.ui.LevelerView
+import org.lineageos.aperture.ui.LocationPermissionsDialog
 import org.lineageos.aperture.ui.PreviewBlurView
 import org.lineageos.aperture.ui.VerticalSlider
 import org.lineageos.aperture.utils.AssistantIntent
diff --git a/app/src/main/java/org/lineageos/aperture/ui/LevelerView.kt b/app/src/main/java/org/lineageos/aperture/ui/LevelerView.kt
index 4d3ab6f..19826bf 100644
--- a/app/src/main/java/org/lineageos/aperture/ui/LevelerView.kt
+++ b/app/src/main/java/org/lineageos/aperture/ui/LevelerView.kt
@@ -19,7 +19,6 @@
 import kotlin.math.min
 import kotlin.math.roundToInt
 import kotlin.math.sin
-import kotlin.runCatching
 
 class LevelerView(context: Context, attributeSet: AttributeSet?) : View(context, attributeSet) {
     private var currentOrientation = ORIENTATION_UNKNOWN
diff --git a/app/src/main/java/org/lineageos/aperture/utils/CameraManager.kt b/app/src/main/java/org/lineageos/aperture/utils/CameraManager.kt
index 51fbfa6..fa6693a 100644
--- a/app/src/main/java/org/lineageos/aperture/utils/CameraManager.kt
+++ b/app/src/main/java/org/lineageos/aperture/utils/CameraManager.kt
@@ -6,7 +6,6 @@
 package org.lineageos.aperture.utils
 
 import android.content.Context
-import android.hardware.camera2.CameraManager as Camera2CameraManager
 import androidx.camera.extensions.ExtensionsManager
 import androidx.camera.lifecycle.ProcessCameraProvider
 import androidx.camera.video.Quality
@@ -16,6 +15,7 @@
 import org.lineageos.aperture.getStringArray
 import java.util.concurrent.ExecutorService
 import java.util.concurrent.Executors
+import android.hardware.camera2.CameraManager as Camera2CameraManager
 
 /**
  * Class managing an app camera session
diff --git a/app/src/main/java/org/lineageos/aperture/utils/CameraSoundsUtils.kt b/app/src/main/java/org/lineageos/aperture/utils/CameraSoundsUtils.kt
index f7ecc78..062e979 100644
--- a/app/src/main/java/org/lineageos/aperture/utils/CameraSoundsUtils.kt
+++ b/app/src/main/java/org/lineageos/aperture/utils/CameraSoundsUtils.kt
@@ -6,8 +6,8 @@
 package org.lineageos.aperture.utils
 
 import android.annotation.SuppressLint
-import android.content.res.Resources
 import android.content.SharedPreferences
+import android.content.res.Resources
 import android.media.MediaActionSound
 import android.os.Build
 import org.lineageos.aperture.shutterSound
diff --git a/app/src/main/java/org/lineageos/aperture/utils/RROResources.kt b/app/src/main/java/org/lineageos/aperture/utils/RROResources.kt
index 2a8cb27..a531cc7 100644
--- a/app/src/main/java/org/lineageos/aperture/utils/RROResources.kt
+++ b/app/src/main/java/org/lineageos/aperture/utils/RROResources.kt
@@ -7,7 +7,6 @@
 
 import android.annotation.SuppressLint
 import android.content.Context
-import android.content.res.Resources
 
 class RROResources private constructor(val context: Context, private val packageName: String) {
     private val resources = context.packageManager.getResourcesForApplication(packageName)
diff --git a/app/src/main/res/drawable/avd_mode_photo_video.xml b/app/src/main/res/drawable/avd_mode_photo_video.xml
index 995ed6a..3967496 100644
--- a/app/src/main/res/drawable/avd_mode_photo_video.xml
+++ b/app/src/main/res/drawable/avd_mode_photo_video.xml
@@ -7,8 +7,8 @@
     android:drawable="@drawable/ic_shutter_base">
     <target
         android:name="capture"
-        android:animation="@animator/photo_video_scale"/>
+        android:animation="@animator/photo_video_scale" />
     <target
         android:name="capture_src"
-        android:animation="@animator/photo_video_color"/>
+        android:animation="@animator/photo_video_color" />
 </animated-vector>
diff --git a/app/src/main/res/drawable/avd_photo_capture.xml b/app/src/main/res/drawable/avd_photo_capture.xml
index 0495155..a5927b2 100644
--- a/app/src/main/res/drawable/avd_photo_capture.xml
+++ b/app/src/main/res/drawable/avd_photo_capture.xml
@@ -7,8 +7,8 @@
     android:drawable="@drawable/ic_shutter_base">
     <target
         android:name="capture"
-        android:animation="@animator/photo_capture"/>
+        android:animation="@animator/photo_capture" />
     <target
         android:name="record"
-        android:animation="@animator/photo_capture"/>
+        android:animation="@animator/photo_capture" />
 </animated-vector>
diff --git a/app/src/main/res/drawable/ic_network_wifi.xml b/app/src/main/res/drawable/ic_network_wifi.xml
index abe80d6..a945e3f 100644
--- a/app/src/main/res/drawable/ic_network_wifi.xml
+++ b/app/src/main/res/drawable/ic_network_wifi.xml
@@ -5,5 +5,5 @@
     android:viewportHeight="24">
     <path
         android:fillColor="@android:color/white"
-        android:pathData="M1,9l2,2c4.97,-4.97 13.03,-4.97 18,0l2,-2C16.93,2.93 7.08,2.93 1,9zM9,17l3,3 3,-3c-1.65,-1.66 -4.34,-1.66 -6,0zM5,13l2,2c2.76,-2.76 7.24,-2.76 10,0l2,-2C15.14,9.14 8.87,9.14 5,13z"/>
+        android:pathData="M1,9l2,2c4.97,-4.97 13.03,-4.97 18,0l2,-2C16.93,2.93 7.08,2.93 1,9zM9,17l3,3 3,-3c-1.65,-1.66 -4.34,-1.66 -6,0zM5,13l2,2c2.76,-2.76 7.24,-2.76 10,0l2,-2C15.14,9.14 8.87,9.14 5,13z" />
 </vector>
diff --git a/app/src/main/res/layout/activity_camera.xml b/app/src/main/res/layout/activity_camera.xml
index f18d4b1..801c594 100644
--- a/app/src/main/res/layout/activity_camera.xml
+++ b/app/src/main/res/layout/activity_camera.xml
@@ -239,9 +239,9 @@
         <com.google.android.material.divider.MaterialDivider
             android:layout_width="0dp"
             android:layout_height="wrap_content"
+            app:layout_constraintBottom_toBottomOf="parent"
             app:layout_constraintEnd_toEndOf="parent"
-            app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintBottom_toBottomOf="parent" />
+            app:layout_constraintStart_toStartOf="parent" />
 
         <ImageButton
             android:id="@+id/proButton"
