From 49f74bf09ac65fd2ea09db2195e6610fb1f6b347 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 15 May 2024 09:42:58 +0200 Subject: [PATCH] Add preview for EditableAvatarView --- .../ui/components/EditableAvatarView.kt | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/EditableAvatarView.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/EditableAvatarView.kt index e5a12846f0..ced7b87e8c 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/EditableAvatarView.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/components/EditableAvatarView.kt @@ -33,11 +33,15 @@ import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip +import androidx.compose.ui.tooling.preview.PreviewParameter +import androidx.compose.ui.tooling.preview.PreviewParameterProvider import androidx.compose.ui.unit.dp import io.element.android.compound.tokens.generated.CompoundIcons import io.element.android.libraries.designsystem.components.avatar.Avatar import io.element.android.libraries.designsystem.components.avatar.AvatarData import io.element.android.libraries.designsystem.components.avatar.AvatarSize +import io.element.android.libraries.designsystem.preview.ElementPreview +import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.theme.components.Icon @Composable @@ -94,3 +98,26 @@ fun EditableAvatarView( } } } + +@PreviewsDayNight +@Composable +internal fun EditableAvatarViewPreview( + @PreviewParameter(EditableAvatarViewUriProvider::class) uri: Uri? +) = ElementPreview { + EditableAvatarView( + matrixId = "id", + displayName = "A room", + avatarUrl = uri, + avatarSize = AvatarSize.EditRoomDetails, + onAvatarClicked = {}, + ) +} + +open class EditableAvatarViewUriProvider : PreviewParameterProvider { + override val values: Sequence + get() = sequenceOf( + null, + Uri.parse("mxc://matrix.org/123456"), + Uri.parse("https://example.com/avatar.jpg"), + ) +}