MainActivity: Only show NetworkDialogSheet if onboarding is complete

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This commit is contained in:
Aayush Gupta
2023-08-08 12:13:27 +05:30
parent bd7f31858c
commit 982e574038

View File

@@ -45,6 +45,7 @@ import androidx.lifecycle.repeatOnLifecycle
import androidx.navigation.NavController import androidx.navigation.NavController
import androidx.navigation.NavDestination import androidx.navigation.NavDestination
import androidx.navigation.fragment.NavHostFragment import androidx.navigation.fragment.NavHostFragment
import androidx.navigation.fragment.findNavController
import androidx.navigation.ui.AppBarConfiguration import androidx.navigation.ui.AppBarConfiguration
import androidx.navigation.ui.navigateUp import androidx.navigation.ui.navigateUp
import androidx.navigation.ui.setupActionBarWithNavController import androidx.navigation.ui.setupActionBarWithNavController
@@ -123,7 +124,7 @@ class MainActivity : AppCompatActivity() {
NetworkProvider(this@MainActivity).networkStatus.collect { NetworkProvider(this@MainActivity).networkStatus.collect {
when(it) { when(it) {
NetworkStatus.AVAILABLE -> { NetworkStatus.AVAILABLE -> {
if (!supportFragmentManager.isDestroyed) { if (!supportFragmentManager.isDestroyed && isIntroDone()) {
val fragment = supportFragmentManager val fragment = supportFragmentManager
.findFragmentByTag(NetworkDialogSheet.TAG) .findFragmentByTag(NetworkDialogSheet.TAG)
fragment?.let { fragment?.let {
@@ -134,7 +135,7 @@ class MainActivity : AppCompatActivity() {
} }
} }
NetworkStatus.LOST -> { NetworkStatus.LOST -> {
if (!supportFragmentManager.isDestroyed) { if (!supportFragmentManager.isDestroyed && isIntroDone()) {
supportFragmentManager.beginTransaction() supportFragmentManager.beginTransaction()
.add(NetworkDialogSheet.newInstance(), NetworkDialogSheet.TAG) .add(NetworkDialogSheet.newInstance(), NetworkDialogSheet.TAG)
.commitAllowingStateLoss() .commitAllowingStateLoss()
@@ -292,4 +293,8 @@ class MainActivity : AppCompatActivity() {
sheet.show(supportFragmentManager, SelfUpdateSheet.TAG) sheet.show(supportFragmentManager, SelfUpdateSheet.TAG)
} }
} }
private fun isIntroDone(): Boolean {
return Preferences.getBoolean(this@MainActivity, Preferences.PREFERENCE_INTRO)
}
} }