Browse Source

Use method references, and avoid using `navigateUp()`: let the parent Node decide how to navigate.

pull/2429/head
Benoit Marty 7 months ago
parent
commit
bd8b234f59
  1. 4
      appnav/src/main/kotlin/io/element/android/appnav/LoggedInFlowNode.kt
  2. 1
      features/verifysession/api/src/main/kotlin/io/element/android/features/verifysession/api/VerifySessionEntryPoint.kt
  3. 10
      features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionNode.kt

4
appnav/src/main/kotlin/io/element/android/appnav/LoggedInFlowNode.kt

@ -338,6 +338,10 @@ class LoggedInFlowNode @AssistedInject constructor( @@ -338,6 +338,10 @@ class LoggedInFlowNode @AssistedInject constructor(
)
)
}
override fun onDone() {
backstack.pop()
}
}
verifySessionEntryPoint
.nodeBuilder(this, buildContext)

1
features/verifysession/api/src/main/kotlin/io/element/android/features/verifysession/api/VerifySessionEntryPoint.kt

@ -31,5 +31,6 @@ interface VerifySessionEntryPoint : FeatureEntryPoint { @@ -31,5 +31,6 @@ interface VerifySessionEntryPoint : FeatureEntryPoint {
interface Callback : Plugin {
fun onEnterRecoveryKey()
fun onDone()
}
}

10
features/verifysession/impl/src/main/kotlin/io/element/android/features/verifysession/impl/VerifySelfSessionNode.kt

@ -40,14 +40,20 @@ class VerifySelfSessionNode @AssistedInject constructor( @@ -40,14 +40,20 @@ class VerifySelfSessionNode @AssistedInject constructor(
}
}
private fun onDone() {
plugins<VerifySessionEntryPoint.Callback>().forEach {
it.onDone()
}
}
@Composable
override fun View(modifier: Modifier) {
val state = presenter.present()
VerifySelfSessionView(
state = state,
modifier = modifier,
onEnterRecoveryKey = { onEnterRecoveryKey() },
goBack = { navigateUp() }
onEnterRecoveryKey = ::onEnterRecoveryKey,
goBack = ::onDone,
)
}
}

Loading…
Cancel
Save