Improve preview of SelectedRoom and SelectedUser.

This commit is contained in:
Benoit Marty 2025-08-19 09:54:22 +02:00
parent 2a5c3990e6
commit 3c3cef0614
2 changed files with 23 additions and 14 deletions

View file

@ -15,7 +15,24 @@ open class MatrixUserProvider : PreviewParameterProvider<MatrixUser> {
override val values: Sequence<MatrixUser>
get() = sequenceOf(
aMatrixUser(),
aMatrixUser().copy(displayName = null),
aMatrixUser(displayName = null),
)
}
open class MatrixUserWithNullProvider : PreviewParameterProvider<MatrixUser?> {
override val values: Sequence<MatrixUser?>
get() = sequenceOf(
aMatrixUser(),
aMatrixUser(displayName = null),
null,
)
}
open class MatrixUserWithAvatarProvider : PreviewParameterProvider<MatrixUser?> {
override val values: Sequence<MatrixUser?>
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<MatrixUser?> {
override val values: Sequence<MatrixUser?>
get() = sequenceOf(
aMatrixUser(),
aMatrixUser().copy(displayName = null),
null,
)
}

View file

@ -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 = {},
)