mirror of
https://github.com/Myzel394/Alibi.git
synced 2025-06-18 23:05:26 +02:00
feat: Add open folder for custom folders in SaveFolderTile
This commit is contained in:
parent
60ee8d9395
commit
986bf1d98a
@ -50,6 +50,8 @@ import androidx.compose.ui.semantics.contentDescription
|
||||
import androidx.compose.ui.semantics.semantics
|
||||
import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.core.net.toUri
|
||||
import androidx.documentfile.provider.DocumentFile
|
||||
import app.myzel394.alibi.R
|
||||
import app.myzel394.alibi.dataStore
|
||||
import app.myzel394.alibi.db.AppSettings
|
||||
@ -61,6 +63,7 @@ import app.myzel394.alibi.ui.components.atoms.MessageBox
|
||||
import app.myzel394.alibi.ui.components.atoms.MessageType
|
||||
import app.myzel394.alibi.ui.components.atoms.PermissionRequester
|
||||
import app.myzel394.alibi.ui.components.atoms.SettingsTile
|
||||
import app.myzel394.alibi.ui.effects.rememberOpenUri
|
||||
import app.myzel394.alibi.ui.utils.PermissionHelper
|
||||
import app.myzel394.alibi.ui.utils.rememberFolderSelectorDialog
|
||||
import kotlinx.coroutines.launch
|
||||
@ -172,6 +175,38 @@ fun SaveFolderTile(
|
||||
textAlign = TextAlign.Center,
|
||||
modifier = Modifier.fillMaxWidth(),
|
||||
)
|
||||
|
||||
|
||||
val openFolder = rememberOpenUri()
|
||||
|
||||
when (settings.saveFolder) {
|
||||
null -> {}
|
||||
RECORDER_MEDIA_SELECTED_VALUE -> {}
|
||||
// Custom folder
|
||||
else ->
|
||||
Button(
|
||||
onClick = {
|
||||
openFolder(
|
||||
DocumentFile.fromTreeUri(
|
||||
context,
|
||||
settings.saveFolder.toUri(),
|
||||
)!!.uri
|
||||
)
|
||||
},
|
||||
shape = MaterialTheme.shapes.small,
|
||||
// TODO: Adjust padding everywhere
|
||||
contentPadding = ButtonDefaults.TextButtonContentPadding,
|
||||
colors = ButtonDefaults.filledTonalButtonColors(
|
||||
contentColor = MaterialTheme.colorScheme.onTertiaryContainer,
|
||||
containerColor = MaterialTheme.colorScheme.tertiaryContainer,
|
||||
),
|
||||
) {
|
||||
Text(
|
||||
stringResource(R.string.ui_settings_option_saveFolder_openFolder_label),
|
||||
fontSize = MaterialTheme.typography.bodySmall.fontSize,
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
)
|
||||
|
@ -182,4 +182,5 @@
|
||||
<string name="ui_severeError_fileSaverUnavailable_title">File Manager app not found</string>
|
||||
<string name="ui_severeError_fileSaverUnavailable_text">Alibi couldn\'t find a file manager app on your phone. Please install a file manager app and try again. If this message still appears, you can try using a custom batches folder in the advanced settings section. Alibi may not fully work on your device.</string>
|
||||
<string name="ui_videoRecorder_state_recording_title">Recording Video</string>
|
||||
<string name="ui_settings_option_saveFolder_openFolder_label">Open Folder in Files</string>
|
||||
</resources>
|
Loading…
x
Reference in New Issue
Block a user