review: Make call intent not optional in content

This commit is contained in:
Valere 2026-04-21 11:03:48 +02:00
parent 6f4dab91a6
commit 0f6b706c7a
4 changed files with 7 additions and 10 deletions

View file

@ -108,7 +108,6 @@ internal fun TimelineItemCallNotifyView(
internal fun TimelineItemCallNotifyViewPreview() = ElementPreview { internal fun TimelineItemCallNotifyViewPreview() = ElementPreview {
Column(modifier = Modifier.padding(16.dp), verticalArrangement = Arrangement.spacedBy(16.dp)) { Column(modifier = Modifier.padding(16.dp), verticalArrangement = Arrangement.spacedBy(16.dp)) {
listOf( listOf(
TimelineItemRtcNotificationContent(null),
TimelineItemRtcNotificationContent(CallIntent.AUDIO), TimelineItemRtcNotificationContent(CallIntent.AUDIO),
TimelineItemRtcNotificationContent(CallIntent.VIDEO), TimelineItemRtcNotificationContent(CallIntent.VIDEO),
).forEach { content -> ).forEach { content ->

View file

@ -10,6 +10,6 @@ package io.element.android.features.messages.impl.timeline.model.event
import io.element.android.libraries.matrix.api.notification.CallIntent import io.element.android.libraries.matrix.api.notification.CallIntent
class TimelineItemRtcNotificationContent(val callIntent: CallIntent?) : TimelineItemEventContent { class TimelineItemRtcNotificationContent(val callIntent: CallIntent) : TimelineItemEventContent {
override val type: String = "org.matrix.msc4075.rtc.notification" override val type: String = "org.matrix.msc4075.rtc.notification"
} }

View file

@ -117,7 +117,7 @@ data class LiveLocationContent(
data object LegacyCallInviteContent : EventContent data object LegacyCallInviteContent : EventContent
data class CallNotifyContent( data class CallNotifyContent(
val callIntent: CallIntent? val callIntent: CallIntent
) : EventContent ) : EventContent
data object UnknownContent : EventContent data object UnknownContent : EventContent

View file

@ -139,13 +139,11 @@ class TimelineEventContentMapper(
} }
is TimelineItemContent.CallInvite -> LegacyCallInviteContent is TimelineItemContent.CallInvite -> LegacyCallInviteContent
is TimelineItemContent.RtcNotification -> CallNotifyContent( is TimelineItemContent.RtcNotification -> CallNotifyContent(
it.callIntent?.let { intentString -> callIntent = if (it.callIntent == "audio") {
if (intentString == "audio") {
CallIntent.AUDIO CallIntent.AUDIO
} else { } else {
CallIntent.VIDEO CallIntent.VIDEO
} }
}
) )
} }
} }