Media: some code clean-up
This commit is contained in:
parent
1c48f0afac
commit
c31901bd67
7 changed files with 18 additions and 16 deletions
|
|
@ -22,7 +22,7 @@ import io.element.android.libraries.matrix.api.media.MediaFile
|
||||||
interface LocalMediaFactory {
|
interface LocalMediaFactory {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method will create a [LocalMedia] with the given [MediaFile] and [mimeType]
|
* This method will create a [LocalMedia] with the given [MediaFile] and [mimeType].
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
fun createFromMediaFile(mediaFile: MediaFile, mimeType: String?): LocalMedia
|
fun createFromMediaFile(mediaFile: MediaFile, mimeType: String?): LocalMedia
|
||||||
|
|
|
||||||
|
|
@ -74,17 +74,18 @@ private fun MediaImageView(
|
||||||
modifier = modifier.fillMaxSize(),
|
modifier = modifier.fillMaxSize(),
|
||||||
contentDescription = null,
|
contentDescription = null,
|
||||||
)
|
)
|
||||||
|
} else {
|
||||||
|
val zoomableState = rememberZoomableState(
|
||||||
|
zoomSpec = ZoomSpec(maxZoomFactor = 3f)
|
||||||
|
)
|
||||||
|
ZoomableAsyncImage(
|
||||||
|
modifier = modifier.fillMaxSize(),
|
||||||
|
state = rememberZoomableImageState(zoomableState),
|
||||||
|
model = localMedia.model,
|
||||||
|
contentDescription = "Image",
|
||||||
|
contentScale = ContentScale.Fit,
|
||||||
|
)
|
||||||
}
|
}
|
||||||
val zoomableState = rememberZoomableState(
|
|
||||||
zoomSpec = ZoomSpec(maxZoomFactor = 3f)
|
|
||||||
)
|
|
||||||
ZoomableAsyncImage(
|
|
||||||
modifier = modifier.fillMaxSize(),
|
|
||||||
state = rememberZoomableImageState(zoomableState),
|
|
||||||
model = localMedia.model,
|
|
||||||
contentDescription = "Image",
|
|
||||||
contentScale = ContentScale.Fit,
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@UnstableApi
|
@UnstableApi
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@ class AttachmentsPreviewPresenterTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun anAttachmentsPreviewPresenter(
|
private fun anAttachmentsPreviewPresenter(
|
||||||
localMedia: LocalMedia = aLocalMedia(MimeTypes.IMAGE_JPEG),
|
localMedia: LocalMedia = aLocalMedia(mimeType = MimeTypes.IMAGE_JPEG),
|
||||||
room: MatrixRoom = FakeMatrixRoom()
|
room: MatrixRoom = FakeMatrixRoom()
|
||||||
): AttachmentsPreviewPresenter {
|
): AttachmentsPreviewPresenter {
|
||||||
return AttachmentsPreviewPresenter(
|
return AttachmentsPreviewPresenter(
|
||||||
|
|
|
||||||
|
|
@ -17,13 +17,14 @@
|
||||||
package io.element.android.features.messages.fixtures
|
package io.element.android.features.messages.fixtures
|
||||||
|
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
|
import androidx.media3.common.MimeTypes
|
||||||
import io.element.android.features.messages.impl.attachments.Attachment
|
import io.element.android.features.messages.impl.attachments.Attachment
|
||||||
import io.element.android.features.messages.impl.media.local.LocalMedia
|
import io.element.android.features.messages.impl.media.local.LocalMedia
|
||||||
import io.mockk.mockk
|
import io.mockk.mockk
|
||||||
|
|
||||||
fun aLocalMedia(
|
fun aLocalMedia(
|
||||||
mimeType: String,
|
|
||||||
uri: Uri = mockk("localMediaUri"),
|
uri: Uri = mockk("localMediaUri"),
|
||||||
|
mimeType: String = MimeTypes.IMAGE_JPEG,
|
||||||
name: String = "a media",
|
name: String = "a media",
|
||||||
size: Long = 1000,
|
size: Long = 1000,
|
||||||
) = LocalMedia(
|
) = LocalMedia(
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ import io.element.android.features.messages.impl.media.local.LocalMediaFactory
|
||||||
import io.element.android.libraries.core.mimetype.MimeTypes
|
import io.element.android.libraries.core.mimetype.MimeTypes
|
||||||
import io.element.android.libraries.matrix.api.media.MediaFile
|
import io.element.android.libraries.matrix.api.media.MediaFile
|
||||||
|
|
||||||
class FakeLocalMediaFactory() : LocalMediaFactory {
|
class FakeLocalMediaFactory : LocalMediaFactory {
|
||||||
|
|
||||||
var fallbackMimeType: String = MimeTypes.OctetStream
|
var fallbackMimeType: String = MimeTypes.OctetStream
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -22,11 +22,11 @@ import kotlinx.parcelize.Parcelize
|
||||||
@Parcelize
|
@Parcelize
|
||||||
data class MediaSource(
|
data class MediaSource(
|
||||||
/**
|
/**
|
||||||
* Url of the media
|
* Url of the media.
|
||||||
*/
|
*/
|
||||||
val url: String,
|
val url: String,
|
||||||
/**
|
/**
|
||||||
* This is used to hold data for encrypted media
|
* This is used to hold data for encrypted media.
|
||||||
*/
|
*/
|
||||||
val json: String? = null,
|
val json: String? = null,
|
||||||
) : Parcelable
|
) : Parcelable
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue