From ab76bf676b9b27aff19051c861388fa56c7a8386 Mon Sep 17 00:00:00 2001 From: Gian <47775302+gpunto@users.noreply.github.com> Date: Wed, 11 Mar 2026 10:03:31 +0100 Subject: [PATCH 1/2] Filter out non-media attachments in media gallery --- .../ui/attachments/preview/MediaGalleryPreviewScreen.kt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewScreen.kt b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewScreen.kt index 2fc2c9baf29..ed4f8995430 100644 --- a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewScreen.kt +++ b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewScreen.kt @@ -341,11 +341,13 @@ public fun MediaGalleryPreviewScreen( ) }, ) { - // Filters out any link attachments. Pass this value along to all children + // Filters out non-media and link attachments. Pass this value along to all children // Composable-s that read message attachments to prevent inconsistent state. val filteredAttachments by remember(message) { derivedStateOf { - message.attachments.filter { attachment -> !attachment.hasLink() } + message.attachments.filter { attachment -> + !attachment.hasLink() && (attachment.isImage() || attachment.isVideo()) + } } } val startingPosition = if (initialPage !in filteredAttachments.indices) 0 else initialPage From a0fd8293267508c60043f6cb051c390b313894b5 Mon Sep 17 00:00:00 2001 From: Gian <47775302+gpunto@users.noreply.github.com> Date: Thu, 12 Mar 2026 17:14:14 +0100 Subject: [PATCH 2/2] Update design of media gallery --- .../api/stream-chat-android-compose.api | 12 +- .../content/AudioRecordAttachmentContent.kt | 35 +- .../preview/MediaGalleryPreviewOptionsMenu.kt | 81 ++-- .../preview/MediaGalleryPreviewScreen.kt | 263 ++++++------- .../preview/internal/MediaGalleryPage.kt | 54 ++- .../internal/MediaGalleryPlayerState.kt | 134 +++++++ .../internal/StreamMediaPlayerContent.kt | 11 +- .../preview/internal/VideoPlaybackControls.kt | 365 ++++++++++++++++++ .../ChannelMediaAttachmentsPreviewScreen.kt | 13 +- .../ui/components/button/SpeedButton.kt | 67 ++++ .../MediaGalleryPreviewActivityTest.kt | 22 +- ...ia_gallery_options_menu_for_other_user.png | Bin 17560 -> 3657 bytes ...edia_gallery_options_menu_for_own_user.png | Bin 20799 -> 3657 bytes ...enTest_media_gallery_header_connecting.png | Bin 14607 -> 14428 bytes ...edia_gallery_header_message_without_id.png | Bin 10929 -> 10766 bytes ...creenTest_media_gallery_header_offline.png | Bin 12780 -> 12597 bytes ...ScreenTest_media_gallery_header_online.png | Bin 10932 -> 10756 bytes ...eenTest_media_gallery_screen_connected.png | Bin 21586 -> 21556 bytes ...creenTest_media_gallery_screen_offline.png | Bin 22692 -> 22647 bytes ...llery_screen_with_gallery_bottom_sheet.png | Bin 13624 -> 13604 bytes ...media_gallery_screen_with_options_menu.png | Bin 18560 -> 21556 bytes ...ry_screen_with_share_large_file_prompt.png | Bin 35735 -> 35718 bytes 22 files changed, 790 insertions(+), 267 deletions(-) create mode 100644 stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/MediaGalleryPlayerState.kt create mode 100644 stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/VideoPlaybackControls.kt create mode 100644 stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/components/button/SpeedButton.kt diff --git a/stream-chat-android-compose/api/stream-chat-android-compose.api b/stream-chat-android-compose/api/stream-chat-android-compose.api index 4558c82793f..a51ca5cadf2 100644 --- a/stream-chat-android-compose/api/stream-chat-android-compose.api +++ b/stream-chat-android-compose/api/stream-chat-android-compose.api @@ -760,7 +760,7 @@ public final class io/getstream/chat/android/compose/ui/attachments/factory/Unsu public final class io/getstream/chat/android/compose/ui/attachments/preview/ComposableSingletons$MediaGalleryPreviewScreenKt { public static final field INSTANCE Lio/getstream/chat/android/compose/ui/attachments/preview/ComposableSingletons$MediaGalleryPreviewScreenKt; - public static field lambda-1 Lkotlin/jvm/functions/Function6; + public static field lambda-1 Lkotlin/jvm/functions/Function7; public static field lambda-10 Lkotlin/jvm/functions/Function2; public static field lambda-11 Lkotlin/jvm/functions/Function2; public static field lambda-12 Lkotlin/jvm/functions/Function2; @@ -771,7 +771,7 @@ public final class io/getstream/chat/android/compose/ui/attachments/preview/Comp public static field lambda-17 Lkotlin/jvm/functions/Function2; public static field lambda-18 Lkotlin/jvm/functions/Function2; public static field lambda-19 Lkotlin/jvm/functions/Function2; - public static field lambda-2 Lkotlin/jvm/functions/Function6; + public static field lambda-2 Lkotlin/jvm/functions/Function7; public static field lambda-20 Lkotlin/jvm/functions/Function2; public static field lambda-21 Lkotlin/jvm/functions/Function2; public static field lambda-22 Lkotlin/jvm/functions/Function2; @@ -788,7 +788,7 @@ public final class io/getstream/chat/android/compose/ui/attachments/preview/Comp public static field lambda-8 Lkotlin/jvm/functions/Function2; public static field lambda-9 Lkotlin/jvm/functions/Function2; public fun ()V - public final fun getLambda-1$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function6; + public final fun getLambda-1$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function7; public final fun getLambda-10$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function2; public final fun getLambda-11$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function2; public final fun getLambda-12$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function2; @@ -799,7 +799,7 @@ public final class io/getstream/chat/android/compose/ui/attachments/preview/Comp public final fun getLambda-17$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function2; public final fun getLambda-18$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function2; public final fun getLambda-19$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function2; - public final fun getLambda-2$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function6; + public final fun getLambda-2$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function7; public final fun getLambda-20$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function2; public final fun getLambda-21$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function2; public final fun getLambda-22$stream_chat_android_compose_release ()Lkotlin/jvm/functions/Function2; @@ -861,8 +861,8 @@ public final class io/getstream/chat/android/compose/ui/attachments/preview/Medi } public final class io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewScreenKt { - public static final fun MediaGalleryPreviewScreen (Lio/getstream/chat/android/compose/viewmodel/mediapreview/MediaGalleryPreviewViewModel;ILkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Landroidx/compose/ui/Modifier;Lio/getstream/chat/android/compose/ui/theme/MediaGalleryConfig;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function4;Lkotlin/jvm/functions/Function6;Lkotlin/jvm/functions/Function4;Lkotlin/jvm/functions/Function4;Landroidx/compose/runtime/Composer;III)V - public static final fun MediaGalleryPreviewScreen (Lio/getstream/chat/android/models/Message;Lio/getstream/chat/android/models/ConnectionState;Lio/getstream/chat/android/models/User;ILio/getstream/chat/android/models/Attachment;ZZZLkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function1;Landroidx/compose/ui/Modifier;Lio/getstream/chat/android/compose/ui/theme/MediaGalleryConfig;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function4;Lkotlin/jvm/functions/Function6;Lkotlin/jvm/functions/Function4;Lkotlin/jvm/functions/Function4;Landroidx/compose/runtime/Composer;IIII)V + public static final fun MediaGalleryPreviewScreen (Lio/getstream/chat/android/compose/viewmodel/mediapreview/MediaGalleryPreviewViewModel;ILkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Landroidx/compose/ui/Modifier;Lio/getstream/chat/android/compose/ui/theme/MediaGalleryConfig;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function4;Lkotlin/jvm/functions/Function7;Lkotlin/jvm/functions/Function5;Lkotlin/jvm/functions/Function4;Landroidx/compose/runtime/Composer;III)V + public static final fun MediaGalleryPreviewScreen (Lio/getstream/chat/android/models/Message;Lio/getstream/chat/android/models/ConnectionState;Lio/getstream/chat/android/models/User;ILio/getstream/chat/android/models/Attachment;ZZZLkotlin/jvm/functions/Function2;Lkotlin/jvm/functions/Function1;Landroidx/compose/ui/Modifier;Lio/getstream/chat/android/compose/ui/theme/MediaGalleryConfig;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function4;Lkotlin/jvm/functions/Function7;Lkotlin/jvm/functions/Function5;Lkotlin/jvm/functions/Function4;Landroidx/compose/runtime/Composer;IIII)V } public final class io/getstream/chat/android/compose/ui/attachments/preview/MediaPreviewActivity : androidx/appcompat/app/AppCompatActivity { diff --git a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/content/AudioRecordAttachmentContent.kt b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/content/AudioRecordAttachmentContent.kt index d578c8445be..1b37e8fdc15 100644 --- a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/content/AudioRecordAttachmentContent.kt +++ b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/content/AudioRecordAttachmentContent.kt @@ -17,7 +17,6 @@ package io.getstream.chat.android.compose.ui.attachments.content import androidx.compose.foundation.background -import androidx.compose.foundation.border import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row @@ -38,7 +37,6 @@ import androidx.compose.runtime.rememberUpdatedState import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color import androidx.compose.ui.res.painterResource import androidx.compose.ui.tooling.preview.Preview @@ -58,6 +56,7 @@ import io.getstream.chat.android.compose.state.messages.attachments.AttachmentSt import io.getstream.chat.android.compose.ui.components.LoadingIndicator import io.getstream.chat.android.compose.ui.components.audio.PlaybackTimerText import io.getstream.chat.android.compose.ui.components.audio.StaticWaveformSlider +import io.getstream.chat.android.compose.ui.components.button.SpeedButton import io.getstream.chat.android.compose.ui.components.button.StreamButton import io.getstream.chat.android.compose.ui.components.button.StreamButtonStyleDefaults import io.getstream.chat.android.compose.ui.theme.ChatPreviewTheme @@ -65,11 +64,9 @@ import io.getstream.chat.android.compose.ui.theme.ChatTheme import io.getstream.chat.android.compose.ui.theme.MessageStyling import io.getstream.chat.android.compose.ui.theme.StreamTokens import io.getstream.chat.android.compose.ui.util.applyIf -import io.getstream.chat.android.compose.ui.util.clickable import io.getstream.chat.android.compose.ui.util.shouldBeDisplayedAsFullSizeAttachment import io.getstream.chat.android.compose.viewmodel.messages.AudioPlayerViewModel import io.getstream.chat.android.compose.viewmodel.messages.AudioPlayerViewModelFactory -import io.getstream.chat.android.extensions.isInt import io.getstream.chat.android.models.Attachment import io.getstream.chat.android.models.Attachment.UploadState import io.getstream.chat.android.ui.common.state.messages.list.AudioPlayerState @@ -307,36 +304,6 @@ internal fun PlaybackToggleButton( } } -private val speedButtonShape = RoundedCornerShape(StreamTokens.radiusLg) - -/** - * Represents the speed button. - */ -@Composable -private fun SpeedButton( - speed: Float, - outlineColor: Color, - enabled: Boolean = true, - onClick: () -> Unit, -) { - val colors = ChatTheme.colors - val textColor = if (enabled) colors.controlPlaybackToggleText else colors.textDisabled - val borderColor = if (enabled) outlineColor else colors.borderUtilityDisabled - Text( - text = when (speed.isInt()) { - true -> "x${speed.toInt()}" - else -> "x$speed" - }, - style = ChatTheme.typography.metadataEmphasis, - color = textColor, - modifier = Modifier - .border(1.dp, borderColor, speedButtonShape) - .clip(speedButtonShape) - .applyIf(enabled) { clickable(onClick = onClick) } - .padding(horizontal = StreamTokens.spacingXs, vertical = StreamTokens.spacing2xs), - ) -} - @Composable private fun UploadProgressIndicator( uploadState: UploadState.InProgress, diff --git a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewOptionsMenu.kt b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewOptionsMenu.kt index fad71eeb547..756da36d715 100644 --- a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewOptionsMenu.kt +++ b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewOptionsMenu.kt @@ -16,22 +16,19 @@ package io.getstream.chat.android.compose.ui.attachments.preview -import androidx.compose.foundation.background import androidx.compose.foundation.clickable -import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.width -import androidx.compose.foundation.layout.wrapContentHeight -import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.Icon -import androidx.compose.material3.Surface +import androidx.compose.material3.ModalBottomSheet import androidx.compose.material3.Text +import androidx.compose.material3.rememberModalBottomSheetState import androidx.compose.material3.ripple import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment @@ -40,7 +37,6 @@ import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp -import androidx.compose.ui.unit.sp import io.getstream.chat.android.compose.R import io.getstream.chat.android.compose.state.mediagallerypreview.Delete import io.getstream.chat.android.compose.state.mediagallerypreview.MediaGalleryPreviewOption @@ -50,18 +46,17 @@ import io.getstream.chat.android.compose.state.mediagallerypreview.ShowInChat import io.getstream.chat.android.compose.ui.components.StreamHorizontalDivider import io.getstream.chat.android.compose.ui.theme.ChatTheme import io.getstream.chat.android.compose.ui.theme.MediaGalleryOptionsConfig +import io.getstream.chat.android.compose.ui.theme.StreamTokens import io.getstream.chat.android.models.Attachment import io.getstream.chat.android.models.ConnectionState import io.getstream.chat.android.models.Message import io.getstream.chat.android.models.User /** - * Composable rendering the options menu overlay for media gallery preview. + * Composable rendering the options menu as a bottom sheet for media gallery preview. * - * Displays a dropdown menu in the top-right corner with available actions for the - * currently displayed attachment. The menu appears as a floating surface with a - * semi-transparent overlay covering the entire screen behind it. Clicking anywhere - * outside the menu dismisses it. + * Displays a [ModalBottomSheet] with available actions for the currently displayed attachment. + * The sheet can be dismissed by swiping down, tapping outside, or tapping the scrim. * * Each option is rendered as a [MediaGalleryOptionItem] with dividers between items. * @@ -69,8 +64,9 @@ import io.getstream.chat.android.models.User * @param options List of available options to display in the menu. * @param onOptionClick Callback invoked when an option is clicked, providing both the attachment and option. * @param onDismiss Callback invoked when the menu should be dismissed. - * @param modifier Optional modifier applied to the Surface containing the options. + * @param modifier Optional modifier applied to the [ModalBottomSheet]. */ +@OptIn(ExperimentalMaterial3Api::class) @Composable internal fun MediaGalleryOptionsMenu( attachment: Attachment, @@ -79,39 +75,25 @@ internal fun MediaGalleryOptionsMenu( onDismiss: () -> Unit, modifier: Modifier = Modifier, ) { - Box( - modifier = Modifier - .fillMaxSize() - .background(ChatTheme.colors.backgroundCoreScrim) - .clickable( - indication = null, - interactionSource = null, - onClick = onDismiss, - ), + ModalBottomSheet( + modifier = modifier, + sheetState = rememberModalBottomSheetState(skipPartiallyExpanded = true), + containerColor = ChatTheme.colors.backgroundElevationElevation1, + scrimColor = ChatTheme.colors.backgroundCoreScrim, + onDismissRequest = onDismiss, ) { - Surface( - modifier = modifier - .padding(16.dp) - .width(150.dp) - .wrapContentHeight() - .align(Alignment.TopEnd), - shape = RoundedCornerShape(16.dp), - shadowElevation = 4.dp, - color = ChatTheme.colors.backgroundElevationElevation1, - ) { - Column(modifier = Modifier.fillMaxWidth()) { - options.forEachIndexed { index, option -> - MediaGalleryOptionItem( - option = option, - onClick = { - onDismiss() - onOptionClick(attachment, option) - }, - ) + Column(modifier = Modifier.fillMaxWidth()) { + options.forEachIndexed { index, option -> + MediaGalleryOptionItem( + option = option, + onClick = { + onOptionClick(attachment, option) + onDismiss() + }, + ) - if (index != options.lastIndex) { - StreamHorizontalDivider() - } + if (index != options.lastIndex) { + StreamHorizontalDivider() } } } @@ -138,28 +120,27 @@ internal fun MediaGalleryOptionItem( Row( modifier = Modifier .fillMaxWidth() - .background(ChatTheme.colors.backgroundElevationElevation1) + .padding(horizontal = StreamTokens.spacing2xs) .clickable( interactionSource = null, indication = ripple(), enabled = option.isEnabled, onClick = onClick, ) - .padding(horizontal = 16.dp, vertical = 8.dp), + .padding(StreamTokens.spacingSm), verticalAlignment = Alignment.CenterVertically, ) { Icon( - modifier = Modifier.size(18.dp), + modifier = Modifier.size(20.dp), painter = option.iconPainter, tint = option.iconColor, contentDescription = option.title, ) - Spacer(modifier = Modifier.width(8.dp)) + Spacer(modifier = Modifier.width(StreamTokens.spacingSm)) Text( text = option.title, color = option.titleColor, - style = ChatTheme.typography.bodyEmphasis, - fontSize = 12.sp, + style = ChatTheme.typography.bodyDefault, maxLines = 1, overflow = TextOverflow.Ellipsis, ) diff --git a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewScreen.kt b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewScreen.kt index ed4f8995430..c668a1dbf6a 100644 --- a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewScreen.kt +++ b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewScreen.kt @@ -21,7 +21,6 @@ package io.getstream.chat.android.compose.ui.attachments.preview import androidx.compose.animation.AnimatedVisibility import androidx.compose.animation.fadeIn import androidx.compose.animation.fadeOut -import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column @@ -46,7 +45,6 @@ import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.minimumInteractiveComponentSize import androidx.compose.runtime.Composable -import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.derivedStateOf import androidx.compose.runtime.getValue @@ -57,28 +55,24 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color -import androidx.compose.ui.platform.LocalContext -import androidx.compose.ui.platform.LocalInspectionMode import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.dp -import androidx.lifecycle.Lifecycle -import androidx.lifecycle.LifecycleEventObserver -import androidx.lifecycle.compose.LocalLifecycleOwner import androidx.lifecycle.compose.collectAsStateWithLifecycle -import androidx.media3.common.MediaItem import androidx.media3.common.Player import io.getstream.chat.android.client.utils.attachment.isImage import io.getstream.chat.android.client.utils.attachment.isVideo import io.getstream.chat.android.compose.R import io.getstream.chat.android.compose.state.mediagallerypreview.MediaGalleryPreviewOption +import io.getstream.chat.android.compose.ui.attachments.preview.internal.GalleryMediaEffect import io.getstream.chat.android.compose.ui.attachments.preview.internal.MediaGalleryImagePage import io.getstream.chat.android.compose.ui.attachments.preview.internal.MediaGalleryPhotosMenu import io.getstream.chat.android.compose.ui.attachments.preview.internal.MediaGalleryVideoPage -import io.getstream.chat.android.compose.ui.attachments.preview.internal.createPlayer +import io.getstream.chat.android.compose.ui.attachments.preview.internal.VideoPlaybackControls +import io.getstream.chat.android.compose.ui.attachments.preview.internal.rememberMediaGalleryPlayerState import io.getstream.chat.android.compose.ui.components.NetworkLoadingIndicator import io.getstream.chat.android.compose.ui.components.SimpleDialog import io.getstream.chat.android.compose.ui.components.Timestamp @@ -152,9 +146,7 @@ public fun MediaGalleryPreviewScreen( onDismissGallery: () -> Unit = { viewModel.toggleGallery(false) }, header: @Composable (attachments: List, currentPage: Int) -> Unit = { _, _ -> MediaGalleryPreviewHeader( - modifier = Modifier - .fillMaxWidth() - .height(56.dp), + modifier = Modifier.fillMaxWidth(), message = viewModel.message, connectionState = viewModel.connectionState, onLeadingContentClick = onHeaderLeadingContentClick, @@ -165,29 +157,37 @@ public fun MediaGalleryPreviewScreen( padding: PaddingValues, pagerState: PagerState, attachments: List, - onPlaybackError: () -> Unit, - ) -> Unit = { padding, pagerState, attachments, onPlaybackError -> + player: Player?, + onMediaClick: () -> Unit, + ) -> Unit = { padding, pagerState, attachments, player, onMediaClick -> MediaGalleryPager( modifier = Modifier .fillMaxSize() - .background(ChatTheme.colors.backgroundCoreApp) .padding(padding), + player = player, pagerState = pagerState, attachments = attachments, - onPlaybackError = { onPlaybackError() }, - ) - }, - footer: @Composable (attachments: List, currentPage: Int) -> Unit = { attachments, currentPage -> - MediaGalleryPreviewFooter( - attachments = attachments, - currentPage = currentPage, - totalPages = attachments.size, - connectionState = viewModel.connectionState, - isSharingInProgress = viewModel.isSharingInProgress, - onLeadingContentClick = onFooterLeadingContentClick, - onTrailingContentClick = onFooterTrailingContentClick, + onMediaClick = onMediaClick, ) }, + footer: @Composable (attachments: List, currentPage: Int, player: Player?) -> Unit = + { attachments, currentPage, player -> + MediaGalleryPreviewFooter( + attachments = attachments, + currentPage = currentPage, + totalPages = attachments.size, + connectionState = viewModel.connectionState, + isSharingInProgress = viewModel.isSharingInProgress, + onLeadingContentClick = onFooterLeadingContentClick, + onTrailingContentClick = onFooterTrailingContentClick, + topContent = { + val currentAttachment = attachments.getOrNull(currentPage) + if (player != null && currentAttachment?.isVideo() == true) { + VideoPlaybackControls(player = player) + } + }, + ) + }, optionsMenu: @Composable ( attachment: Attachment, options: List, @@ -306,29 +306,37 @@ public fun MediaGalleryPreviewScreen( padding: PaddingValues, pagerState: PagerState, attachments: List, - onPlaybackError: () -> Unit, - ) -> Unit = { padding, pagerState, attachments, onPlaybackError -> + player: Player?, + onMediaClick: () -> Unit, + ) -> Unit = { padding, pagerState, attachments, player, onMediaClick -> MediaGalleryPager( modifier = Modifier .fillMaxSize() - .background(ChatTheme.colors.backgroundCoreApp) .padding(padding), + player = player, pagerState = pagerState, attachments = attachments, - onPlaybackError = { onPlaybackError() }, - ) - }, - footer: @Composable (attachments: List, currentPage: Int) -> Unit = { attachments, currentPage -> - MediaGalleryPreviewFooter( - attachments = attachments, - currentPage = currentPage, - totalPages = attachments.size, - connectionState = connectionState, - isSharingInProgress = isSharingInProgress, - onLeadingContentClick = onFooterLeadingContentClick, - onTrailingContentClick = onFooterTrailingContentClick, + onMediaClick = onMediaClick, ) }, + footer: @Composable (attachments: List, currentPage: Int, player: Player?) -> Unit = + { attachments, currentPage, player -> + MediaGalleryPreviewFooter( + attachments = attachments, + currentPage = currentPage, + totalPages = attachments.size, + connectionState = connectionState, + isSharingInProgress = isSharingInProgress, + onLeadingContentClick = onFooterLeadingContentClick, + onTrailingContentClick = onFooterTrailingContentClick, + topContent = { + val currentAttachment = attachments.getOrNull(currentPage) + if (player != null && currentAttachment?.isVideo() == true) { + VideoPlaybackControls(player = player) + } + }, + ) + }, optionsMenu: @Composable ( attachment: Attachment, options: List, @@ -362,41 +370,65 @@ public fun MediaGalleryPreviewScreen( } } + val playbackErrorText = stringResource(R.string.stream_ui_message_list_video_display_error) val coroutineScope = rememberCoroutineScope() val snackbarHostState = remember { SnackbarHostState() } + var isImmersive by remember { mutableStateOf(false) } + + // Hoisted player state shared between the pager content and the bottom bar. + val playerState = rememberMediaGalleryPlayerState( + onPlaybackError = { + coroutineScope.launch { + snackbarHostState.showSnackbar( + message = playbackErrorText, + duration = SnackbarDuration.Short, + ) + } + }, + ) + GalleryMediaEffect(playerState, pagerState.currentPage, filteredAttachments) // Full-size container holding the main scaffold and the overlay menus Box(modifier = modifier) { + // Scaffold padding is intentionally ignored to prevent content from shifting when the top/bottom bars + // animate in/out during immersive mode. + @Suppress("UnusedMaterial3ScaffoldPaddingParameter") Scaffold( modifier = Modifier.fillMaxSize(), + containerColor = ChatTheme.colors.backgroundCoreApp, topBar = { - header(filteredAttachments, pagerState.currentPage) + AnimatedVisibility( + visible = !isImmersive, + enter = fadeIn(), + exit = fadeOut(), + ) { + header(filteredAttachments, pagerState.currentPage) + } }, bottomBar = { - if (message.id.isNotEmpty()) { - footer(filteredAttachments, pagerState.currentPage) + AnimatedVisibility( + visible = !isImmersive && message.id.isNotEmpty(), + enter = fadeIn(), + exit = fadeOut(), + ) { + footer(filteredAttachments, pagerState.currentPage, playerState.player) } }, - ) { padding -> + ) { _ -> if (message.id.isNotEmpty()) { Box(modifier = Modifier.fillMaxSize()) { // Main content - val playbackErrorText = stringResource(R.string.stream_ui_message_list_video_display_error) - content(padding, pagerState, filteredAttachments) { - // Show snackbar when playback error occurs - coroutineScope.launch { - snackbarHostState.showSnackbar( - message = playbackErrorText, - duration = SnackbarDuration.Short, - ) - } - } + content( + PaddingValues(), + pagerState, + filteredAttachments, + playerState.player, + { isImmersive = !isImmersive }, + ) // Error snackbar StreamSnackbarHost( hostState = snackbarHostState, - modifier = Modifier - .align(Alignment.BottomCenter) - .padding(bottom = padding.calculateBottomPadding()), + modifier = Modifier.align(Alignment.BottomCenter), ) } // Prompt the user to share a large file (if needed) @@ -414,16 +446,10 @@ public fun MediaGalleryPreviewScreen( } // Attachment options - AnimatedVisibility( - visible = isShowingOptions, - enter = fadeIn(), - exit = fadeOut(), - ) { - if (pagerState.currentPage in filteredAttachments.indices) { - val attachment = filteredAttachments[pagerState.currentPage] - val options = defaultMediaOptions(currentUser, message, connectionState, config.optionsConfig) - optionsMenu(attachment, options) - } + if (isShowingOptions && pagerState.currentPage in filteredAttachments.indices) { + val attachment = filteredAttachments[pagerState.currentPage] + val options = defaultMediaOptions(currentUser, message, connectionState, config.optionsConfig) + optionsMenu(attachment, options) } // Gallery @@ -538,79 +564,18 @@ internal fun MediaGalleryPreviewHeader( * @param pagerState The [PagerState] for managing the pager's state. (passed from outside, so it can be also used by * the adjacent components. For example, to show the current position of the pager in the footer) * @param attachments The list of [Attachment]s to be displayed in the pager. - * @param onPlaybackError Callback to be invoked when an error during the playing of a video occurs. * @param modifier The [Modifier] to be applied to the pager. + * @param player The [Player] instance used for video playback. + * @param onMediaClick Callback to be invoked when the media is clicked (e.g., to toggle immersive mode). */ -@Suppress("LongMethod") @Composable internal fun MediaGalleryPager( pagerState: PagerState, attachments: List, - onPlaybackError: (error: Throwable) -> Unit, + player: Player?, modifier: Modifier = Modifier, + onMediaClick: () -> Unit = {}, ) { - val context = LocalContext.current - val previewMode = LocalInspectionMode.current - var showBuffering by remember { mutableStateOf(true) } - // Create a single instance of the player for the pager, - // so it can be reused across pages, - // improving performance and preventing issues when switching between pages. - var player by remember { mutableStateOf(null) } - // Saved playback state (pageIndex to position) for restoration after app resume. - var savedPlaybackState by remember { mutableStateOf?>(null) } - val currentPage = pagerState.currentPage - LaunchedEffect(currentPage, player) { - player?.let { activePlayer -> - activePlayer.pause() // Pause the player when the page changes - val attachment = attachments[currentPage] - // Prepare the player with the media item if it's a video. - if (attachment.isVideo()) { - attachment.assetUrl?.let { assetUrl -> - // Restore playback position if returning to the same page after app resume. - val startPosition = savedPlaybackState - ?.takeIf { (savedPage, _) -> savedPage == currentPage } - ?.second - ?: 0L - savedPlaybackState = null - activePlayer.setMediaItem(MediaItem.fromUri(assetUrl), startPosition) - activePlayer.prepare() - } - } - } - } - val lifecycleOwner = LocalLifecycleOwner.current - DisposableEffect(lifecycleOwner, previewMode) { - val observer = LifecycleEventObserver { _, event -> - when (event) { - Lifecycle.Event.ON_START -> { - // Player should not be created in preview mode to prevent exceptions. - if (!previewMode && player == null) { - player = createPlayer( - context = context, - onBuffering = { isBuffering -> showBuffering = isBuffering }, - onPlaybackError = onPlaybackError, - ) - } - } - Lifecycle.Event.ON_PAUSE -> { - player?.pause() - } - Lifecycle.Event.ON_STOP -> { - // Save playback position before releasing the player. - savedPlaybackState = pagerState.currentPage to (player?.currentPosition ?: 0L) - player?.release() - player = null - } - else -> Unit - } - } - lifecycleOwner.lifecycle.addObserver(observer) - onDispose { - lifecycleOwner.lifecycle.removeObserver(observer) - player?.release() - player = null - } - } HorizontalPager( modifier = modifier, state = pagerState, @@ -622,6 +587,7 @@ internal fun MediaGalleryPager( attachment = attachment, pagerState = pagerState, page = page, + onTap = onMediaClick, ) } @@ -631,8 +597,7 @@ internal fun MediaGalleryPager( modifier = Modifier.fillMaxSize(), player = it, thumbnailUrl = attachment.thumbUrl, - showBuffering = showBuffering, - onPlaybackError = onPlaybackError, + onClick = onMediaClick, ) } } @@ -682,6 +647,7 @@ internal fun MediaGalleryPreviewFooter( backgroundColor: Color = ChatTheme.colors.backgroundElevationElevation1, contentColor: Color = ChatTheme.colors.textPrimary, config: MediaGalleryConfig = ChatTheme.config.mediaGallery, + topContent: @Composable (() -> Unit)? = null, leadingContent: @Composable (Modifier) -> Unit = { if (config.isShareVisible) { MediaGalleryPreviewShareIcon( @@ -721,16 +687,19 @@ internal fun MediaGalleryPreviewFooter( color = backgroundColor, contentColor = contentColor, ) { - Row( - modifier = Modifier - .fillMaxWidth() - .padding(horizontal = 8.dp), - verticalAlignment = Alignment.CenterVertically, - horizontalArrangement = Arrangement.SpaceBetween, - ) { - leadingContent(Modifier) - centerContent(Modifier.weight(1f)) - trailingContent(Modifier) + Column { + topContent?.invoke() + Row( + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 8.dp), + verticalAlignment = Alignment.CenterVertically, + horizontalArrangement = Arrangement.SpaceBetween, + ) { + leadingContent(Modifier) + centerContent(Modifier.weight(1f)) + trailingContent(Modifier) + } } } } @@ -751,7 +720,7 @@ internal fun MediaGalleryPreviewCloseIcon( onClick = onClick, ) { Icon( - painter = painterResource(id = R.drawable.stream_compose_ic_close), + painter = painterResource(id = R.drawable.stream_compose_ic_arrow_back), contentDescription = stringResource(id = R.string.stream_compose_cancel), ) } diff --git a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/MediaGalleryPage.kt b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/MediaGalleryPage.kt index 8e2bafe659c..2b5cc8bd49b 100644 --- a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/MediaGalleryPage.kt +++ b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/MediaGalleryPage.kt @@ -17,12 +17,12 @@ package io.getstream.chat.android.compose.ui.attachments.preview.internal import android.annotation.SuppressLint -import android.util.Log import androidx.annotation.OptIn import androidx.compose.animation.Crossfade import androidx.compose.animation.core.animateFloatAsState import androidx.compose.foundation.Image import androidx.compose.foundation.background +import androidx.compose.foundation.clickable import androidx.compose.foundation.gestures.awaitEachGesture import androidx.compose.foundation.gestures.awaitFirstDown import androidx.compose.foundation.gestures.calculatePan @@ -35,6 +35,8 @@ import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.pager.PagerState import androidx.compose.material3.Icon import androidx.compose.runtime.Composable +import androidx.compose.runtime.DisposableEffect +import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableFloatStateOf import androidx.compose.runtime.mutableStateOf @@ -44,7 +46,6 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.geometry.Offset import androidx.compose.ui.geometry.Size -import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.graphicsLayer import androidx.compose.ui.input.pointer.PointerEventPass import androidx.compose.ui.input.pointer.pointerInput @@ -97,6 +98,7 @@ internal fun MediaGalleryImagePage( attachment: Attachment, pagerState: PagerState, page: Int, + onTap: () -> Unit = {}, ) { @SuppressLint("UnusedBoxWithConstraintsScope") BoxWithConstraints( @@ -121,6 +123,7 @@ internal fun MediaGalleryImagePage( var currentScale by remember { mutableFloatStateOf(DefaultZoomScale) } var translation by remember { mutableStateOf(Offset(0f, 0f)) } + var wasDragged by remember { mutableStateOf(false) } val scale by animateFloatAsState(targetValue = currentScale, label = "") @@ -157,6 +160,7 @@ internal fun MediaGalleryImagePage( coroutineScope { awaitEachGesture { awaitFirstDown(requireUnconsumed = true) + wasDragged = false do { val event = awaitPointerEvent(pass = PointerEventPass.Initial) @@ -170,6 +174,9 @@ internal fun MediaGalleryImagePage( ) val offset = event.calculatePan() + if (offset != Offset.Zero || zoom != DefaultZoomScale) { + wasDragged = true + } val newTranslationX = translation.x + offset.x * currentScale val newTranslationY = translation.y + offset.y * currentScale @@ -198,8 +205,10 @@ internal fun MediaGalleryImagePage( coroutineScope { awaitEachGesture { awaitFirstDown() - withTimeoutOrNull(DoubleTapTimeoutMs) { + val secondDown = withTimeoutOrNull(DoubleTapTimeoutMs) { awaitFirstDown() + } + if (secondDown != null) { currentScale = when { currentScale == MaxZoomScale -> DefaultZoomScale currentScale >= MidZoomScale -> MaxZoomScale @@ -209,6 +218,8 @@ internal fun MediaGalleryImagePage( if (currentScale == DefaultZoomScale) { translation = Offset(0f, 0f) } + } else if (!wasDragged) { + onTap() } } } @@ -235,11 +246,11 @@ internal fun MediaGalleryImagePage( } } - Log.d("isCurrentPage", "${page != pagerState.currentPage}") - - if (pagerState.currentPage != page) { - currentScale = DefaultZoomScale - translation = Offset(0f, 0f) + LaunchedEffect(pagerState.settledPage) { + if (pagerState.settledPage != page) { + currentScale = DefaultZoomScale + translation = Offset(0f, 0f) + } } } } @@ -285,8 +296,6 @@ private fun ErrorIcon(modifier: Modifier) { * * @param player The [Player] instance used for video playback. * @param thumbnailUrl The url of the thumbnail to display before the video is played. - * @param showBuffering Whether to show a buffering indicator while the video is loading. - * @param onPlaybackError Callback invoked when video playback encounters an error. * @param modifier The [Modifier] to be applied to the video player. */ @OptIn(UnstableApi::class) @@ -294,20 +303,37 @@ private fun ErrorIcon(modifier: Modifier) { internal fun MediaGalleryVideoPage( player: Player, thumbnailUrl: String?, - showBuffering: Boolean, - onPlaybackError: (error: Throwable) -> Unit, modifier: Modifier = Modifier, + onClick: () -> Unit = {}, ) { var showThumbnail by remember { mutableStateOf(true) } + var showBuffering by remember { mutableStateOf(player.playbackState == Player.STATE_BUFFERING) } + DisposableEffect(player) { + val listener = object : Player.Listener { + override fun onIsPlayingChanged(isPlaying: Boolean) { + if (isPlaying) showThumbnail = false + } + + override fun onPlaybackStateChanged(playbackState: Int) { + showBuffering = playbackState == Player.STATE_BUFFERING + } + } + player.addListener(listener) + onDispose { player.removeListener(listener) } + } Box( - modifier = modifier, + modifier = modifier.clickable( + interactionSource = null, + indication = null, + onClick = onClick, + ), contentAlignment = Alignment.Center, ) { // Video player AndroidView( modifier = Modifier .matchParentSize() - .background(Color.Black), + .background(ChatTheme.colors.backgroundCoreApp), factory = { context -> createPlayerView(context, player) }, diff --git a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/MediaGalleryPlayerState.kt b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/MediaGalleryPlayerState.kt new file mode 100644 index 00000000000..592baa36db3 --- /dev/null +++ b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/MediaGalleryPlayerState.kt @@ -0,0 +1,134 @@ +/* + * Copyright (c) 2014-2026 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-chat-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.getstream.chat.android.compose.ui.attachments.preview.internal + +import androidx.compose.runtime.Composable +import androidx.compose.runtime.DisposableEffect +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.Stable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableIntStateOf +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.platform.LocalInspectionMode +import androidx.lifecycle.Lifecycle +import androidx.lifecycle.LifecycleEventObserver +import androidx.lifecycle.compose.LocalLifecycleOwner +import androidx.media3.common.MediaItem +import androidx.media3.common.Player +import io.getstream.chat.android.client.utils.attachment.isVideo +import io.getstream.chat.android.models.Attachment + +@Stable +internal class MediaGalleryPlayerState internal constructor() { + var player: Player? by mutableStateOf(null) + internal set + + /** Playback position captured before the last player release. */ + var savedPosition: Long = 0L + internal set +} + +/** + * Creates and remembers a lifecycle-managed [Player]. + * + * @param onPlaybackError Callback invoked when a playback error occurs. + */ +@Composable +internal fun rememberMediaGalleryPlayerState( + onPlaybackError: (Throwable) -> Unit, +): MediaGalleryPlayerState { + val context = LocalContext.current + val previewMode = LocalInspectionMode.current + val lifecycleOwner = LocalLifecycleOwner.current + val state = remember(::MediaGalleryPlayerState) + + DisposableEffect(lifecycleOwner, previewMode) { + val observer = LifecycleEventObserver { _, event -> + when (event) { + Lifecycle.Event.ON_START -> { + if (!previewMode && state.player == null) { + state.player = createPlayer( + context = context, + onPlaybackError = onPlaybackError, + onBuffering = {}, + ) + } + } + + Lifecycle.Event.ON_PAUSE -> state.player?.pause() + + Lifecycle.Event.ON_STOP -> { + state.savedPosition = state.player?.currentPosition ?: 0L + state.player?.release() + state.player = null + } + + else -> Unit + } + } + lifecycleOwner.lifecycle.addObserver(observer) + onDispose { + lifecycleOwner.lifecycle.removeObserver(observer) + state.player?.release() + state.player = null + } + } + + return state +} + +/** + * A side effect that prepares the correct media item whenever the gallery page changes + * or the player becomes available. + * + * When the player is recreated on the same page (e.g. after ON_STOP → ON_START), + * playback resumes from [MediaGalleryPlayerState.savedPosition]. + * + * @param playerState The lifecycle-managed player state. + * @param currentPage The current pager page index. + * @param attachments The list of attachments displayed in the pager. + */ +@Composable +internal fun GalleryMediaEffect( + playerState: MediaGalleryPlayerState, + currentPage: Int, + attachments: List, +) { + var lastPreparedPage by remember { mutableIntStateOf(-1) } + + LaunchedEffect(currentPage, playerState.player) { + playerState.player?.let { player -> + player.pause() + val attachment = attachments.getOrNull(currentPage) ?: return@LaunchedEffect + if (attachment.isVideo()) { + attachment.assetUrl?.let { assetUrl -> + val startPosition = if (currentPage == lastPreparedPage) { + playerState.savedPosition + } else { + 0L + } + player.setMediaItem(MediaItem.fromUri(assetUrl), startPosition) + player.prepare() + } + } + lastPreparedPage = currentPage + } + } +} diff --git a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/StreamMediaPlayerContent.kt b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/StreamMediaPlayerContent.kt index cdf58302cca..aa7d75b8dca 100644 --- a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/StreamMediaPlayerContent.kt +++ b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/StreamMediaPlayerContent.kt @@ -44,6 +44,7 @@ import io.getstream.chat.android.compose.R import io.getstream.chat.android.compose.ui.components.LoadingIndicator import io.getstream.chat.android.compose.ui.components.common.PlayButton import io.getstream.chat.android.compose.ui.components.common.PlayButtonSize +import io.getstream.chat.android.compose.ui.theme.ChatTheme import io.getstream.chat.android.compose.ui.util.StreamAsyncImage import io.getstream.chat.android.compose.ui.util.clickable import io.getstream.chat.android.core.internal.StreamHandsOff @@ -154,7 +155,7 @@ internal fun MediaThumbnail( modifier: Modifier = Modifier, ) { Box( - modifier = modifier.background(Color.Black), + modifier = modifier.background(ChatTheme.colors.backgroundCoreApp), contentAlignment = Alignment.Center, ) { if (thumbnailUrl != null) { @@ -224,13 +225,7 @@ internal fun createPlayerView(context: Context, player: Player): PlayerView { .inflate(R.layout.stream_compose_player_view, null) as PlayerView return playerView.apply { this.player = player - controllerShowTimeoutMs = ControllerShowTimeout - controllerAutoShow = false - controllerHideOnTouch = true - setShowPreviousButton(false) - setShowNextButton(false) + useController = false setShowBuffering(PlayerView.SHOW_BUFFERING_NEVER) } } - -private const val ControllerShowTimeout = 2000 diff --git a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/VideoPlaybackControls.kt b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/VideoPlaybackControls.kt new file mode 100644 index 00000000000..c544370546c --- /dev/null +++ b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/attachments/preview/internal/VideoPlaybackControls.kt @@ -0,0 +1,365 @@ +/* + * Copyright (c) 2014-2026 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-chat-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.getstream.chat.android.compose.ui.attachments.preview.internal + +import androidx.compose.animation.core.LinearEasing +import androidx.compose.animation.core.animateFloatAsState +import androidx.compose.animation.core.snap +import androidx.compose.animation.core.tween +import androidx.compose.foundation.background +import androidx.compose.foundation.border +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.BoxScope +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.offset +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.progressSemantics +import androidx.compose.foundation.shape.CircleShape +import androidx.compose.material3.Icon +import androidx.compose.material3.Text +import androidx.compose.material3.minimumInteractiveComponentSize +import androidx.compose.runtime.Composable +import androidx.compose.runtime.DisposableEffect +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.Stable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableFloatStateOf +import androidx.compose.runtime.mutableLongStateOf +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.rememberUpdatedState +import androidx.compose.runtime.setValue +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.draw.shadow +import androidx.compose.ui.geometry.Offset +import androidx.compose.ui.layout.onSizeChanged +import androidx.compose.ui.platform.LocalDensity +import androidx.compose.ui.platform.LocalLayoutDirection +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.LayoutDirection +import androidx.compose.ui.unit.coerceIn +import androidx.compose.ui.unit.dp +import androidx.media3.common.MediaItem +import androidx.media3.common.PlaybackParameters +import androidx.media3.common.Player +import io.getstream.chat.android.compose.R +import io.getstream.chat.android.compose.ui.components.button.SpeedButton +import io.getstream.chat.android.compose.ui.components.button.StreamButton +import io.getstream.chat.android.compose.ui.components.button.StreamButtonSize +import io.getstream.chat.android.compose.ui.components.button.StreamButtonStyleDefaults +import io.getstream.chat.android.compose.ui.theme.ChatTheme +import io.getstream.chat.android.compose.ui.theme.StreamTokens +import io.getstream.chat.android.compose.ui.util.dragPointerInput +import kotlinx.coroutines.delay + +/** + * A composable that displays video playback controls for the media gallery. + * + * Contains play/pause button, current time, seek bar, and speed toggle. + * + * @param player The [Player] instance to control. + * @param modifier The [Modifier] to be applied. + */ +@Composable +internal fun VideoPlaybackControls( + player: Player, + modifier: Modifier = Modifier, +) { + val state = rememberVideoPlaybackControlsState(player) + + Row( + modifier = modifier.padding(start = StreamTokens.spacingSm, end = StreamTokens.spacingMd), + verticalAlignment = Alignment.CenterVertically, + ) { + // Play/Pause button + StreamButton( + onClick = state::togglePlayPause, + style = StreamButtonStyleDefaults.secondaryGhost, + size = StreamButtonSize.Small, + modifier = Modifier.minimumInteractiveComponentSize(), + ) { + val icon = if (state.isPlaying) { + R.drawable.stream_compose_ic_pause + } else { + R.drawable.stream_compose_ic_play + } + val contentDescription = if (state.isPlaying) { + R.string.stream_compose_audio_playback_pause + } else { + R.string.stream_compose_cd_play_button + } + Icon( + painter = painterResource(icon), + contentDescription = stringResource(contentDescription), + modifier = Modifier.size(20.dp), + ) + } + + Text( + text = ChatTheme.durationFormatter.format(state.currentPosition.toInt()), + style = ChatTheme.typography.captionDefault, + color = if (state.isPlaying) ChatTheme.colors.accentPrimary else ChatTheme.colors.textPrimary, + ) + + PlaybackSlider( + progress = state.progress, + isPlaying = state.isPlaying, + modifier = Modifier + .weight(1f) + .height(20.dp) + .padding(horizontal = StreamTokens.spacingMd), + onDragStart = { state.onDragStart() }, + onDrag = state::onDrag, + onDragStop = state::onDragStop, + ) + + SpeedButton( + speed = state.speed, + onClick = state::cycleSpeed, + ) + } +} + +/** + * A progress bar matching the Figma "Mobile / Playback Progress Bar" component. + * + * Displays a rounded track (4dp) with a 12dp white circular thumb with border and shadow. + * + * @param progress The current progress (0f..1f). + * @param isPlaying Whether playback is active (changes thumb and track colors). + * @param modifier The [Modifier] to be applied. + * @param onDragStart Callback when the user starts dragging. + * @param onDrag Callback during drag with the current progress. + * @param onDragStop Callback when the user stops dragging with the final progress. + */ +@Composable +private fun PlaybackSlider( + progress: Float, + isPlaying: Boolean, + modifier: Modifier = Modifier, + onDragStart: (Float) -> Unit = {}, + onDrag: (Float) -> Unit = {}, + onDragStop: (Float) -> Unit = {}, +) { + val isRtl = LocalLayoutDirection.current == LayoutDirection.Rtl + val currentProgress by rememberUpdatedState(progress) + var widthPx by remember { mutableFloatStateOf(0f) } + val animatedProgress by animateFloatAsState( + targetValue = progress, + animationSpec = if (isPlaying) { + tween(durationMillis = PositionPollingIntervalMs.toInt(), easing = LinearEasing) + } else { + snap() + }, + label = "playback-progress", + ) + Box( + modifier = modifier + .progressSemantics(value = progress) + .onSizeChanged { size -> widthPx = size.width.toFloat() } + .dragPointerInput( + enabled = true, + onDragStart = { onDragStart(it.toHorizontalProgress(widthPx, isRtl)) }, + onDrag = { onDrag(it.toHorizontalProgress(widthPx, isRtl)) }, + onDragStop = { onDragStop(it?.toHorizontalProgress(widthPx, isRtl) ?: currentProgress) }, + ), + contentAlignment = Alignment.CenterStart, + ) { + // Track background + Box( + modifier = Modifier + .fillMaxWidth() + .height(TrackHeight) + .clip(CircleShape) + .background(ChatTheme.colors.chatWaveformBar), + ) + // Active track + Box( + modifier = Modifier + .fillMaxWidth(fraction = animatedProgress) + .height(TrackHeight) + .clip(CircleShape) + .background(ChatTheme.colors.chatWaveformBarPlaying), + ) + // Thumb + PlaybackThumb(progress = animatedProgress, isPlaying = isPlaying, parentWidthPx = widthPx) + } +} + +@Composable +private fun BoxScope.PlaybackThumb( + progress: Float, + isPlaying: Boolean, + parentWidthPx: Float, +) { + val thumbOffset = if (parentWidthPx > 0) { + with(LocalDensity.current) { + val parentWidth = parentWidthPx.toDp() + val center = parentWidth * progress + val left = center - (ThumbSize / 2) + left.coerceIn(0.dp, parentWidth - ThumbSize) + } + } else { + 0.dp + } + val colors = ChatTheme.colors + val bgColor = if (isPlaying) { + colors.controlPlaybackThumbBgActive + } else { + colors.controlPlaybackThumbBgDefault + } + val borderColor = if (isPlaying) { + colors.controlPlaybackThumbBorderActive + } else { + colors.controlPlaybackThumbBorderDefault + } + Box( + modifier = Modifier + .align(Alignment.CenterStart) + .offset(x = thumbOffset) + .size(ThumbSize) + .shadow(2.dp, CircleShape) + .background(bgColor, CircleShape) + .border(1.dp, borderColor, CircleShape), + ) +} + +private fun Offset.toHorizontalProgress(widthPx: Float, isRtl: Boolean): Float { + val raw = (x / widthPx).coerceIn(0f, 1f) + return if (isRtl) 1f - raw else raw +} + +@Suppress("MagicNumber") +private val PlaybackSpeeds = floatArrayOf(1f, 1.5f, 2f) +private const val PositionPollingIntervalMs = 100L +private val TrackHeight = 4.dp +private val ThumbSize = 12.dp + +/** + * Observable state holder for [VideoPlaybackControls]. + * + * Observes a [Player] via listener for discrete events (play/pause, speed, duration) + * and polls for continuous position updates while playing. + * + * @param player The [Player] instance to observe and control. + */ +@Stable +internal class VideoPlaybackControlsState(private val player: Player) { + var isPlaying: Boolean by mutableStateOf(player.isPlaying) + private set + + var currentPosition: Long by mutableLongStateOf(player.currentPosition) + private set + + var duration: Long by mutableLongStateOf(player.duration.coerceAtLeast(0L)) + private set + + var speed: Float by mutableFloatStateOf(player.playbackParameters.speed) + private set + + var isSeeking: Boolean by mutableStateOf(false) + private set + + val progress: Float + get() = if (duration > 0) currentPosition.toFloat() / duration.toFloat() else 0f + + val listener: Player.Listener = object : Player.Listener { + override fun onIsPlayingChanged(playing: Boolean) { + isPlaying = playing + } + + override fun onPlaybackParametersChanged(playbackParameters: PlaybackParameters) { + speed = playbackParameters.speed + } + + override fun onMediaItemTransition(mediaItem: MediaItem?, reason: Int) { + duration = player.duration.coerceAtLeast(0L) + currentPosition = player.currentPosition.coerceAtLeast(0L) + } + + override fun onPlaybackStateChanged(playbackState: Int) { + if (playbackState == Player.STATE_READY) { + duration = player.duration.coerceAtLeast(0L) + } + if (playbackState == Player.STATE_ENDED) { + currentPosition = duration + } + } + } + + fun togglePlayPause() { + if (player.isPlaying) { + player.pause() + } else { + if (player.playbackState == Player.STATE_ENDED) { + player.seekTo(0L) + } + player.play() + } + } + + fun cycleSpeed() { + val currentIndex = PlaybackSpeeds.indexOfFirst { it == speed } + val nextIndex = (currentIndex + 1) % PlaybackSpeeds.size + player.playbackParameters = player.playbackParameters.withSpeed(PlaybackSpeeds[nextIndex]) + } + + fun onDragStart() { + isSeeking = true + } + + fun onDrag(dragProgress: Float) { + currentPosition = (dragProgress * duration).toLong() + } + + fun onDragStop(dragProgress: Float) { + currentPosition = (dragProgress * duration).toLong() + player.seekTo(currentPosition) + isSeeking = false + } + + suspend fun pollPosition() { + while (isPlaying) { + if (!isSeeking) { + currentPosition = player.currentPosition.coerceAtLeast(0L) + } + delay(PositionPollingIntervalMs) + } + } +} + +@Composable +private fun rememberVideoPlaybackControlsState(player: Player): VideoPlaybackControlsState { + val state = remember(player) { VideoPlaybackControlsState(player) } + + DisposableEffect(player) { + player.addListener(state.listener) + onDispose { player.removeListener(state.listener) } + } + + LaunchedEffect(player, state.isPlaying) { + state.pollPosition() + } + + return state +} diff --git a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/channel/attachments/ChannelMediaAttachmentsPreviewScreen.kt b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/channel/attachments/ChannelMediaAttachmentsPreviewScreen.kt index 202ad352462..c5c25917058 100644 --- a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/channel/attachments/ChannelMediaAttachmentsPreviewScreen.kt +++ b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/channel/attachments/ChannelMediaAttachmentsPreviewScreen.kt @@ -40,6 +40,8 @@ import io.getstream.chat.android.compose.ui.attachments.preview.ConfirmShareLarg import io.getstream.chat.android.compose.ui.attachments.preview.MediaGalleryPager import io.getstream.chat.android.compose.ui.attachments.preview.MediaGalleryPreviewShareIcon import io.getstream.chat.android.compose.ui.attachments.preview.MediaGalleryPreviewSharingInProgressIndicator +import io.getstream.chat.android.compose.ui.attachments.preview.internal.GalleryMediaEffect +import io.getstream.chat.android.compose.ui.attachments.preview.internal.rememberMediaGalleryPlayerState import io.getstream.chat.android.compose.ui.theme.ChannelMediaAttachmentsPreviewBottomBarParams import io.getstream.chat.android.compose.ui.theme.ChatTheme import io.getstream.chat.android.compose.ui.util.StreamSnackbarHost @@ -141,6 +143,11 @@ private fun ChannelMediaAttachmentsPreviewContent( pageCount = items::size, ) val snackbarHostState = remember { SnackbarHostState() } + val attachments = remember(items) { + items.map(ChannelAttachmentsViewState.Content.Item::attachment) + } + val playerState = rememberMediaGalleryPlayerState(onPlaybackError = onVideoPlaybackError) + GalleryMediaEffect(playerState, pagerState.currentPage, attachments) Scaffold( modifier = Modifier.fillMaxSize(), topBar = { @@ -166,10 +173,8 @@ private fun ChannelMediaAttachmentsPreviewContent( .padding(padding) .fillMaxSize(), pagerState = pagerState, - attachments = remember(items) { - items.map(ChannelAttachmentsViewState.Content.Item::attachment) - }, - onPlaybackError = onVideoPlaybackError, + attachments = attachments, + player = playerState.player, ) LoadMoreHandler( pagerState = pagerState, diff --git a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/components/button/SpeedButton.kt b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/components/button/SpeedButton.kt new file mode 100644 index 00000000000..f648eb8d3f6 --- /dev/null +++ b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/components/button/SpeedButton.kt @@ -0,0 +1,67 @@ +/* + * Copyright (c) 2014-2026 Stream.io Inc. All rights reserved. + * + * Licensed under the Stream License; + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://github.com/GetStream/stream-chat-android/blob/main/LICENSE + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.getstream.chat.android.compose.ui.components.button + +import androidx.compose.foundation.border +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.unit.dp +import io.getstream.chat.android.compose.ui.theme.ChatTheme +import io.getstream.chat.android.compose.ui.theme.StreamTokens +import io.getstream.chat.android.compose.ui.util.applyIf +import io.getstream.chat.android.compose.ui.util.clickable +import io.getstream.chat.android.extensions.isInt + +private val speedButtonShape = RoundedCornerShape(StreamTokens.radiusLg) + +/** + * A button that displays the current playback speed and cycles through speeds on click. + * + * @param speed The current playback speed. + * @param outlineColor The border color of the button. + * @param enabled Whether the button is enabled. + * @param onClick Callback invoked when the button is clicked. + */ +@Composable +internal fun SpeedButton( + speed: Float, + outlineColor: Color = ChatTheme.colors.controlPlaybackToggleBorder, + enabled: Boolean = true, + onClick: () -> Unit, +) { + val colors = ChatTheme.colors + val textColor = if (enabled) colors.controlPlaybackToggleText else colors.textDisabled + val borderColor = if (enabled) outlineColor else colors.borderUtilityDisabled + Text( + text = when (speed.isInt()) { + true -> "x${speed.toInt()}" + else -> "x$speed" + }, + style = ChatTheme.typography.metadataEmphasis, + color = textColor, + modifier = Modifier + .border(1.dp, borderColor, speedButtonShape) + .clip(speedButtonShape) + .applyIf(enabled) { clickable(onClick = onClick) } + .padding(horizontal = StreamTokens.spacingXs, vertical = StreamTokens.spacing2xs), + ) +} diff --git a/stream-chat-android-compose/src/test/kotlin/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewActivityTest.kt b/stream-chat-android-compose/src/test/kotlin/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewActivityTest.kt index c71033abf21..d16bfc11724 100644 --- a/stream-chat-android-compose/src/test/kotlin/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewActivityTest.kt +++ b/stream-chat-android-compose/src/test/kotlin/io/getstream/chat/android/compose/ui/attachments/preview/MediaGalleryPreviewActivityTest.kt @@ -18,10 +18,14 @@ package io.getstream.chat.android.compose.ui.attachments.preview import android.app.Activity import android.content.Intent +import androidx.compose.ui.semantics.SemanticsActions +import androidx.compose.ui.test.hasClickAction +import androidx.compose.ui.test.hasText import androidx.compose.ui.test.junit4.createComposeRule import androidx.compose.ui.test.onNodeWithContentDescription import androidx.compose.ui.test.onNodeWithText import androidx.compose.ui.test.performClick +import androidx.compose.ui.test.performSemanticsAction import androidx.test.core.app.ActivityScenario import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 @@ -78,7 +82,10 @@ internal class MediaGalleryPreviewActivityTest : MockedChatClientTest { composeTestRule.waitForIdle() composeTestRule.onNodeWithContentDescription("Image options").performClick() - composeTestRule.onNodeWithText("Reply").performClick() + composeTestRule.waitForIdle() + composeTestRule.onNode(hasText("Reply") and hasClickAction()) + .performSemanticsAction(SemanticsActions.OnClick) + composeTestRule.waitForIdle() scenario.assertResult( expected = MediaGalleryPreviewResult( @@ -99,7 +106,10 @@ internal class MediaGalleryPreviewActivityTest : MockedChatClientTest { composeTestRule.waitForIdle() composeTestRule.onNodeWithContentDescription("Image options").performClick() - composeTestRule.onNodeWithText("Show in chat").performClick() + composeTestRule.waitForIdle() + composeTestRule.onNode(hasText("Show in chat") and hasClickAction()) + .performSemanticsAction(SemanticsActions.OnClick) + composeTestRule.waitForIdle() scenario.assertResult( expected = MediaGalleryPreviewResult( @@ -122,8 +132,10 @@ internal class MediaGalleryPreviewActivityTest : MockedChatClientTest { composeTestRule.waitForIdle() composeTestRule.onNodeWithContentDescription("Image options").performClick() + composeTestRule.waitForIdle() - composeTestRule.onNodeWithText("Delete").performClick() + composeTestRule.onNode(hasText("Delete") and hasClickAction()) + .performSemanticsAction(SemanticsActions.OnClick) } } @@ -136,8 +148,10 @@ internal class MediaGalleryPreviewActivityTest : MockedChatClientTest { composeTestRule.waitForIdle() composeTestRule.onNodeWithContentDescription("Image options").performClick() + composeTestRule.waitForIdle() - composeTestRule.onNodeWithText("Save media").performClick() + composeTestRule.onNode(hasText("Save media") and hasClickAction()) + .performSemanticsAction(SemanticsActions.OnClick) } } diff --git a/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewOptionsMenuTest_media_gallery_options_menu_for_other_user.png b/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewOptionsMenuTest_media_gallery_options_menu_for_other_user.png index bd47597ff1a1f0f8398b06f6225f9681cc554060..b2431264808f734a91c9044361f2d262fc595a81 100644 GIT binary patch literal 3657 zcmeAS@N?(olHy`uVBq!ia0y~yU@~H0V1B{D1{66WC$fZrflt8G#WAGf*4t}_ybKIH zhc`HB)fY*3$xg1B;jnJWTLy+25kUq9WoCwi6b6PK9vIayk&(f`hyhA5xUqqFAnL#g z1_lX97zNS@cV~%Fb(HavG0!V!` dXx}DJC$1yO_{5FZUBE6PgQu&X%Q~loCIB?chmQaN literal 17560 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 diff --git a/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewOptionsMenuTest_media_gallery_options_menu_for_own_user.png b/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewOptionsMenuTest_media_gallery_options_menu_for_own_user.png index 4b0283edca0f86eaed9c4f1ad0cc846121daf2a3..b2431264808f734a91c9044361f2d262fc595a81 100644 GIT binary patch delta 230 zcmdnLi1DP%1Z5RI0Z$jlkcwMxuNm?(Fz_7S;G|VwB;6%Dxn_pLx+QNJ7-~cWCpQEX zOn%_!HTjia@8kmk5==b;lPCHwp1jtdb8=mP0Fw*DWdDGLKowG(cluQ_(p%Z&oqq0O Zc{*_&NyaB`yzXKE0#8>zmvv4FO#q7RTeJWG literal 20799 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 diff --git a/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewScreenTest_media_gallery_header_connecting.png b/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewScreenTest_media_gallery_header_connecting.png index cc519819c7d54ace4770882e0b3aba2c6bb024cf..00267bbfccdbaa148a48000bdfe7270ab4344afd 100644 GIT binary patch literal 14428 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 NJLGw=@xZyC{}(Zw%{c%7 literal 14607 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 OVROdebj7Kw5B>+qux*t9 diff --git a/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewScreenTest_media_gallery_header_message_without_id.png b/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewScreenTest_media_gallery_header_message_without_id.png index 62321337745e4550cb4ce812b7149785ed30fb48..309c83863af2f62686fd1461d77545b7f88f4413 100644 GIT binary patch literal 10766 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 delta 9334 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 K)ylsfy!<~G{oc&tEw?e0k3~&%2!W zc|LBPbg|#?&9-kqAkYR!hoh%Kpf8L;Ai2+9tpjG7wKhKmf%ae=j~;eM56z4SvOSi_ zf{W5y;%hFK<_6y{Ul{OB)YAy=b=Y@nB>rd%^!elMXEvUEe*Mz(M;q6leVK4QA@8w! zzHXjFC{r-+g)|V166M#ahEHaRB76k-9h}`SziXsp%4)JD{5r}B5GeVS3FRx$bsag- zg*FgK)%e##P^`kg&Hgf^)XOQFZ_kOIF7}hI3{VRAGYpk;bs;|EW}-O?{-*5343TEz zN8ruj1f-HW%f)xLiHz!?zPAHwFSH%<<-W63%HL4zlwr6*%0jWr>h8yMoez28*T=Bt zb(pjuT9egT>@U89zf3EJ1Uy9Aoom8I`FA}$7^?v6O~%cjh<8Rz_ZB-()KAfg0m+Pq z*o8NgLDq5|MN+ox-6WG@Y}b7Uzdj_93MgQ85N3`XnKK%~>pb9UIaBR6bTLjd$XYAk zeONDq#OtywMAXs?UMXeG)G`c3-gRR*kp*7yd?-00XtXhE2*p4Qum#&gv?=!^gb`mV zs9n&Fbr!E3s|g;czSNSyL@;&o%n(CQ4QdA;x6X|Fv2rmX4@`s4(5Y$%ufb6tX8f}e z_eW-bTn~0O3FvYjixK$HXPAB$2Yez&KH2KUHWQ?ah5J#Q!770%lG)73`>Yz;H_8ej z&D@7#W@@UVm!_Er8{wz)@K3kx`_Zy=eOE)AOPn?iJv~asa8XE5RfQvP*c1EV=W4HH zohkSBVpr~eVxMX#YPXT%J2H)et)-K>nAtZW7~w=l#S)4%*Cf)@HkMnbaF)%Qmx|^F z(D)2!bl?h?svR7YEw6>nyVADreC;#z$TD}lJp|M3s4sl*rR}=G&9?qj%}8e+iv|u+ z!ADWa8(+sMfklapo)yp*#xR!G+0yO{@`>p4m`cTqeWL--z8$6A($CG5idm3C6&Thi zS=Hz<2f_5yv5^*N7$fH#rfB1@9$VX@2RI)Lb%)eG@VNZ7DWJ7Vn ziT!}XnSRL7b|h8PGosBMCFW8^zidjc+$g>7>c=0eE^gAj&{yI?XESvQ(M3C<(y2ni z)=(a>mnR%aOMDUPOm9U*Qpetk#?y_B_NiKap~{eQY_{r7ZrZug_29;n*p7Pr=~2v_ z0aQiF!$aNJsF%5~%$h%_OQIIn($oN$lQoQ$^_+KwgaMB1LrZ`ooobXe^19lgTa`>F zme>Oo96oXl$yV{;4k8c=(rMet{0!(GsFvWHds=hK^2|v>Fb??=Ez1|QHnWdIT!sxp zUwyyUBd%j-hBq^KBM@J1N?GR0g^L$6q!Lk~y>?8s^VF-x10&&Xe3U0N%8zdA0E=1j zi00D+dRkOq4|6{Dq;;LMn13nP9{YwvClWD%y^bR zHx$jOMkj1CD_~{YQ^$BnYA8j5LVdt$1ouBaw%&H#@94Yh1a*%fbqbPi~H2XC>Z_5~@> zBKo(-Ia|$=%Zb{@Th>+vkx*amzo(U)>V5!(AW~q<9tBpPUf@i0c zRo~?lh$LqR)g|7zlcAI})Jzk7zus_{XaKGuP_9UX6?T_ci{0O(J=&cRe8{78!NMul zS+m)90frO$@zD`jqW8eec=@=wvTtwEsaAy((hFmcY~%XP*B1^Evc$*hk+fsp!-mce z_7}Gz#y^ZTqT_etg2T4e`F-$1P=IUa8i=9fHr65um`d*j_+Rhf9U6)+h5r zJ)`H^lhjNS@SE>J-B?4x6=hs5bNk0`Ore6>gU8DaVCzhqXjV?-wwAHd&TY&C9Pu{~ zxSji4FwbUcxygGe>#auhTv8X;I=X2YBMt6$%i(+n#UGXM4x*Vl7>eWI&E6Tk)aRM# zG)qN(C%n;w1YNbc#`L|LyVfH*)!9nheX4RdQV{lVlw9tXKAwF^Y@1)LsA&No`2H5n z#ICU>Ps(Y#k zzF1j2CJ)&CO6H4?vFhC)Ufm=@GLk1w%WYVAln<06(z3sXuU=E&8Oz|u;mysyb4?oq zr)~9`k1_jETNt|xUuo;=h2ZIa8TWi@A&|DZYV>l^qH31vnm!x5DMUX?1=UE2*y784 z7}m8L!?>wvQN;O36lZ33(;(Vs07RoAM&B}7-|EuR))c}9ve9N^Vs$@-`}HN4rzq=q zq29>sphy*4H%((57yFdTlLyV1V4*p=YC*L+(XgRtx;`F)F^XPbSKUpJyXmC;MF~6Y zjkaC_>tG3rf2xs&&SZanl3Kn}Yp)sMjxswov7DeywKgj|Ust|@LYj`fmAlD%e?Vqz?QJllO(g8lJp{mtM+S#9t@SLlvsejp#bWQqRz2={54@b&(hTXA{J z%)6?)x#FWWKK2ERhZyyHEk^MgZ6qCv8X+c&`8g<-U*HR;4Jqj+@P3`Hr@O3MEEGA3tf1Z2 zrlQ3jSHZEbK^ zZ2IDQPlfuY_**6!dqR~9gYHAu)El}6toA9{?!3v)b}g5LxH~~4gg4}Ic*irE@`*1% z69HdSBXXGEKj1EEmg^F4FcS!2lO0~H_%|bXnS_oQcVupB=N$nZvQ;-iK5FaMiu!ar z0(!J3&8t0=9!9ffV@37R#hc`oN{=OOrH5(u@dJV@$o%6fQ1nIApNGw34P1JXASCsL zO6J=}ZpBNWeJJNla4W|xwjvFRm(95wuSqpd9g^JAhnAhOdR3w$w||=@=eez!Ml_$3 zWgQ$IZ=$v*RD~9^wSow$@}0Sa}l7xr0qp<4W=FrZ=Z zn-hGD({>qYh;WjuEVbh}S+kFDEjjXi7SiSM4QhGZVL4^rKgIqyo(jp$!FeItnh!Lh zqpaFdQ|;p~-Z3YT;1fO&|D=0OF(Q9$;NLZ}GyUVf8-le-CFToVgf@^IWk;6#(d=aXJrh3T8__%f?jPcd%9l&5+2mCyYBpr4>LK?z z*RU)S69ZdbpAe>2G%mcoQlx?5RGNlh7T?#;fMeP{!##>dR8AhG!`74#jlHZ>`c$ArYA3Y|# z@#-E>ht@P9R{|!eR-e*rs~D|rnaeR>0QdCGIA>h#so6VDhF+{=)y(j&dW43?L&~$E zv^PrppGLL_Z#YGBzCnISKkl6bfp<-$PNE;wb$T>uUYN2k&haPT^6PF2yd%7pz-u# zg%$Rh!I?>gt8E==8H&qB4}C!^Tc>LLa-FtrPnBOgM|kfz?QBBfwt8m5-nWKNw|IV& zGLRGA?FcNeP-q)3(4@X^PPaQl+Ncez`mD};{q9`2aY}Zv*>{(EISuS`^(7+(m6vI2 zKniLgz^|a+4Znl`WwxkJhnGDj)>{MGZ`av>7X;e2`|sdAtHfxP0eOctiJ;Lcea0V z!C%|{)r!Bj4F>&=Wd7YK{Nk8ZZ2l|3{+rAE104A`ZU1BAB{m86<^L$}|0>@8!$Btg z(|<>*{X;$UK?U^RkZS)wVE@gG22nu2){6eYar$$q{jbjG|3tN*Jl^4Wr`N#*4t(h7 zI^Kb|Io#QyW_)MIo3z_I9F13}71SK>?69@_dD<~H>6a&gX$m%s)#Wr!b=}7k4uZQ) zXp7(^O_5(Rqa#~@08}&s@A~JQu=28lVXUonS;l@P;BSE6_nvK7>Q9-XNHL71{`}z7 zb+RyZ^ZAJ?+G_vi5gN%rfO05AjuAawDFUQnz37_y@>vWO)&(+(U9(^71+baW0Rhq zFojRjWHvLs*tv75`3L93PH&}EsWQs^V|@A2a<;kKo^4jk$u*-PAAdZSjcps29TL>w z6am%DBUx}Ds8>Ib*cth336UF9i>FsmYZ)`p#@XR8upwz?0A`tZ90&u%9UWz*N{y=@ zZnwgbA7<)m4s0Ux{*UnXqV#?F6aB69J#L)?Y3I=blwZRy1aM!t3p6Zb6>GpN?u zfadhJnNb_qQ;r@vbAIj)d0+GEv)R|$ItUO72bu}AlR6@Ar&OH;O#CR8S5}3&R6AS} z#a(%wdimZgN%kuI$6IBI8HlD97rHgLFV;Cfu*ZM-`@29KWM67qoP#{)4BqR$XoTS( z2+T%AwnOV)r(m{LSPB}=S{O-cyePWJaxzsPU@AjPkC+pbej{U}LkV)Z+B0r!Yg2p4 z$9m?3y!Ha`^##q@&)!zmTW{uvgL1Ai0|8wt#j?iXiCwbe`mOsq>`oyFL?9Kq?G&?m z&dJF2o!8fZ2hbA2xg7UK+^4owVnz;Ly0fJ{+G^2(J~RF&jER3o$G)@AKX_^zE8R`H zS1W6L%+aaZ>2!Z9fqh`C;|+AH{O6FS7MjxT&W8s{obl$@SA}fUnD1DLt^doH88K^q z@~$zc> z+nVPGFSQc@q8~iyjS`wpmDP=wtvo-YP}!ZTBG_|J8f`T=^N|^W4E3ndQKqhSJn;y9 zdF8HKSBF+^3TD?h)EhV_*bIJr&Zj6b4%Z;q*?QE<*=@!QQ#%M5xjK$8Rb)y`T`4%p zl1?CLMo`3k5kh&bML*n*Om!X&AS9RZD(p4%-4Ja_T9RV$A=6u%da5QK`Qi1>JrnXM zm)~DnwQmAvJ|c88yoVv}C>$bv+XOFnEzhBR|pCfIoWwNX0oxFgeQ@Q7v9r~>G--e>A_;! zt@4KHSf&~BLukz?PDExNuXihOc8b%AcAos?)>VXL$Tx_wR}mt9oeEfcrQgy|aJ{!C zi|C&rvAT4?|*SzU#C;*uU#8_u>J|t?vbBfQHdn7a;=7v`_-ZIiBY+|a@{IloM zV#|e-XXvFjq2P6{;sZEtet`}A@n}r$9@1rRQyIxW@6*^*=4ib6yPC!CuZd>xXgW-4 zz_-|Luq&!Qa(4KIU!f_B$@BK)UUf|*^I@!4b;v`ZR)`~kNP`UXqPj(tfxx<&!%N*{ z9Ck(+*pCldVwpk+Ly$8`^^AT69b3B~tm)v*n7J2)PTb`EO>Y#`%^stDhRbsBPf{3G zD}%~7eZRK5i@?PfAph!&;sbP>o{ML>IOEL2Ak8|kCir4|8OnvK6?uGxPnrwDCI#fq z5PbUT7WsfkRMtb&pM7yq^br3{Z6~H*b<6osqEk?fKf0qtRW}NGeCe>fw#WExc_vj} zGu-{bcgWLyb%}eoP>qh}L#WHLoJhL9wP1L?pKOmQe1~lTG&;{Im6`2=wFP9F_kn}* zx(OLAcmjt(n|ti;1iS@1@j5Qm`6diwlB^A>?ALeiNOUt8ix!P=maCW7V|_d;lMgSv zdH_l1N-4Qj7iow0$E+lAF6JD*IqCpQQKxj#jKGSUwQQKLIboUy7oJ!^OqQwxdx)4v z%psGA7xIold;B~}vm*yI@jt?<*!xWHkGrUgrv^qaR;T$Dh28iY6Do^$b~vhgPG#YB z43h%ddV7u}jl+Vh&d-E_dxfx&J3ET`lN~wdmzFEvKY^IQr=Mg%aW$>rS<#%5;GVwY zX>0c=4X9xX!31trwMGuM$EC8|s(riS%Dq*q8cIZ(%(Gkr4@k$pSyfQ2DI<8Vr=Mh+sPL!=suTJjvRdjj%*D)^Vm3m4cI}I%2n~ym(vT&``T6 zJrWRD1L{VC=j7Boc}E=X^uDumwxXP#dey{zc%{_yfVlnP{+1w;}7qsbG zXZ#D%D;v5fnZ|0hY{*X>ia5&~XLJvTvP7MCrg_?iV;#j7a2r*d?zG#z<`0%S8?QJw zU#%C%l6oNJ^-reLvMfV!`~|)y<}O*>1J?7`)t${R4&Lioemui_#7LBR&vvqtu&&Fg zLV_h1tzEBDnAnen4m?vcV@GT4a*P0%s}TG8Ei;lc4Qj76b?FxY>0z3OzYXZOqr#7I zGKC*XL!ve*G+N8V2+FMQF~2ccTG14;nNX*rTO9PW+~|57kQ;*|$E~Nj z*_JAhl#82fC!V~A_14b>z+B#r%I*ddPZt`J+haSbOtnpL!!Lpf+d?zOboYy&xJvXK zm%PQol*2ulv)ujg9c2S)#bwC!0=S^J+4e}3oIE+l@XCNrjCF)R9pU>`%gbAGXy1*1 z@HKmmxA2z9zo&H2F{lAx24?6sD}L|w-f?b#TO3B)%j9f`tF>sc0(swUB6U3FA%+CW zBF~9megKqIpGeF=_{0f8-*RSpQ*Q1Ezr{0l<-{t<7@F5fCm`-(CR+yjqcRqMc;iN7 zqyVp3eXo>k$P!;EpyqBn+qiF*9*CLop|{IZ4t9jDl929LrL4wdi5X8lN6}!+<*Am8 zxZY^ePN$4~JapjT$j}S%rHsDVj)X0Hdn8KM_sCW$?#joo5J;QrUsb7!XXcAX#JD(e6uldk+3lUSF+;^3XnO$hZlKihUuc-r+N?+;;7haRZrgOzVB$}C(L1a+O!qG^^rYAP8 zIa+9Jj_dA|j5MzoK_1&6fyeptr*Q>tjg+BW*-r#7Skw5FM(MYO_8GaAn_W#e`uaz_ z`SXHS)Itj<;d_W22VbhI3(Pe;t7Ilo)s&~Q zZ@4J+V!gvp4Dmlq98Z%sWC2of0nh-$w}PPxpm%u_q@8BY#NBQMPv4~L7v56VFZfzn z4+PqOxzg(rsW~>#EV%y}aA7R&M+{X1Z_(XB*Vh@CIbF#Z{H}AdBP-pXmYX91f%1&v zXTDW0paZY>PG?$18iEczNt?^?AH&OH9zgImz}MBkK0cQCE$EQ1J8H!g__&>eBV&aN zUxMDLngTMl#}}Z>Nq{7n$5qVgEA`X|U2iR-ud+ozW7VbM3>@!ln~e zTVAEczh%omO|O#ZpPu|JiT>%yzmVvE5(7U;132oi z?+gAvz~FzPfj@}Zzl8EnNBD!7{Y?S*=QOYy-T!iVYYZ2E3+Q>jtx*30&ieO`@COy@ vw;23OdixIw%x^E6|1DKoDw~smuA2N%_o;fQ2KaAOkmE6zqvb~~eE)v{SC1sI diff --git a/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewScreenTest_media_gallery_screen_connected.png b/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewScreenTest_media_gallery_screen_connected.png index ba58fe123adf153cdcf09590e469186c00621293..4b2ae23af1d0f07e1097360d331d9964a3898fbe 100644 GIT binary patch literal 21556 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 Id+GZB07$tASpWb4 diff --git a/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewScreenTest_media_gallery_screen_offline.png b/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewScreenTest_media_gallery_screen_offline.png index c3cd24c7cb614338681ef624156533bf16fcb899..8e09ab557037ca18d58a8bd2b27c283663e5b458 100644 GIT binary patch literal 22647 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 VM^KD6C@B2H>64Zw#l~0S{tqJVLudd1 literal 22692 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 G&i?`lUzXnh literal 13624 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 diff --git a/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewScreenTest_media_gallery_screen_with_share_large_file_prompt.png b/stream-chat-android-compose/src/test/snapshots/images/io.getstream.chat.android.compose.ui.attachments.preview_MediaGalleryPreviewScreenTest_media_gallery_screen_with_share_large_file_prompt.png index 7d999d9b244c8b6f9c8d841e933ca21686deed47..221ee9a8b1c2fba32044f68e65d7e31bd571d427 100644 GIT binary patch literal 35718 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