Restore caption rendering

This commit is contained in:
Benoit Marty 2025-01-22 08:34:59 +01:00 committed by Benoit Marty
parent 03c508cea0
commit 8137c68154

View file

@ -98,7 +98,6 @@ fun MediaViewerView(
var showOverlay by remember { mutableStateOf(true) } var showOverlay by remember { mutableStateOf(true) }
val defaultBottomPaddingInPixels = if (LocalInspectionMode.current) 303 else 0 val defaultBottomPaddingInPixels = if (LocalInspectionMode.current) 303 else 0
var bottomPaddingInPixels by remember { mutableIntStateOf(defaultBottomPaddingInPixels) }
val currentData = state.listData.getOrNull(state.currentIndex) val currentData = state.listData.getOrNull(state.currentIndex)
BackHandler { onBackClick() } BackHandler { onBackClick() }
Scaffold( Scaffold(
@ -135,40 +134,45 @@ fun MediaViewerView(
) )
} }
is MediaViewerPageData.MediaViewerData -> { is MediaViewerPageData.MediaViewerData -> {
var bottomPaddingInPixels by remember { mutableIntStateOf(defaultBottomPaddingInPixels) }
LaunchedEffect(Unit) { LaunchedEffect(Unit) {
state.eventSink(MediaViewerEvents.LoadMedia(dataForPage)) state.eventSink(MediaViewerEvents.LoadMedia(dataForPage))
} }
MediaViewerPage( Box(
isDisplayed = page == pagerState.settledPage, modifier = Modifier.fillMaxSize()
showOverlay = showOverlay, ) {
bottomPaddingInPixels = bottomPaddingInPixels, MediaViewerPage(
data = dataForPage, isDisplayed = page == pagerState.settledPage,
onDismiss = { showOverlay = showOverlay,
onBackClick() bottomPaddingInPixels = bottomPaddingInPixels,
}, data = dataForPage,
onRetry = { onDismiss = {
state.eventSink(MediaViewerEvents.LoadMedia(dataForPage)) onBackClick()
}, },
onDismissError = { onRetry = {
state.eventSink(MediaViewerEvents.ClearLoadingError(dataForPage)) state.eventSink(MediaViewerEvents.LoadMedia(dataForPage))
}, },
onShowOverlayChange = { onDismissError = {
showOverlay = it state.eventSink(MediaViewerEvents.ClearLoadingError(dataForPage))
} },
) onShowOverlayChange = {
// Bottom bar showOverlay = it
AnimatedVisibility(visible = showOverlay, enter = fadeIn(), exit = fadeOut()) { }
Box( )
modifier = Modifier // Bottom bar
.fillMaxSize() AnimatedVisibility(visible = showOverlay, enter = fadeIn(), exit = fadeOut()) {
.navigationBarsPadding() Box(
) { modifier = Modifier
MediaViewerBottomBar( .fillMaxSize()
modifier = Modifier.align(Alignment.BottomCenter), .navigationBarsPadding()
showDivider = dataForPage.mediaInfo.mimeType.isMimeTypeVideo(), ) {
caption = dataForPage.mediaInfo.caption, MediaViewerBottomBar(
onHeightChange = { bottomPaddingInPixels = it }, modifier = Modifier.align(Alignment.BottomCenter),
) showDivider = dataForPage.mediaInfo.mimeType.isMimeTypeVideo(),
caption = dataForPage.mediaInfo.caption,
onHeightChange = { bottomPaddingInPixels = it },
)
}
} }
} }
} }