diff options
Diffstat (limited to 'app/src/main/java')
-rw-r--r-- | app/src/main/java/com/zeapo/pwdstore/autofill/oreo/AutofillScenario.kt | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/app/src/main/java/com/zeapo/pwdstore/autofill/oreo/AutofillScenario.kt b/app/src/main/java/com/zeapo/pwdstore/autofill/oreo/AutofillScenario.kt index daa2db45..f4fd5cf1 100644 --- a/app/src/main/java/com/zeapo/pwdstore/autofill/oreo/AutofillScenario.kt +++ b/app/src/main/java/com/zeapo/pwdstore/autofill/oreo/AutofillScenario.kt @@ -12,6 +12,8 @@ import android.view.autofill.AutofillId import android.view.autofill.AutofillValue import androidx.annotation.RequiresApi import com.github.ajalt.timberkt.e +import com.github.michaelbull.result.getOrElse +import com.github.michaelbull.result.runCatching enum class AutofillAction { Match, Search, Generate, FillOtpFromSms @@ -36,7 +38,7 @@ sealed class AutofillScenario<out T : Any> { const val BUNDLE_KEY_GENERIC_PASSWORD_IDS = "genericPasswordIds" fun fromBundle(clientState: Bundle): AutofillScenario<AutofillId>? { - return try { + return runCatching { Builder<AutofillId>().apply { username = clientState.getParcelable(BUNDLE_KEY_USERNAME_ID) fillUsername = clientState.getBoolean(BUNDLE_KEY_FILL_USERNAME) @@ -57,8 +59,8 @@ sealed class AutofillScenario<out T : Any> { ) ?: emptyList() ) }.build() - } catch (exception: IllegalArgumentException) { - e(exception) + }.getOrElse { e -> + e(e) null } } |