diff options
| author | Fabian Henneke <FabianHenneke@users.noreply.github.com> | 2020-09-03 10:48:14 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-09-03 14:18:14 +0530 |
| commit | 3840f43fa0026b06b15913379761c1bf6b6a1c68 (patch) | |
| tree | 41a5d47c3ed3ef06430d2d045876301d4db416ad /app/src/main/java/com/zeapo/pwdstore/git/GitConfigActivity.kt | |
| parent | 258ccc601605f3112d9310043b9a34bf6ca3c9e0 (diff) | |
| download | HardenedPass-3840f43fa0026b06b15913379761c1bf6b6a1c68.tar.gz HardenedPass-3840f43fa0026b06b15913379761c1bf6b6a1c68.zip | |
Refactor Git operations and auth (#1066)
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
Diffstat (limited to 'app/src/main/java/com/zeapo/pwdstore/git/GitConfigActivity.kt')
| -rw-r--r-- | app/src/main/java/com/zeapo/pwdstore/git/GitConfigActivity.kt | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/app/src/main/java/com/zeapo/pwdstore/git/GitConfigActivity.kt b/app/src/main/java/com/zeapo/pwdstore/git/GitConfigActivity.kt index 89376bfd..c6ab3ca3 100644 --- a/app/src/main/java/com/zeapo/pwdstore/git/GitConfigActivity.kt +++ b/app/src/main/java/com/zeapo/pwdstore/git/GitConfigActivity.kt @@ -11,6 +11,7 @@ import android.util.Patterns import androidx.core.os.postDelayed import androidx.lifecycle.lifecycleScope import com.github.ajalt.timberkt.e +import com.github.michaelbull.result.fold import com.google.android.material.dialog.MaterialAlertDialogBuilder import com.google.android.material.snackbar.Snackbar import com.zeapo.pwdstore.R @@ -75,8 +76,34 @@ class GitConfigActivity : BaseGitActivity() { e(ex) { "Failed to start GitLogActivity" } } } - binding.gitAbortRebase.setOnClickListener { lifecycleScope.launch { launchGitOperation(BREAK_OUT_OF_DETACHED) } } - binding.gitResetToRemote.setOnClickListener { lifecycleScope.launch { launchGitOperation(REQUEST_RESET) } } + binding.gitAbortRebase.setOnClickListener { + lifecycleScope.launch { + launchGitOperation(BREAK_OUT_OF_DETACHED).fold( + success = { + MaterialAlertDialogBuilder(this@GitConfigActivity) + .setTitle(resources.getString(R.string.git_abort_and_push_title)) + .setMessage(resources.getString( + R.string.git_break_out_of_detached_success, + GitSettings.branch, + "conflicting-${GitSettings.branch}-...", + )) + .setOnCancelListener { finish() } + .setPositiveButton(resources.getString(R.string.dialog_ok)) { _, _ -> + finish() + }.show() + }, + failure = ::finishAfterPromptOnErrorHandler, + ) + } + } + binding.gitResetToRemote.setOnClickListener { + lifecycleScope.launch { + launchGitOperation(REQUEST_RESET).fold( + success = ::finishOnSuccessHandler, + failure = ::finishAfterPromptOnErrorHandler, + ) + } + } } /** |
