ResolveVerifiedUserSendFailureEvent -> ResolveVerifiedUserSendFailureEven

This commit is contained in:
Benoit Marty 2026-01-27 09:58:44 +01:00
parent f74f6b0d45
commit 79b8742e95
8 changed files with 40 additions and 40 deletions

View file

@ -10,12 +10,12 @@ package io.element.android.features.messages.impl.crypto.sendfailure.resolve
import io.element.android.features.messages.impl.timeline.model.TimelineItem
sealed interface ResolveVerifiedUserSendFailureEvents {
sealed interface ResolveVerifiedUserSendFailureEvent {
data class ComputeForMessage(
val messageEvent: TimelineItem.Event,
) : ResolveVerifiedUserSendFailureEvents
) : ResolveVerifiedUserSendFailureEvent
data object ResolveAndResend : ResolveVerifiedUserSendFailureEvents
data object Retry : ResolveVerifiedUserSendFailureEvents
data object Dismiss : ResolveVerifiedUserSendFailureEvents
data object ResolveAndResend : ResolveVerifiedUserSendFailureEvent
data object Retry : ResolveVerifiedUserSendFailureEvent
data object Dismiss : ResolveVerifiedUserSendFailureEvent
}

View file

@ -48,9 +48,9 @@ class ResolveVerifiedUserSendFailurePresenter(
}
val coroutineScope = rememberCoroutineScope()
fun handleEvent(event: ResolveVerifiedUserSendFailureEvents) {
fun handleEvent(event: ResolveVerifiedUserSendFailureEvent) {
when (event) {
is ResolveVerifiedUserSendFailureEvents.ComputeForMessage -> {
is ResolveVerifiedUserSendFailureEvent.ComputeForMessage -> {
val sendState = event.messageEvent.localSendState as? LocalEventSendState.Failed.VerifiedUser
val transactionId = event.messageEvent.transactionId
val sendHandle = event.messageEvent.sendhandle
@ -65,10 +65,10 @@ class ResolveVerifiedUserSendFailurePresenter(
null
}
}
ResolveVerifiedUserSendFailureEvents.Dismiss -> {
ResolveVerifiedUserSendFailureEvent.Dismiss -> {
resolver = null
}
ResolveVerifiedUserSendFailureEvents.Retry -> {
ResolveVerifiedUserSendFailureEvent.Retry -> {
coroutineScope.launch {
resolver?.run {
runUpdatingState(retryAction) {
@ -77,7 +77,7 @@ class ResolveVerifiedUserSendFailurePresenter(
}
}
}
ResolveVerifiedUserSendFailureEvents.ResolveAndResend -> {
ResolveVerifiedUserSendFailureEvent.ResolveAndResend -> {
coroutineScope.launch {
resolver?.run {
runUpdatingState(resolveAction) {

View file

@ -15,5 +15,5 @@ data class ResolveVerifiedUserSendFailureState(
val verifiedUserSendFailure: VerifiedUserSendFailure,
val resolveAction: AsyncAction<Unit>,
val retryAction: AsyncAction<Unit>,
val eventSink: (ResolveVerifiedUserSendFailureEvents) -> Unit
val eventSink: (ResolveVerifiedUserSendFailureEvent) -> Unit
)

View file

@ -29,7 +29,7 @@ fun aResolveVerifiedUserSendFailureState(
verifiedUserSendFailure: VerifiedUserSendFailure = VerifiedUserSendFailure.None,
resolveAction: AsyncAction<Unit> = AsyncAction.Uninitialized,
retryAction: AsyncAction<Unit> = AsyncAction.Uninitialized,
eventSink: (ResolveVerifiedUserSendFailureEvents) -> Unit = {}
eventSink: (ResolveVerifiedUserSendFailureEvent) -> Unit = {}
) = ResolveVerifiedUserSendFailureState(
verifiedUserSendFailure = verifiedUserSendFailure,
resolveAction = resolveAction,

View file

@ -47,15 +47,15 @@ fun ResolveVerifiedUserSendFailureView(
var showSheet by remember { mutableStateOf(false) }
fun dismiss() {
state.eventSink(ResolveVerifiedUserSendFailureEvents.Dismiss)
state.eventSink(ResolveVerifiedUserSendFailureEvent.Dismiss)
}
fun onRetryClick() {
state.eventSink(ResolveVerifiedUserSendFailureEvents.Retry)
state.eventSink(ResolveVerifiedUserSendFailureEvent.Retry)
}
fun onResolveAndResendClick() {
state.eventSink(ResolveVerifiedUserSendFailureEvents.ResolveAndResend)
state.eventSink(ResolveVerifiedUserSendFailureEvent.ResolveAndResend)
}
LaunchedEffect(state.verifiedUserSendFailure) {

View file

@ -25,7 +25,7 @@ import dev.zacsweers.metro.AssistedFactory
import dev.zacsweers.metro.AssistedInject
import io.element.android.features.messages.impl.MessagesNavigator
import io.element.android.features.messages.impl.UserEventPermissions
import io.element.android.features.messages.impl.crypto.sendfailure.resolve.ResolveVerifiedUserSendFailureEvents
import io.element.android.features.messages.impl.crypto.sendfailure.resolve.ResolveVerifiedUserSendFailureEvent
import io.element.android.features.messages.impl.crypto.sendfailure.resolve.ResolveVerifiedUserSendFailureState
import io.element.android.features.messages.impl.timeline.components.MessageShieldData
import io.element.android.features.messages.impl.timeline.factories.TimelineItemsFactory
@ -218,7 +218,7 @@ class TimelinePresenter(
TimelineEvent.HideShieldDialog -> messageShieldDialogData.value = null
is TimelineEvent.ShowShieldDialog -> messageShieldDialogData.value = event.messageShieldData
is TimelineEvent.ComputeVerifiedUserSendFailure -> {
resolveVerifiedUserSendFailureState.eventSink(ResolveVerifiedUserSendFailureEvents.ComputeForMessage(event.event))
resolveVerifiedUserSendFailureState.eventSink(ResolveVerifiedUserSendFailureEvent.ComputeForMessage(event.event))
}
is TimelineEvent.NavigateToPredecessorOrSuccessorRoom -> {
// Navigate to the predecessor or successor room