diff --git a/app/src/main/java/io/github/wulkanowy/ui/modules/main/MainActivity.kt b/app/src/main/java/io/github/wulkanowy/ui/modules/main/MainActivity.kt
index 5fda7210..37c6c6e7 100644
--- a/app/src/main/java/io/github/wulkanowy/ui/modules/main/MainActivity.kt
+++ b/app/src/main/java/io/github/wulkanowy/ui/modules/main/MainActivity.kt
@@ -324,9 +324,7 @@ class MainActivity : BaseActivity<MainPresenter, ActivityMainBinding>(), MainVie
     }
 
     override fun showAccountPicker(studentWithSemesters: List<StudentWithSemesters>) {
-        if (supportFragmentManager.isStateSaved) return
-
-        navController.showDialogFragment(AccountQuickDialog.newInstance(studentWithSemesters))
+        showDialogFragment(AccountQuickDialog.newInstance(studentWithSemesters))
     }
 
     override fun showActionBarElevation(show: Boolean) {
@@ -342,9 +340,18 @@ class MainActivity : BaseActivity<MainPresenter, ActivityMainBinding>(), MainVie
         (navController.currentStack?.getOrNull(0) as? MainView.MainChildView)?.onFragmentChanged()
     }
 
+    @Suppress("DEPRECATION")
     fun showDialogFragment(dialog: DialogFragment) {
         if (supportFragmentManager.isStateSaved) return
 
+        //Deprecated method is used here to avoid fragnav bug
+        if (navController.currentDialogFrag?.fragmentManager == null) {
+            FragNavController::class.java.getDeclaredField("mCurrentDialogFrag").apply {
+                isAccessible = true
+                set(navController, null)
+            }
+        }
+
         navController.showDialogFragment(dialog)
     }