From 2ec7073d41951e515336c66452c5e2afafcdbda1 Mon Sep 17 00:00:00 2001 From: MohitMaliFtechiz Date: Fri, 24 Jun 2022 16:31:12 +0530 Subject: [PATCH] Fix app crash when user navigates away and then returns to the app in intro screen --- .../java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt b/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt index e724d14e6..0d00e9198 100644 --- a/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt +++ b/app/src/main/java/org/kiwix/kiwixmobile/main/KiwixMainActivity.kt @@ -60,6 +60,7 @@ class KiwixMainActivity : CoreMainActivity() { override val topLevelDestinations = setOf(R.id.downloadsFragment, R.id.libraryFragment, R.id.readerFragment) + private var isIntroScreenVisible: Boolean = false override fun injection(coreComponent: CoreComponent) { cachedComponent.inject(this) } @@ -98,12 +99,15 @@ class KiwixMainActivity : CoreMainActivity() { handleDrawerOnNavigation() } } - if (sharedPreferenceUtil.showIntro()) { + if (sharedPreferenceUtil.showIntro() && !isIntroScreenNotVisible()) { navigate(KiwixReaderFragmentDirections.actionReaderFragmentToIntroFragment()) } sharedPreferenceUtil.setIsPlayStoreBuildType(BuildConfig.IS_PLAYSTORE) } + private fun isIntroScreenNotVisible(): Boolean = + isIntroScreenVisible.also { isIntroScreenVisible = true } + override fun onSupportActionModeStarted(mode: ActionMode) { super.onSupportActionModeStarted(mode) actionMode = mode