|
|
@ -16,7 +16,6 @@ |
|
|
|
|
|
|
|
|
|
|
|
package io.element.android.features.messages.impl.timeline.components.event |
|
|
|
package io.element.android.features.messages.impl.timeline.components.event |
|
|
|
|
|
|
|
|
|
|
|
import androidx.compose.foundation.layout.fillMaxSize |
|
|
|
|
|
|
|
import androidx.compose.runtime.Composable |
|
|
|
import androidx.compose.runtime.Composable |
|
|
|
import androidx.compose.ui.Modifier |
|
|
|
import androidx.compose.ui.Modifier |
|
|
|
import androidx.compose.ui.layout.ContentScale |
|
|
|
import androidx.compose.ui.layout.ContentScale |
|
|
@ -28,24 +27,20 @@ import io.element.android.libraries.designsystem.components.BlurHashAsyncImage |
|
|
|
import io.element.android.libraries.designsystem.preview.ElementPreviewDark |
|
|
|
import io.element.android.libraries.designsystem.preview.ElementPreviewDark |
|
|
|
import io.element.android.libraries.designsystem.preview.ElementPreviewLight |
|
|
|
import io.element.android.libraries.designsystem.preview.ElementPreviewLight |
|
|
|
import io.element.android.libraries.matrix.ui.media.MediaRequestData |
|
|
|
import io.element.android.libraries.matrix.ui.media.MediaRequestData |
|
|
|
import kotlin.math.max |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Composable |
|
|
|
@Composable |
|
|
|
fun TimelineItemImageView( |
|
|
|
fun TimelineItemImageView( |
|
|
|
content: TimelineItemImageContent, |
|
|
|
content: TimelineItemImageContent, |
|
|
|
modifier: Modifier = Modifier, |
|
|
|
modifier: Modifier = Modifier, |
|
|
|
) { |
|
|
|
) { |
|
|
|
// TODO place this value somewhere else? |
|
|
|
|
|
|
|
val minHeight = max(100, content.height ?: 0) |
|
|
|
|
|
|
|
TimelineItemAspectRatioBox( |
|
|
|
TimelineItemAspectRatioBox( |
|
|
|
height = minHeight, |
|
|
|
height = content.height, |
|
|
|
aspectRatio = content.aspectRatio, |
|
|
|
aspectRatio = content.aspectRatio, |
|
|
|
modifier = modifier |
|
|
|
modifier = modifier |
|
|
|
) { |
|
|
|
) { |
|
|
|
BlurHashAsyncImage( |
|
|
|
BlurHashAsyncImage( |
|
|
|
model = MediaRequestData(content.preferredMediaSource, MediaRequestData.Kind.File(content.body, content.mimeType)), |
|
|
|
model = MediaRequestData(content.preferredMediaSource, MediaRequestData.Kind.File(content.body, content.mimeType)), |
|
|
|
blurHash = content.blurhash, |
|
|
|
blurHash = content.blurhash, |
|
|
|
modifier = Modifier.fillMaxSize(), |
|
|
|
|
|
|
|
contentScale = ContentScale.Fit, |
|
|
|
contentScale = ContentScale.Fit, |
|
|
|
) |
|
|
|
) |
|
|
|
} |
|
|
|
} |
|
|
|