diff options
| author | Harsh Shandilya <msfjarvis@gmail.com> | 2020-09-07 20:13:04 +0530 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-09-07 16:43:04 +0200 |
| commit | c65f3c7099895f75a9babdcbacefb2290a52d758 (patch) | |
| tree | dfef584a23f9be033aa900f9b99a5eb4c27a3fab /app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt | |
| parent | 2687763bdaa36709667d38919b7cba1a7e26206f (diff) | |
| download | HardenedPass-c65f3c7099895f75a9babdcbacefb2290a52d758.tar.gz HardenedPass-c65f3c7099895f75a9babdcbacefb2290a52d758.zip | |
UX fixups and improvements (#1086)
* git: re-add back button handling
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* Hide unsupported authentication methods
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* GitCommandExecutor: cleanup and address build warning
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* Address review comments
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* DecryptActivity: hide menu items until decrypt finishes
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* GitServerConfigActivity: don't finish on failure
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
Diffstat (limited to 'app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt')
| -rw-r--r-- | app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt | 32 |
1 files changed, 27 insertions, 5 deletions
diff --git a/app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt b/app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt index 97010c23..4bbc5965 100644 --- a/app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt +++ b/app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt @@ -6,8 +6,11 @@ package com.zeapo.pwdstore.git import android.os.Bundle import android.os.Handler +import android.view.MenuItem import android.view.View import androidx.core.os.postDelayed +import androidx.core.view.isVisible +import androidx.core.widget.doOnTextChanged import androidx.lifecycle.lifecycleScope import com.github.ajalt.timberkt.e import com.github.michaelbull.result.fold @@ -68,6 +71,19 @@ class GitServerConfigActivity : BaseGitActivity() { binding.serverUrl.setText(GitSettings.url) binding.serverBranch.setText(GitSettings.branch) + binding.serverUrl.doOnTextChanged { text, _, _, _ -> + if (text.isNullOrEmpty()) return@doOnTextChanged + if (text.startsWith("http://") || text.startsWith("https://")) { + binding.authModeSshKey.isVisible = false + binding.authModeOpenKeychain.isVisible = false + binding.authModePassword.isVisible = true + } else { + binding.authModeSshKey.isVisible = true + binding.authModeOpenKeychain.isVisible = true + binding.authModePassword.isVisible = true + } + } + binding.saveButton.setOnClickListener { when (val updateResult = GitSettings.updateConnectionSettingsIfValid( newAuthMode = newAuthMode, @@ -104,6 +120,16 @@ class GitServerConfigActivity : BaseGitActivity() { } } + override fun onOptionsItemSelected(item: MenuItem): Boolean { + return when (item.itemId) { + android.R.id.home -> { + finish() + true + } + else -> super.onOptionsItemSelected(item) + } + } + /** * Clones the repository, the directory exists, deletes it */ @@ -164,11 +190,7 @@ class GitServerConfigActivity : BaseGitActivity() { setResult(RESULT_OK) finish() }, - failure = { err -> - promptOnErrorHandler(err) { - finish() - } - }, + failure = ::promptOnErrorHandler, ) } } |
