From 1d1bfbb5ad06ac6c0a63c949a64406cf100a3505 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Sat, 5 Sep 2020 20:45:21 +0530 Subject: [PATCH] PasswordGeneratorDialogFragment: use runCatching to replace exception handling Signed-off-by: Harsh Shandilya --- .../ui/dialogs/PasswordGeneratorDialogFragment.kt | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/zeapo/pwdstore/ui/dialogs/PasswordGeneratorDialogFragment.kt b/app/src/main/java/com/zeapo/pwdstore/ui/dialogs/PasswordGeneratorDialogFragment.kt index 5528348f..7aa66a03 100644 --- a/app/src/main/java/com/zeapo/pwdstore/ui/dialogs/PasswordGeneratorDialogFragment.kt +++ b/app/src/main/java/com/zeapo/pwdstore/ui/dialogs/PasswordGeneratorDialogFragment.kt @@ -17,10 +17,11 @@ import androidx.annotation.IdRes import androidx.appcompat.widget.AppCompatEditText import androidx.appcompat.widget.AppCompatTextView import androidx.fragment.app.DialogFragment +import com.github.michaelbull.result.getOrElse +import com.github.michaelbull.result.runCatching import com.google.android.material.dialog.MaterialAlertDialogBuilder import com.zeapo.pwdstore.R import com.zeapo.pwdstore.pwgen.PasswordGenerator -import com.zeapo.pwdstore.pwgen.PasswordGenerator.PasswordGeneratorException import com.zeapo.pwdstore.pwgen.PasswordGenerator.generate import com.zeapo.pwdstore.pwgen.PasswordGenerator.setPrefs import com.zeapo.pwdstore.pwgen.PasswordOption @@ -71,11 +72,11 @@ class PasswordGeneratorDialogFragment : DialogFragment() { private fun generate(passwordField: AppCompatTextView) { setPreferences() - try { - passwordField.text = generate(requireContext().applicationContext) - } catch (e: PasswordGeneratorException) { + passwordField.text = runCatching { + generate(requireContext().applicationContext) + }.getOrElse { e -> Toast.makeText(requireActivity(), e.message, Toast.LENGTH_SHORT).show() - passwordField.text = "" + "" } }