mirror of
https://github.com/Myzel394/Alibi.git
synced 2025-06-19 07:15:25 +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.semantics.semantics
|
||||||
import androidx.compose.ui.text.style.TextAlign
|
import androidx.compose.ui.text.style.TextAlign
|
||||||
import androidx.compose.ui.unit.dp
|
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.R
|
||||||
import app.myzel394.alibi.dataStore
|
import app.myzel394.alibi.dataStore
|
||||||
import app.myzel394.alibi.db.AppSettings
|
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.MessageType
|
||||||
import app.myzel394.alibi.ui.components.atoms.PermissionRequester
|
import app.myzel394.alibi.ui.components.atoms.PermissionRequester
|
||||||
import app.myzel394.alibi.ui.components.atoms.SettingsTile
|
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.PermissionHelper
|
||||||
import app.myzel394.alibi.ui.utils.rememberFolderSelectorDialog
|
import app.myzel394.alibi.ui.utils.rememberFolderSelectorDialog
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
@ -172,6 +175,38 @@ fun SaveFolderTile(
|
|||||||
textAlign = TextAlign.Center,
|
textAlign = TextAlign.Center,
|
||||||
modifier = Modifier.fillMaxWidth(),
|
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_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_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_videoRecorder_state_recording_title">Recording Video</string>
|
||||||
|
<string name="ui_settings_option_saveFolder_openFolder_label">Open Folder in Files</string>
|
||||||
</resources>
|
</resources>
|
Loading…
x
Reference in New Issue
Block a user