From 3c3cef06140ecabf83e72e4617183b8421d9f77a Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 19 Aug 2025 09:54:22 +0200 Subject: [PATCH] Improve preview of SelectedRoom and SelectedUser. --- .../ui/components/MatrixUserProvider.kt | 28 ++++++++++++------- .../matrix/ui/components/SelectedUser.kt | 9 +++--- 2 files changed, 23 insertions(+), 14 deletions(-) diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/MatrixUserProvider.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/MatrixUserProvider.kt index d10f428f1c..ce0d8b2eec 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/MatrixUserProvider.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/MatrixUserProvider.kt @@ -15,7 +15,24 @@ open class MatrixUserProvider : PreviewParameterProvider { override val values: Sequence get() = sequenceOf( aMatrixUser(), - aMatrixUser().copy(displayName = null), + aMatrixUser(displayName = null), + ) +} + +open class MatrixUserWithNullProvider : PreviewParameterProvider { + override val values: Sequence + get() = sequenceOf( + aMatrixUser(), + aMatrixUser(displayName = null), + null, + ) +} + +open class MatrixUserWithAvatarProvider : PreviewParameterProvider { + override val values: Sequence + get() = sequenceOf( + aMatrixUser(displayName = "John Doe"), + aMatrixUser(displayName = "John Doe", avatarUrl = "anUrl"), ) } @@ -41,12 +58,3 @@ fun aMatrixUserList() = listOf( aMatrixUser("@victor:server.org", "Victor"), aMatrixUser("@walter:server.org", "Walter"), ) - -open class MatrixUserWithNullProvider : PreviewParameterProvider { - override val values: Sequence - get() = sequenceOf( - aMatrixUser(), - aMatrixUser().copy(displayName = null), - null, - ) -} diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SelectedUser.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SelectedUser.kt index f903a1696f..1238bd04a8 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SelectedUser.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/SelectedUser.kt @@ -37,6 +37,7 @@ import androidx.compose.ui.semantics.contentDescription import androidx.compose.ui.semantics.onClick import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextOverflow +import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.LayoutDirection import androidx.compose.ui.unit.dp import io.element.android.compound.theme.ElementTheme @@ -151,9 +152,9 @@ fun SelectedUser( @PreviewsDayNight @Composable -internal fun SelectedUserPreview() = ElementPreview { +internal fun SelectedUserPreview(@PreviewParameter(MatrixUserWithAvatarProvider::class) user: MatrixUser) = ElementPreview { SelectedUser( - aMatrixUser(displayName = "John Doe"), + matrixUser = user, canRemove = true, onUserRemove = {}, ) @@ -166,7 +167,7 @@ internal fun SelectedUserRtlPreview() = CompositionLocalProvider( ) { ElementPreview { SelectedUser( - aMatrixUser(displayName = "John Doe"), + matrixUser = aMatrixUser(displayName = "John Doe"), canRemove = true, onUserRemove = {}, ) @@ -177,7 +178,7 @@ internal fun SelectedUserRtlPreview() = CompositionLocalProvider( @Composable internal fun SelectedUserCannotRemovePreview() = ElementPreview { SelectedUser( - aMatrixUser(), + matrixUser = aMatrixUser(), canRemove = false, onUserRemove = {}, )