From 2687763bdaa36709667d38919b7cba1a7e26206f Mon Sep 17 00:00:00 2001 From: Fabian Henneke Date: Mon, 7 Sep 2020 10:10:59 +0200 Subject: Fix behavior on failing Git operations (#1084) --- .../java/com/zeapo/pwdstore/git/BaseGitActivity.kt | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'app/src/main/java/com/zeapo/pwdstore/git/BaseGitActivity.kt') diff --git a/app/src/main/java/com/zeapo/pwdstore/git/BaseGitActivity.kt b/app/src/main/java/com/zeapo/pwdstore/git/BaseGitActivity.kt index dd8ea731..a15972c1 100644 --- a/app/src/main/java/com/zeapo/pwdstore/git/BaseGitActivity.kt +++ b/app/src/main/java/com/zeapo/pwdstore/git/BaseGitActivity.kt @@ -61,7 +61,7 @@ abstract class BaseGitActivity : AppCompatActivity() { finish() } - fun finishAfterPromptOnErrorHandler(err: Throwable) { + fun promptOnErrorHandler(err: Throwable, onPromptDone: () -> Unit = {}) { val error = rootCauseException(err) if (!isExplicitlyUserInitiatedError(error)) { getEncryptedPrefs("git_operation").edit { @@ -69,12 +69,17 @@ abstract class BaseGitActivity : AppCompatActivity() { } sharedPrefs.edit { remove(PreferenceKeys.SSH_OPENKEYSTORE_KEYID) } d(error) - MaterialAlertDialogBuilder(this) - .setTitle(resources.getString(R.string.jgit_error_dialog_title)) - .setMessage(ErrorMessages[error]) - .setPositiveButton(resources.getString(R.string.dialog_ok)) { _, _ -> - finish() - }.show() + MaterialAlertDialogBuilder(this).run { + setTitle(resources.getString(R.string.jgit_error_dialog_title)) + setMessage(ErrorMessages[error]) + setPositiveButton(resources.getString(R.string.dialog_ok)) { _, _ -> } + setOnDismissListener { + onPromptDone() + } + show() + } + } else { + onPromptDone() } } -- cgit v1.2.3