[UserStatus] Add missing previews.

This commit is contained in:
Benoit Marty
2026-08-24 15:19:18 +02:00
committed by Benoit Marty
parent 951539e698
commit 0a0eebd804
2 changed files with 31 additions and 9 deletions
@@ -32,6 +32,7 @@ import io.element.android.libraries.matrix.api.timeline.item.event.TextMessageTy
import io.element.android.libraries.matrix.api.timeline.item.event.UnableToDecryptContent import io.element.android.libraries.matrix.api.timeline.item.event.UnableToDecryptContent
import io.element.android.libraries.matrix.api.timeline.item.event.VideoMessageType import io.element.android.libraries.matrix.api.timeline.item.event.VideoMessageType
import io.element.android.libraries.matrix.api.timeline.item.event.VoiceMessageType import io.element.android.libraries.matrix.api.timeline.item.event.VoiceMessageType
import io.element.android.libraries.matrix.api.user.DisplayedStatus
import kotlinx.collections.immutable.persistentListOf import kotlinx.collections.immutable.persistentListOf
import kotlinx.collections.immutable.persistentMapOf import kotlinx.collections.immutable.persistentMapOf
@@ -163,9 +164,10 @@ fun aProfileDetailsReady(
displayName: String? = USER_NAME_SENDER, displayName: String? = USER_NAME_SENDER,
displayNameAmbiguous: Boolean = false, displayNameAmbiguous: Boolean = false,
avatarUrl: String? = null, avatarUrl: String? = null,
displayedStatus: DisplayedStatus? = null
) = ProfileDetails.Ready( ) = ProfileDetails.Ready(
displayName = displayName, displayName = displayName,
displayNameAmbiguous = displayNameAmbiguous, displayNameAmbiguous = displayNameAmbiguous,
avatarUrl = avatarUrl, avatarUrl = avatarUrl,
displayedStatus = null, displayedStatus = displayedStatus,
) )
@@ -13,6 +13,8 @@ import androidx.compose.ui.tooling.preview.PreviewParameterProvider
import io.element.android.libraries.matrix.api.core.UserId import io.element.android.libraries.matrix.api.core.UserId
import io.element.android.libraries.matrix.api.timeline.item.event.ProfileDetails import io.element.android.libraries.matrix.api.timeline.item.event.ProfileDetails
import io.element.android.libraries.matrix.api.user.DisplayedStatus import io.element.android.libraries.matrix.api.user.DisplayedStatus
import io.element.android.libraries.matrix.api.user.UserStatus
import io.element.android.libraries.matrix.ui.messages.reply.aProfileDetailsReady
data class SenderNameData( data class SenderNameData(
val userId: UserId, val userId: UserId,
@@ -36,26 +38,44 @@ open class SenderNameDataPreviewParam : PreviewParameterProvider<SenderNameData>
senderNameMode = senderNameMode, senderNameMode = senderNameMode,
displayNameAmbiguous = true, displayNameAmbiguous = true,
), ),
SenderNameData( aSenderNameData(
senderNameMode = senderNameMode, senderNameMode = senderNameMode,
userId = UserId("@alice:${senderNameMode.javaClass.simpleName.lowercase()}"),
profileDetails = ProfileDetails.Unavailable, profileDetails = ProfileDetails.Unavailable,
), ),
aSenderNameData(
senderNameMode = senderNameMode,
displayName = null,
),
aSenderNameData(
senderNameMode = senderNameMode,
displayedStatus = DisplayedStatus.UserSet(
status = UserStatus(
emoji = "😀",
text = "Should not be rendered",
),
),
),
aSenderNameData(
senderNameMode = senderNameMode,
displayedStatus = DisplayedStatus.InCall(0L),
)
) )
} }
} }
private fun aSenderNameData( private fun aSenderNameData(
senderNameMode: SenderNameMode, senderNameMode: SenderNameMode,
userId: UserId = UserId("@alice:${senderNameMode.javaClass.simpleName.lowercase()}"),
displayName: String? = "Alice ${senderNameMode.javaClass.simpleName}",
displayNameAmbiguous: Boolean = false, displayNameAmbiguous: Boolean = false,
displayedStatus: DisplayedStatus? = null, displayedStatus: DisplayedStatus? = null,
) = SenderNameData( profileDetails: ProfileDetails = aProfileDetailsReady(
userId = UserId("@alice:${senderNameMode.javaClass.simpleName.lowercase()}"), displayName = displayName,
profileDetails = ProfileDetails.Ready(
displayName = "Alice ${senderNameMode.javaClass.simpleName}",
displayNameAmbiguous = displayNameAmbiguous, displayNameAmbiguous = displayNameAmbiguous,
avatarUrl = null,
displayedStatus = displayedStatus, displayedStatus = displayedStatus,
), )
) = SenderNameData(
userId = userId,
profileDetails = profileDetails,
senderNameMode = senderNameMode, senderNameMode = senderNameMode,
) )