Move button actions to view events
This commit is contained in:
parent
c662b221c9
commit
9a5455e264
5 changed files with 8 additions and 10 deletions
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
package io.element.android.features.createroom.root
|
package io.element.android.features.createroom.root
|
||||||
|
|
||||||
// TODO Add your events or remove the file completely if no events
|
|
||||||
sealed interface CreateRoomRootEvents {
|
sealed interface CreateRoomRootEvents {
|
||||||
object MyEvent : CreateRoomRootEvents
|
object CreateRoom : CreateRoomRootEvents
|
||||||
|
object InvitePeople : CreateRoomRootEvents
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -47,8 +47,6 @@ class CreateRoomRootNode @AssistedInject constructor(
|
||||||
state = state,
|
state = state,
|
||||||
modifier = modifier,
|
modifier = modifier,
|
||||||
onClosePressed = this::navigateUp,
|
onClosePressed = this::navigateUp,
|
||||||
onNewRoomClicked = { /* TODO Handle new room action */ },
|
|
||||||
onInvitePeopleClicked = { /* TODO Handle invite people action */ },
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,8 @@ class CreateRoomRootPresenter @Inject constructor() : Presenter<CreateRoomRootSt
|
||||||
|
|
||||||
fun handleEvents(event: CreateRoomRootEvents) {
|
fun handleEvents(event: CreateRoomRootEvents) {
|
||||||
when (event) {
|
when (event) {
|
||||||
CreateRoomRootEvents.MyEvent -> Unit
|
CreateRoomRootEvents.CreateRoom -> Unit // Todo Handle create room action
|
||||||
|
CreateRoomRootEvents.InvitePeople -> Unit // Todo Handle invite people action
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -63,8 +63,6 @@ fun CreateRoomRootScreen(
|
||||||
state: CreateRoomRootState,
|
state: CreateRoomRootState,
|
||||||
modifier: Modifier = Modifier,
|
modifier: Modifier = Modifier,
|
||||||
onClosePressed: () -> Unit = {},
|
onClosePressed: () -> Unit = {},
|
||||||
onNewRoomClicked: () -> Unit = {},
|
|
||||||
onInvitePeopleClicked: () -> Unit = {},
|
|
||||||
) {
|
) {
|
||||||
var searchText by rememberSaveable { mutableStateOf("") }
|
var searchText by rememberSaveable { mutableStateOf("") }
|
||||||
var isSearchActive by rememberSaveable { mutableStateOf(false) }
|
var isSearchActive by rememberSaveable { mutableStateOf(false) }
|
||||||
|
|
@ -91,8 +89,8 @@ fun CreateRoomRootScreen(
|
||||||
|
|
||||||
if (!isSearchActive) {
|
if (!isSearchActive) {
|
||||||
CreateRoomActionButtonsList(
|
CreateRoomActionButtonsList(
|
||||||
onNewRoomClicked = onNewRoomClicked,
|
onNewRoomClicked = { state.eventSink(CreateRoomRootEvents.CreateRoom) },
|
||||||
onInvitePeopleClicked = onInvitePeopleClicked,
|
onInvitePeopleClicked = { state.eventSink(CreateRoomRootEvents.InvitePeople) },
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,8 @@ class CreateRoomRootPresenterTests {
|
||||||
presenter.present()
|
presenter.present()
|
||||||
}.test {
|
}.test {
|
||||||
val initialState = awaitItem()
|
val initialState = awaitItem()
|
||||||
initialState.eventSink.invoke(CreateRoomRootEvents.MyEvent)
|
initialState.eventSink(CreateRoomRootEvents.CreateRoom) // Not implemented yet
|
||||||
|
initialState.eventSink(CreateRoomRootEvents.InvitePeople) // Not implemented yet
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue