diff options
-rw-r--r-- | app/src/main/java/dev/msfjarvis/aps/ui/pgp/PGPKeyImportActivity.kt | 17 | ||||
-rw-r--r-- | app/src/main/java/dev/msfjarvis/aps/ui/settings/PGPSettings.kt | 10 |
2 files changed, 15 insertions, 12 deletions
diff --git a/app/src/main/java/dev/msfjarvis/aps/ui/pgp/PGPKeyImportActivity.kt b/app/src/main/java/dev/msfjarvis/aps/ui/pgp/PGPKeyImportActivity.kt index b97de5e0..02ea4fc3 100644 --- a/app/src/main/java/dev/msfjarvis/aps/ui/pgp/PGPKeyImportActivity.kt +++ b/app/src/main/java/dev/msfjarvis/aps/ui/pgp/PGPKeyImportActivity.kt @@ -29,7 +29,7 @@ class PGPKeyImportActivity : AppCompatActivity() { registerForActivityResult(OpenDocument()) { uri -> runCatching { if (uri == null) { - throw IllegalStateException("Selected URI was null") + return@runCatching null } val keyInputStream = contentResolver.openInputStream(uri) @@ -41,13 +41,14 @@ class PGPKeyImportActivity : AppCompatActivity() { } .mapBoth( { key -> - require(key != null) { "Key cannot be null here" } - MaterialAlertDialogBuilder(this) - .setTitle(getString(R.string.pgp_key_import_succeeded)) - .setMessage(getString(R.string.pgp_key_import_succeeded_message, tryGetId(key))) - .setPositiveButton(android.R.string.ok) { _, _ -> finish() } - .setOnCancelListener { finish() } - .show() + if (key != null) { + MaterialAlertDialogBuilder(this) + .setTitle(getString(R.string.pgp_key_import_succeeded)) + .setMessage(getString(R.string.pgp_key_import_succeeded_message, tryGetId(key))) + .setPositiveButton(android.R.string.ok) { _, _ -> finish() } + .setOnCancelListener { finish() } + .show() + } }, { throwable -> MaterialAlertDialogBuilder(this) diff --git a/app/src/main/java/dev/msfjarvis/aps/ui/settings/PGPSettings.kt b/app/src/main/java/dev/msfjarvis/aps/ui/settings/PGPSettings.kt index 86f23c32..b81af006 100644 --- a/app/src/main/java/dev/msfjarvis/aps/ui/settings/PGPSettings.kt +++ b/app/src/main/java/dev/msfjarvis/aps/ui/settings/PGPSettings.kt @@ -18,13 +18,15 @@ class PGPSettings(private val activity: FragmentActivity) : SettingsProvider { override fun provideSettings(builder: PreferenceScreen.Builder) { builder.apply { - checkBox(Feature.EnablePGPainlessBackend.configKey) { - title = "Enable new PGP backend" - persistent = true - } + val enablePGPainless = + checkBox(Feature.EnablePGPainlessBackend.configKey) { + title = "Enable new PGP backend" + persistent = true + } pref("_") { title = "Import PGP key" persistent = false + dependency = enablePGPainless.key onClick { activity.launchActivity(PGPKeyImportActivity::class.java) false |