diff --git a/changelog.d/8439.bugfix b/changelog.d/8439.bugfix new file mode 100644 index 0000000000..c271f185c9 --- /dev/null +++ b/changelog.d/8439.bugfix @@ -0,0 +1 @@ +Allow stateloss on verification dialogfragment diff --git a/vector/src/main/java/im/vector/app/features/navigation/DefaultNavigator.kt b/vector/src/main/java/im/vector/app/features/navigation/DefaultNavigator.kt index d2628fcf0f..b38805f05a 100644 --- a/vector/src/main/java/im/vector/app/features/navigation/DefaultNavigator.kt +++ b/vector/src/main/java/im/vector/app/features/navigation/DefaultNavigator.kt @@ -38,6 +38,7 @@ import im.vector.app.config.OnboardingVariant import im.vector.app.core.debug.DebugNavigator import im.vector.app.core.di.ActiveSessionHolder import im.vector.app.core.error.fatalError +import im.vector.app.core.extensions.commitTransaction import im.vector.app.features.VectorFeatures import im.vector.app.features.analytics.AnalyticsTracker import im.vector.app.features.analytics.extensions.toAnalyticsViewRoom @@ -256,8 +257,9 @@ class DefaultNavigator @Inject constructor( otherSessionId ) if (context is AppCompatActivity) { - SelfVerificationBottomSheet.forTransaction(request.transactionId) - .show(context.supportFragmentManager, "VERIF") + context.supportFragmentManager.commitTransaction(allowStateLoss = true) { + add(SelfVerificationBottomSheet.forTransaction(request.transactionId), "VERIF") + } } } } @@ -271,8 +273,9 @@ class DefaultNavigator @Inject constructor( // .filter { it.deviceId != session.sessionParams.deviceId } // .map { it.deviceId } if (context is AppCompatActivity) { - SelfVerificationBottomSheet.verifyOwnUntrustedDevice() - .show(context.supportFragmentManager, "VERIF") + context.supportFragmentManager.commitTransaction(allowStateLoss = true) { + add(SelfVerificationBottomSheet.verifyOwnUntrustedDevice(), "VERIF") + } // if (otherSessions.isNotEmpty()) { // val pr = session.cryptoService().verificationService().requestSelfKeyVerification( // supportedVerificationMethodsProvider.provide())