Rename imageItems to imageAndVideoItems.

This commit is contained in:
Benoit Marty 2024-12-10 08:57:36 +01:00
parent f0fb6698e4
commit d06e6192e6
5 changed files with 19 additions and 19 deletions

View file

@ -77,7 +77,7 @@ class MediaGalleryPresenter @AssistedInject constructor(
var mediaItems by remember { var mediaItems by remember {
mutableStateOf<AsyncData<ImmutableList<MediaItem>>>(AsyncData.Uninitialized) mutableStateOf<AsyncData<ImmutableList<MediaItem>>>(AsyncData.Uninitialized)
} }
val imageItems by remember { val imageAndVideoItems by remember {
derivedStateOf { derivedStateOf {
mediaItemsPostProcessor.process( mediaItemsPostProcessor.process(
mediaItems = mediaItems, mediaItems = mediaItems,
@ -157,7 +157,7 @@ class MediaGalleryPresenter @AssistedInject constructor(
return MediaGalleryState( return MediaGalleryState(
roomName = roomInfo?.name ?: room.displayName, roomName = roomInfo?.name ?: room.displayName,
mode = mode, mode = mode,
imageItems = imageItems, imageAndVideoItems = imageAndVideoItems,
fileItems = fileItems, fileItems = fileItems,
mediaBottomSheetState = mediaBottomSheetState, mediaBottomSheetState = mediaBottomSheetState,
snackbarMessage = snackbarMessage, snackbarMessage = snackbarMessage,

View file

@ -16,7 +16,7 @@ import kotlinx.collections.immutable.ImmutableList
data class MediaGalleryState( data class MediaGalleryState(
val roomName: String, val roomName: String,
val mode: MediaGalleryMode, val mode: MediaGalleryMode,
val imageItems: AsyncData<ImmutableList<MediaItem>>, val imageAndVideoItems: AsyncData<ImmutableList<MediaItem>>,
val fileItems: AsyncData<ImmutableList<MediaItem>>, val fileItems: AsyncData<ImmutableList<MediaItem>>,
val mediaBottomSheetState: MediaBottomSheetState, val mediaBottomSheetState: MediaBottomSheetState,
val snackbarMessage: SnackbarMessage?, val snackbarMessage: SnackbarMessage?,

View file

@ -23,10 +23,10 @@ open class MediaGalleryStateProvider : PreviewParameterProvider<MediaGalleryStat
override val values: Sequence<MediaGalleryState> override val values: Sequence<MediaGalleryState>
get() = sequenceOf( get() = sequenceOf(
aMediaGalleryState(), aMediaGalleryState(),
aMediaGalleryState(imageItems = AsyncData.Loading()), aMediaGalleryState(imageAndVideoItems = AsyncData.Loading()),
aMediaGalleryState(imageItems = AsyncData.Success(emptyList<MediaItem.Image>().toPersistentList())), aMediaGalleryState(imageAndVideoItems = AsyncData.Success(emptyList<MediaItem.Image>().toPersistentList())),
aMediaGalleryState( aMediaGalleryState(
imageItems = AsyncData.Success( imageAndVideoItems = AsyncData.Success(
listOf( listOf(
aDate(id = UniqueId("0")), aDate(id = UniqueId("0")),
anImage(id = UniqueId("1")), anImage(id = UniqueId("1")),
@ -71,12 +71,12 @@ open class MediaGalleryStateProvider : PreviewParameterProvider<MediaGalleryStat
private fun aMediaGalleryState( private fun aMediaGalleryState(
roomName: String = "Room name", roomName: String = "Room name",
mode: MediaGalleryMode = MediaGalleryMode.Images, mode: MediaGalleryMode = MediaGalleryMode.Images,
imageItems: AsyncData<ImmutableList<MediaItem>> = AsyncData.Uninitialized, imageAndVideoItems: AsyncData<ImmutableList<MediaItem>> = AsyncData.Uninitialized,
fileItems: AsyncData<ImmutableList<MediaItem>> = AsyncData.Uninitialized, fileItems: AsyncData<ImmutableList<MediaItem>> = AsyncData.Uninitialized,
) = MediaGalleryState( ) = MediaGalleryState(
roomName = roomName, roomName = roomName,
mode = mode, mode = mode,
imageItems = imageItems, imageAndVideoItems = imageAndVideoItems,
fileItems = fileItems, fileItems = fileItems,
mediaBottomSheetState = MediaBottomSheetState.Hidden, mediaBottomSheetState = MediaBottomSheetState.Hidden,
snackbarMessage = null, snackbarMessage = null,

View file

@ -129,7 +129,7 @@ fun MediaGalleryView(
val mode = MediaGalleryMode.entries[page] val mode = MediaGalleryMode.entries[page]
when (mode) { when (mode) {
MediaGalleryMode.Images -> MediaGalleryImages( MediaGalleryMode.Images -> MediaGalleryImages(
images = state.imageItems, imagesAndVideos = state.imageAndVideoItems,
eventSink = state.eventSink, eventSink = state.eventSink,
onItemClick = onItemClick, onItemClick = onItemClick,
) )
@ -180,21 +180,21 @@ fun MediaGalleryView(
@Composable @Composable
private fun MediaGalleryImages( private fun MediaGalleryImages(
images: AsyncData<ImmutableList<MediaItem>>, imagesAndVideos: AsyncData<ImmutableList<MediaItem>>,
eventSink: (MediaGalleryEvents) -> Unit, eventSink: (MediaGalleryEvents) -> Unit,
onItemClick: (MediaItem.Event) -> Unit, onItemClick: (MediaItem.Event) -> Unit,
) { ) {
when (images) { when (imagesAndVideos) {
AsyncData.Uninitialized, AsyncData.Uninitialized,
is AsyncData.Loading -> { is AsyncData.Loading -> {
LoadingContent(MediaGalleryMode.Images) LoadingContent(MediaGalleryMode.Images)
} }
is AsyncData.Success -> { is AsyncData.Success -> {
if (images.data.isEmpty()) { if (imagesAndVideos.data.isEmpty()) {
EmptyContent() EmptyContent()
} else { } else {
MediaGalleryImageGrid( MediaGalleryImageGrid(
images = images.data, imagesAndVideos = imagesAndVideos.data,
eventSink = eventSink, eventSink = eventSink,
onItemClick = onItemClick, onItemClick = onItemClick,
) )
@ -202,7 +202,7 @@ private fun MediaGalleryImages(
} }
is AsyncData.Failure -> { is AsyncData.Failure -> {
ErrorContent( ErrorContent(
error = images.error, error = imagesAndVideos.error,
) )
} }
} }
@ -275,7 +275,7 @@ private fun MediaGalleryFilesList(
@Composable @Composable
private fun MediaGalleryImageGrid( private fun MediaGalleryImageGrid(
images: ImmutableList<MediaItem>, imagesAndVideos: ImmutableList<MediaItem>,
eventSink: (MediaGalleryEvents) -> Unit, eventSink: (MediaGalleryEvents) -> Unit,
onItemClick: (MediaItem.Event) -> Unit, onItemClick: (MediaItem.Event) -> Unit,
) { ) {
@ -296,7 +296,7 @@ private fun MediaGalleryImageGrid(
verticalArrangement = Arrangement.spacedBy(4.dp), verticalArrangement = Arrangement.spacedBy(4.dp),
) { ) {
items( items(
images, imagesAndVideos,
span = { item -> span = { item ->
when (item) { when (item) {
is MediaItem.LoadingIndicator, is MediaItem.LoadingIndicator,
@ -318,7 +318,7 @@ private fun MediaGalleryImageGrid(
} }
is MediaItem.Image -> { is MediaItem.Image -> {
ImageItemView( ImageItemView(
item, image = item,
onClick = { onItemClick(item) }, onClick = { onItemClick(item) },
onLongClick = { onLongClick = {
eventSink(MediaGalleryEvents.OpenInfo(item)) eventSink(MediaGalleryEvents.OpenInfo(item))
@ -327,7 +327,7 @@ private fun MediaGalleryImageGrid(
} }
is MediaItem.Video -> { is MediaItem.Video -> {
VideoItemView( VideoItemView(
item, video = item,
onClick = { onItemClick(item) }, onClick = { onItemClick(item) },
onLongClick = { onLongClick = {
eventSink(MediaGalleryEvents.OpenInfo(item)) eventSink(MediaGalleryEvents.OpenInfo(item))

View file

@ -61,7 +61,7 @@ class MediaGalleryPresenterTest {
assertThat(initialState.mode).isEqualTo(MediaGalleryMode.Images) assertThat(initialState.mode).isEqualTo(MediaGalleryMode.Images)
assertThat(initialState.mediaBottomSheetState).isEqualTo(MediaBottomSheetState.Hidden) assertThat(initialState.mediaBottomSheetState).isEqualTo(MediaBottomSheetState.Hidden)
assertThat(initialState.roomName).isEqualTo(A_ROOM_NAME) assertThat(initialState.roomName).isEqualTo(A_ROOM_NAME)
assertThat(initialState.imageItems.dataOrNull()).isEmpty() assertThat(initialState.imageAndVideoItems.dataOrNull()).isEmpty()
assertThat(initialState.fileItems.dataOrNull()).isEmpty() assertThat(initialState.fileItems.dataOrNull()).isEmpty()
assertThat(initialState.snackbarMessage).isNull() assertThat(initialState.snackbarMessage).isNull()
} }