feat: Show snackbar on save folder change

This commit is contained in:
Myzel394 2023-12-31 21:15:42 +01:00
parent de72f88953
commit fa72ee096e
No known key found for this signature in database
GPG Key ID: 79CC92F37B3E1A2B
3 changed files with 13 additions and 1 deletions

View File

@ -28,6 +28,8 @@ import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.ModalBottomSheet
import androidx.compose.material3.SnackbarDuration
import androidx.compose.material3.SnackbarHostState
import androidx.compose.material3.Text
import androidx.compose.material3.rememberModalBottomSheetState
import androidx.compose.runtime.Composable
@ -65,11 +67,13 @@ import java.net.URLDecoder
@Composable
fun SaveFolderTile(
settings: AppSettings,
snackbarHostState: SnackbarHostState,
) {
val scope = rememberCoroutineScope()
val context = LocalContext.current
val dataStore = context.dataStore
val successMessage = stringResource(R.string.ui_settings_option_saveFolder_success)
fun updateValue(path: String?) {
if (settings.saveFolder != null && settings.saveFolder != RECORDER_MEDIA_SELECTED_VALUE) {
runCatching {
@ -91,6 +95,10 @@ fun SaveFolderTile(
dataStore.updateData {
it.setSaveFolder(path)
}
snackbarHostState.showSnackbar(
message = successMessage,
duration = SnackbarDuration.Short,
)
}
}

View File

@ -157,7 +157,10 @@ fun SettingsScreen(
verticalArrangement = Arrangement.spacedBy(32.dp),
) {
Column {
SaveFolderTile(settings = settings)
SaveFolderTile(
settings = settings,
snackbarHostState = snackbarHostState,
)
DividerTitle(
title = stringResource(R.string.ui_settings_sections_audio_title),

View File

@ -172,4 +172,5 @@
<string name="ui_settings_option_saveFolder_action_custom_label">Select a custom location</string>
<string name="ui_settings_option_saveFolder_action_dcim_label">Use the DCIM folder</string>
<string name="ui_settings_option_saveFolder_dcimValue">DCIM Folder</string>
<string name="ui_settings_option_saveFolder_success">Batches Folder has been changed successfully</string>
</resources>