diff --git a/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/EditScreen.kt b/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/EditScreen.kt index 623986a..fafee1f 100644 --- a/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/EditScreen.kt +++ b/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/EditScreen.kt @@ -76,7 +76,6 @@ import dev.arkbuilders.arkretouch.presentation.theme.Gray import dev.arkbuilders.arkretouch.presentation.utils.askWritePermissions import dev.arkbuilders.arkretouch.presentation.utils.getActivity import dev.arkbuilders.arkretouch.presentation.utils.isWritePermGranted -import dev.arkbuilders.arkretouch.presentation.utils.toast import java.nio.file.Path @Composable @@ -365,13 +364,9 @@ private fun BoxScope.TopMenu( SavePathDialog( initialImagePath = imagePath, fragmentManager = fragmentManager, - onEmptyFileName = { - context.toast(R.string.ark_retouch_file_name_missing) - }, onDismissClick = { viewModel.showSavePathDialog = false }, onPositiveClick = { savePath -> viewModel.saveImage(context, savePath) - viewModel.showSavePathDialog = false } ) if (viewModel.showMoreOptionsPopup) diff --git a/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/EditViewModel.kt b/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/EditViewModel.kt index 3b17ad0..534df35 100644 --- a/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/EditViewModel.kt +++ b/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/EditViewModel.kt @@ -143,6 +143,7 @@ class EditViewModel( ) { _, _ -> } imageSaved = true isSavingImage = false + showSavePathDialog = false } } diff --git a/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/NewImageOptionsDialog.kt b/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/NewImageOptionsDialog.kt index 7fba923..27f9b00 100644 --- a/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/NewImageOptionsDialog.kt +++ b/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/NewImageOptionsDialog.kt @@ -308,7 +308,7 @@ fun NewImageOptionsDialog( isVisible = false } ) { - Text("Ok") + Text(stringResource(R.string.ok)) } } } diff --git a/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/SavePathDialog.kt b/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/SavePathDialog.kt index 9dee1ef..b280a3e 100644 --- a/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/SavePathDialog.kt +++ b/app/src/main/java/dev/arkbuilders/arkretouch/presentation/edit/SavePathDialog.kt @@ -44,6 +44,8 @@ import kotlin.io.path.name import androidx.compose.material.CircularProgressIndicator import androidx.compose.runtime.key import androidx.compose.ui.ExperimentalComposeUiApi +import androidx.compose.ui.platform.LocalContext +import dev.arkbuilders.arkretouch.presentation.utils.toast import java.nio.file.Files import kotlin.streams.toList @@ -52,7 +54,6 @@ import kotlin.streams.toList fun SavePathDialog( initialImagePath: Path?, fragmentManager: FragmentManager, - onEmptyFileName: () -> Unit, onDismissClick: () -> Unit, onPositiveClick: (Path) -> Unit ) { @@ -70,6 +71,8 @@ fun SavePathDialog( val lifecycleOwner = LocalLifecycleOwner.current + val context = LocalContext.current + LaunchedEffect(overwriteOriginalPath) { if (overwriteOriginalPath) { imagePath?.let { @@ -130,7 +133,9 @@ fun SavePathDialog( onValueChange = { name = it if (name.isEmpty()) { - onEmptyFileName() + context.toast( + R.string.ark_retouch_notify_missing_file_name + ) return@OutlinedTextField } currentPath?.let { path -> @@ -181,11 +186,18 @@ fun SavePathDialog( modifier = Modifier.padding(5.dp), onClick = { if (name.isEmpty()) { - onEmptyFileName() + context.toast( + R.string.ark_retouch_notify_missing_file_name + ) + return@Button + } + if (currentPath == null) { + context.toast( + R.string.ark_retouch_notify_choose_folder + ) return@Button } - if (currentPath != null) - onPositiveClick(currentPath!!.resolve(name)) + onPositiveClick(currentPath?.resolve(name)!!) } ) { Text(text = stringResource(R.string.ok)) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 987935c..9a4036a 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -36,5 +36,6 @@ Please enter height Intensity Size - Please provide file name + Please pick folder to save image + Please provide file name