diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineItemEventContentForGalleryViewProvider.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineItemEventContentForGalleryViewProvider.kt index 63034d56e1..ed790da8a2 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineItemEventContentForGalleryViewProvider.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/TimelineItemEventContentForGalleryViewProvider.kt @@ -8,11 +8,11 @@ package io.element.android.features.messages.impl.timeline.components import androidx.compose.ui.tooling.preview.PreviewParameterProvider +import io.element.android.features.messages.impl.timeline.components.event.aGalleryItem +import io.element.android.features.messages.impl.timeline.components.event.aTimelineItemGalleryContent import io.element.android.features.messages.impl.timeline.model.event.GalleryItem import io.element.android.features.messages.impl.timeline.model.event.TimelineItemEventContent -import io.element.android.features.messages.impl.timeline.model.event.aGalleryItem import io.element.android.features.messages.impl.timeline.model.event.aTimelineItemAttachmentsContent -import io.element.android.features.messages.impl.timeline.model.event.aTimelineItemGalleryContent import io.element.android.features.messages.impl.timeline.model.event.anAttachmentItem import kotlin.time.Duration diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemGalleryContentProvider.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemGalleryContentProvider.kt index 2a0c10f518..fe7de6a7f6 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemGalleryContentProvider.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/components/event/TimelineItemGalleryContentProvider.kt @@ -10,8 +10,8 @@ package io.element.android.features.messages.impl.timeline.components.event import androidx.compose.ui.tooling.preview.PreviewParameterProvider import io.element.android.features.messages.impl.timeline.model.event.GalleryItem import io.element.android.features.messages.impl.timeline.model.event.TimelineItemGalleryContent -import io.element.android.features.messages.impl.timeline.model.event.aTimelineItemGalleryContent import io.element.android.libraries.matrix.api.media.MediaSource +import kotlinx.collections.immutable.toImmutableList import kotlin.time.Duration import kotlin.time.Duration.Companion.seconds @@ -93,15 +93,38 @@ class TimelineItemGalleryContentProvider : PreviewParameterProvider = listOf( + aGalleryItem(), + aGalleryItem(), + aGalleryItem(), + aGalleryItem(), + ), +) = TimelineItemGalleryContent( + body = body, + caption = caption, + formattedCaption = null, + isEdited = false, + items = items.toImmutableList(), +) + +fun aGalleryItem( + filename: String = "photo.jpg", type: GalleryItem.Type = GalleryItem.Type.Image, width: Int = 400, height: Int = 300, duration: Duration = Duration.ZERO, ): GalleryItem { return GalleryItem( - filename = "photo.jpg", - mimeType = "image/jpeg", + filename = filename, + mimeType = when (type) { + GalleryItem.Type.Video -> "video/mp4" + GalleryItem.Type.Audio -> "audio/mpeg" + GalleryItem.Type.File -> "application/pdf" + GalleryItem.Type.Image -> "image/jpeg" + }, mediaSource = MediaSource(url = "", json = ""), thumbnailSource = null, width = width, diff --git a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContentProvider.kt b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContentProvider.kt index 454a1d1757..76502b2975 100644 --- a/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContentProvider.kt +++ b/features/messages/impl/src/main/kotlin/io/element/android/features/messages/impl/timeline/model/event/TimelineItemEventContentProvider.kt @@ -17,7 +17,6 @@ import io.element.android.libraries.matrix.api.media.MediaSource import io.element.android.libraries.matrix.api.timeline.item.event.UnableToDecryptContent import kotlinx.collections.immutable.toImmutableList import org.jsoup.nodes.Document -import kotlin.time.Duration class TimelineItemEventContentProvider : PreviewParameterProvider { override val values = sequenceOf( @@ -115,48 +114,6 @@ fun aTimelineItemStateEventContent( body = body, ) -fun aTimelineItemGalleryContent( - body: String = "Gallery", - caption: String? = null, - items: List = listOf( - aGalleryItem(), - aGalleryItem(), - aGalleryItem(), - aGalleryItem(), - ), -) = TimelineItemGalleryContent( - body = body, - caption = caption, - formattedCaption = null, - isEdited = false, - items = items.toImmutableList(), -) - -fun aGalleryItem( - filename: String = "photo.jpg", - width: Int = 400, - height: Int = 300, - type: GalleryItem.Type = GalleryItem.Type.Image, - duration: Duration = Duration.ZERO, -) = GalleryItem( - filename = filename, - mimeType = when (type) { - GalleryItem.Type.Video -> "video/mp4" - GalleryItem.Type.Audio -> "audio/mpeg" - GalleryItem.Type.File -> "application/pdf" - GalleryItem.Type.Image -> "image/jpeg" - }, - mediaSource = MediaSource(url = "", json = ""), - type = type, - thumbnailSource = null, - width = width, - height = height, - thumbnailWidth = width, - thumbnailHeight = height, - blurhash = null, - duration = duration, -) - fun aTimelineItemAttachmentsContent( body: String = "Attachments", caption: String? = null,