mirror of
https://git.mihon.tech/mihonapp/mihon
synced 2024-11-25 14:45:59 +03:00
Show an error if backup file URI isn't returned to app when attempting restore
Related to #10028
This commit is contained in:
parent
ea99d77fda
commit
e572abb041
2 changed files with 20 additions and 16 deletions
|
@ -238,7 +238,7 @@ object SettingsBackupScreen : SearchableSettings {
|
|||
AlertDialog(
|
||||
onDismissRequest = onDismissRequest,
|
||||
title = { Text(text = stringResource(R.string.invalid_backup_file)) },
|
||||
text = { Text(text = "${err.uri}\n\n${err.message}") },
|
||||
text = { Text(text = listOfNotNull(err.uri, err.message).joinToString("\n\n")) },
|
||||
dismissButton = {
|
||||
TextButton(
|
||||
onClick = {
|
||||
|
@ -310,7 +310,11 @@ object SettingsBackupScreen : SearchableSettings {
|
|||
}
|
||||
},
|
||||
) {
|
||||
if (it != null) {
|
||||
if (it == null) {
|
||||
error = InvalidRestore(message = context.getString(R.string.file_null_uri_error))
|
||||
return@rememberLauncherForActivityResult
|
||||
}
|
||||
|
||||
val results = try {
|
||||
BackupFileValidator().validate(context, it)
|
||||
} catch (e: Exception) {
|
||||
|
@ -325,7 +329,6 @@ object SettingsBackupScreen : SearchableSettings {
|
|||
|
||||
error = MissingRestoreComponents(it, results.missingSources, results.missingTrackers)
|
||||
}
|
||||
}
|
||||
|
||||
return Preference.PreferenceItem.TextPreference(
|
||||
title = stringResource(R.string.pref_restore_backup),
|
||||
|
@ -421,6 +424,6 @@ private data class MissingRestoreComponents(
|
|||
)
|
||||
|
||||
private data class InvalidRestore(
|
||||
val uri: Uri,
|
||||
val uri: Uri? = null,
|
||||
val message: String,
|
||||
)
|
||||
|
|
|
@ -871,6 +871,7 @@
|
|||
<string name="file_select_cover">Select cover image</string>
|
||||
<string name="file_select_backup">Select backup file</string>
|
||||
<string name="file_picker_error">No file picker app found</string>
|
||||
<string name="file_null_uri_error">File picker failed to return file to app</string>
|
||||
|
||||
<!--UpdateCheck-->
|
||||
<string name="update_check_confirm">Download</string>
|
||||
|
|
Loading…
Reference in a new issue