Change to better solution.

This commit is contained in:
Benoit Marty 2024-11-29 09:07:47 +01:00
parent 6d389bad9a
commit bf5fe7c97c

View file

@ -28,6 +28,7 @@ import io.element.android.features.securebackup.impl.root.SecureBackupRootNode
import io.element.android.features.securebackup.impl.setup.SecureBackupSetupNode import io.element.android.features.securebackup.impl.setup.SecureBackupSetupNode
import io.element.android.libraries.architecture.BackstackView import io.element.android.libraries.architecture.BackstackView
import io.element.android.libraries.architecture.BaseFlowNode import io.element.android.libraries.architecture.BaseFlowNode
import io.element.android.libraries.architecture.appyx.canPop
import io.element.android.libraries.architecture.createNode import io.element.android.libraries.architecture.createNode
import io.element.android.libraries.di.SessionScope import io.element.android.libraries.di.SessionScope
import kotlinx.parcelize.Parcelize import kotlinx.parcelize.Parcelize
@ -111,15 +112,10 @@ class SecureBackupFlowNode @AssistedInject constructor(
NavTarget.EnterRecoveryKey -> { NavTarget.EnterRecoveryKey -> {
val callback = object : SecureBackupEnterRecoveryKeyNode.Callback { val callback = object : SecureBackupEnterRecoveryKeyNode.Callback {
override fun onEnterRecoveryKeySuccess() { override fun onEnterRecoveryKeySuccess() {
when (plugins.filterIsInstance<SecureBackupEntryPoint.Params>().first().initialElement) { if (backstack.canPop()) {
SecureBackupEntryPoint.InitialTarget.EnterRecoveryKey -> { backstack.pop()
callbacks.forEach { it.onDone() } } else {
} callbacks.forEach { it.onDone() }
SecureBackupEntryPoint.InitialTarget.ResetIdentity,
SecureBackupEntryPoint.InitialTarget.Root,
SecureBackupEntryPoint.InitialTarget.SetUpRecovery -> {
backstack.pop()
}
} }
} }
} }