Avoid using navigateUp.
This commit is contained in:
parent
4a90186bd1
commit
f05a00b9b3
4 changed files with 27 additions and 5 deletions
|
|
@ -40,6 +40,7 @@ import io.element.android.libraries.architecture.BaseFlowNode
|
|||
import io.element.android.libraries.architecture.appyx.canPop
|
||||
import io.element.android.libraries.architecture.callback
|
||||
import io.element.android.libraries.architecture.createNode
|
||||
import io.element.android.libraries.architecture.navigation.BaseCallback
|
||||
import io.element.android.libraries.di.SessionScope
|
||||
import io.element.android.libraries.matrix.api.core.EventId
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
|
|
@ -267,7 +268,8 @@ class PreferencesFlowNode(
|
|||
}
|
||||
is NavTarget.UserProfile -> {
|
||||
val inputs = EditUserProfileNode.Inputs(navTarget.matrixUser)
|
||||
createNode<EditUserProfileNode>(buildContext, listOf(inputs))
|
||||
val callback = BaseCallback { backstack.pop() }
|
||||
createNode<EditUserProfileNode>(buildContext, listOf(inputs, callback))
|
||||
}
|
||||
NavTarget.LockScreenSettings -> {
|
||||
lockScreenEntryPoint.createNode(
|
||||
|
|
|
|||
|
|
@ -17,7 +17,9 @@ import dev.zacsweers.metro.Assisted
|
|||
import dev.zacsweers.metro.AssistedInject
|
||||
import io.element.android.annotations.ContributesNode
|
||||
import io.element.android.libraries.architecture.NodeInputs
|
||||
import io.element.android.libraries.architecture.callback
|
||||
import io.element.android.libraries.architecture.inputs
|
||||
import io.element.android.libraries.architecture.navigation.BaseCallback
|
||||
import io.element.android.libraries.architecture.navigation.BaseNavigator
|
||||
import io.element.android.libraries.di.SessionScope
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
|
|
@ -35,6 +37,7 @@ class EditUserProfileNode(
|
|||
) : NodeInputs
|
||||
|
||||
val matrixUser = inputs<Inputs>().matrixUser
|
||||
val callback: BaseCallback = callback()
|
||||
val presenter = presenterFactory.create(
|
||||
matrixUser = matrixUser,
|
||||
navigator = this,
|
||||
|
|
@ -50,8 +53,5 @@ class EditUserProfileNode(
|
|||
)
|
||||
}
|
||||
|
||||
override fun close() {
|
||||
// TODO Invoke callback
|
||||
navigateUp()
|
||||
}
|
||||
override fun close() = callback.onDone()
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue