Browse Source

Fix navigation broken

feature/jme/open-room-member-details-when-clicking-on-user-data
Florian Renaud 1 year ago
parent
commit
403014b1dd
  1. 6
      features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/ConfigureRoomFlowNode.kt
  2. 8
      features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/configureroom/ConfigureRoomNode.kt

6
features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/ConfigureRoomFlowNode.kt

@ -23,6 +23,7 @@ import com.bumble.appyx.core.composable.Children @@ -23,6 +23,7 @@ import com.bumble.appyx.core.composable.Children
import com.bumble.appyx.core.modality.BuildContext
import com.bumble.appyx.core.node.Node
import com.bumble.appyx.core.plugin.Plugin
import com.bumble.appyx.core.plugin.plugins
import com.bumble.appyx.navmodel.backstack.BackStack
import com.bumble.appyx.navmodel.backstack.operation.push
import dagger.assisted.Assisted
@ -76,10 +77,11 @@ class ConfigureRoomFlowNode @AssistedInject constructor( @@ -76,10 +77,11 @@ class ConfigureRoomFlowNode @AssistedInject constructor(
backstack.push(NavTarget.ConfigureRoom)
}
}
createNode<AddPeopleNode>(context = buildContext, plugins = plugins.plus(callback))
createNode<AddPeopleNode>(context = buildContext, plugins = listOf(callback))
}
NavTarget.ConfigureRoom -> {
createNode<ConfigureRoomNode>(context = buildContext, plugins = plugins)
val callbacks = plugins<ConfigureRoomNode.Callback>()
createNode<ConfigureRoomNode>(context = buildContext, plugins = callbacks)
}
}
}

8
features/createroom/impl/src/main/kotlin/io/element/android/features/createroom/impl/configureroom/ConfigureRoomNode.kt

@ -39,10 +39,8 @@ class ConfigureRoomNode @AssistedInject constructor( @@ -39,10 +39,8 @@ class ConfigureRoomNode @AssistedInject constructor(
fun onCreateRoomSuccess(roomId: RoomId)
}
private val callback = object : Callback {
override fun onCreateRoomSuccess(roomId: RoomId) {
plugins<Callback>().forEach { it.onCreateRoomSuccess(roomId) }
}
private fun onRoomCreated(roomId: RoomId) {
plugins<Callback>().forEach { it.onCreateRoomSuccess(roomId) }
}
@Composable
@ -52,7 +50,7 @@ class ConfigureRoomNode @AssistedInject constructor( @@ -52,7 +50,7 @@ class ConfigureRoomNode @AssistedInject constructor(
state = state,
modifier = modifier,
onBackPressed = this::navigateUp,
onRoomCreated = callback::onCreateRoomSuccess
onRoomCreated = this::onRoomCreated
)
}
}

Loading…
Cancel
Save