From 58c5a17c5073ee9e903aaac7ec8960fad410b248 Mon Sep 17 00:00:00 2001 From: Ahmad Ansori Palembani Date: Fri, 20 Sep 2024 08:22:09 +0700 Subject: [PATCH] refactor(settings/data): Simplify backup code * Remove picker argument, it's permanently false now * Simplify backup file path retrieval * Remove unused code --- .../legacy/SettingsDataLegacyController.kt | 49 +++++-------------- 1 file changed, 12 insertions(+), 37 deletions(-) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/controllers/legacy/SettingsDataLegacyController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/controllers/legacy/SettingsDataLegacyController.kt index 749f8e3cb4..e8d227ad82 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/controllers/legacy/SettingsDataLegacyController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/controllers/legacy/SettingsDataLegacyController.kt @@ -251,10 +251,6 @@ class SettingsDataLegacyController : SettingsLegacyController() { storagePreferences.baseStorageDirectory().set(file.uri.toString()) } - CODE_BACKUP_CREATE -> { - doBackup(backupFlags, uri, true) - } - CODE_BACKUP_RESTORE -> { (activity as? MainActivity)?.showNotificationPermissionPrompt(true) showBackupRestoreDialog(uri) @@ -263,48 +259,28 @@ class SettingsDataLegacyController : SettingsLegacyController() { } } - private fun doBackup(options: BackupOptions, uri: Uri, requirePersist: Boolean = false) { + private fun createBackup(options: BackupOptions) { val activity = activity ?: return - val actualUri = - if (requirePersist) { - val intentFlags = Intent.FLAG_GRANT_READ_URI_PERMISSION or - Intent.FLAG_GRANT_WRITE_URI_PERMISSION - - activity.tryTakePersistableUriPermission(uri, intentFlags) - uri - } else { - UniFile.fromUri(activity, uri)?.createFile(Backup.getBackupFilename())?.uri - } ?: return - activity.toast(MR.strings.creating_backup) - BackupCreatorJob.startNow(activity, actualUri, options) - } - - private fun createBackup(options: BackupOptions, picker: Boolean = false) { backupFlags = options - val dir = storageManager.getBackupsDirectory() - if (dir == null) { + val uri = storageManager.getBackupsDirectory()?.createFile(Backup.getBackupFilename())?.uri + if (uri == null) { activity?.toast(MR.strings.invalid_location_generic) return } - if (!picker) { - doBackup(backupFlags, dir.uri) - return - } + /* Might not need it + if (requirePersist) { + val intentFlags = Intent.FLAG_GRANT_READ_URI_PERMISSION or + Intent.FLAG_GRANT_WRITE_URI_PERMISSION - try { - // Use Android's built-in file creator - val intent = Intent(Intent.ACTION_CREATE_DOCUMENT) - .addCategory(Intent.CATEGORY_OPENABLE) - .setType("application/*") - .putExtra(Intent.EXTRA_TITLE, Backup.getBackupFilename()) - - startActivityForResult(intent, CODE_BACKUP_CREATE) - } catch (e: ActivityNotFoundException) { - activity?.toast(MR.strings.file_picker_error) + activity.tryTakePersistableUriPermission(uri, intentFlags) } + */ + + activity.toast(MR.strings.creating_backup) + BackupCreatorJob.startNow(activity, uri, options) } private fun showBackupCreateDialog() { @@ -406,7 +382,6 @@ class SettingsDataLegacyController : SettingsLegacyController() { private const val CLEAR_CACHE_KEY = "pref_clear_cache_key" private const val CODE_DATA_DIR = 104 -private const val CODE_BACKUP_CREATE = 504 private const val CODE_BACKUP_RESTORE = 505 private const val HELP_URL = "https://tachiyomi.org/docs/guides/backups"