Remove RetryStartDM action

This commit is contained in:
Florian Renaud 2023-04-05 17:33:52 +02:00
parent 831eb7c840
commit 73e67b638d
4 changed files with 6 additions and 7 deletions

View file

@ -21,6 +21,5 @@ import io.element.android.libraries.matrix.ui.model.MatrixUser
sealed interface CreateRoomRootEvents { sealed interface CreateRoomRootEvents {
object InvitePeople : CreateRoomRootEvents object InvitePeople : CreateRoomRootEvents
data class StartDM(val matrixUser: MatrixUser) : CreateRoomRootEvents data class StartDM(val matrixUser: MatrixUser) : CreateRoomRootEvents
object RetryStartDM : CreateRoomRootEvents
object CancelStartDM : CreateRoomRootEvents object CancelStartDM : CreateRoomRootEvents
} }

View file

@ -69,10 +69,6 @@ class CreateRoomRootPresenter @Inject constructor(
fun handleEvents(event: CreateRoomRootEvents) { fun handleEvents(event: CreateRoomRootEvents) {
when (event) { when (event) {
is CreateRoomRootEvents.StartDM -> startDm(event.matrixUser) is CreateRoomRootEvents.StartDM -> startDm(event.matrixUser)
CreateRoomRootEvents.RetryStartDM -> {
startDmAction.value = Async.Uninitialized
userListState.selectedUsers.firstOrNull()?.let { startDm(it) }
}
CreateRoomRootEvents.CancelStartDM -> startDmAction.value = Async.Uninitialized CreateRoomRootEvents.CancelStartDM -> startDmAction.value = Async.Uninitialized
CreateRoomRootEvents.InvitePeople -> Unit // Todo Handle invite people action CreateRoomRootEvents.InvitePeople -> Unit // Todo Handle invite people action
} }

View file

@ -112,7 +112,11 @@ fun CreateRoomRootView(
RetryDialog( RetryDialog(
content = stringResource(id = StringR.string.screen_start_chat_error_starting_chat), content = stringResource(id = StringR.string.screen_start_chat_error_starting_chat),
onDismiss = { state.eventSink(CreateRoomRootEvents.CancelStartDM) }, onDismiss = { state.eventSink(CreateRoomRootEvents.CancelStartDM) },
onRetry = { state.eventSink(CreateRoomRootEvents.RetryStartDM) }, onRetry = {
state.userListState.selectedUsers.firstOrNull()?.let {
state.eventSink(CreateRoomRootEvents.StartDM(it))
}
},
) )
} }
else -> Unit else -> Unit

View file

@ -145,7 +145,7 @@ class CreateRoomRootPresenterTests {
// Retry with success // Retry with success
fakeMatrixClient.givenCreateDmError(null) fakeMatrixClient.givenCreateDmError(null)
stateAfterSecondAttempt.eventSink(CreateRoomRootEvents.RetryStartDM) stateAfterSecondAttempt.eventSink(CreateRoomRootEvents.StartDM(matrixUser))
assertThat(awaitItem().startDmAction).isInstanceOf(Async.Uninitialized::class.java) assertThat(awaitItem().startDmAction).isInstanceOf(Async.Uninitialized::class.java)
assertThat(awaitItem().startDmAction).isInstanceOf(Async.Loading::class.java) assertThat(awaitItem().startDmAction).isInstanceOf(Async.Loading::class.java)
val stateAfterRetryStartDM = awaitItem() val stateAfterRetryStartDM = awaitItem()