Refactor: Make FullScreenDialog dismissible
This commit introduces a dismiss functionality to the `FullScreenDialog`. The `FullScreenDialog` now accepts an `onDismiss` lambda parameter. This `onDismiss` lambda is invoked when a dismiss request is made for the dialog. In `PhotoViewScreen`, the `onDismiss` lambda passed to `FullScreenDialog` is now the `onDismiss` lambda received by the `PhotoViewScreen` itself.
This commit is contained in:
@@ -12,13 +12,14 @@ import androidx.compose.ui.zIndex
|
|||||||
@Composable
|
@Composable
|
||||||
fun FullScreenDialog(
|
fun FullScreenDialog(
|
||||||
modifier: Modifier = Modifier,
|
modifier: Modifier = Modifier,
|
||||||
content: @Composable () -> Unit
|
onDismiss: () -> Unit = {},
|
||||||
|
content: @Composable () -> Unit,
|
||||||
) {
|
) {
|
||||||
Dialog(
|
Dialog(
|
||||||
onDismissRequest = {},
|
onDismissRequest = onDismiss,
|
||||||
DialogProperties(
|
properties = DialogProperties(
|
||||||
usePlatformDefaultWidth = false,
|
usePlatformDefaultWidth = false,
|
||||||
decorFitsSystemWindows = false
|
decorFitsSystemWindows = false,
|
||||||
)
|
)
|
||||||
) {
|
) {
|
||||||
Box(
|
Box(
|
||||||
|
|||||||
+4
-1
@@ -80,7 +80,10 @@ fun PhotoViewDialog(
|
|||||||
val applicationContext = LocalContext.current.applicationContext
|
val applicationContext = LocalContext.current.applicationContext
|
||||||
|
|
||||||
if (photoViewerInfo != null) {
|
if (photoViewerInfo != null) {
|
||||||
FullScreenDialog(modifier = modifier) {
|
FullScreenDialog(
|
||||||
|
modifier = modifier,
|
||||||
|
onDismiss = onDismiss
|
||||||
|
) {
|
||||||
val viewModel = remember(true) {
|
val viewModel = remember(true) {
|
||||||
PhotoViewViewModelImpl(
|
PhotoViewViewModelImpl(
|
||||||
arguments = PhotoViewArguments(
|
arguments = PhotoViewArguments(
|
||||||
|
|||||||
Reference in New Issue
Block a user