aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt
diff options
context:
space:
mode:
authorHarsh Shandilya <msfjarvis@gmail.com>2020-09-07 20:13:04 +0530
committerGitHub <noreply@github.com>2020-09-07 16:43:04 +0200
commitc65f3c7099895f75a9babdcbacefb2290a52d758 (patch)
treedfef584a23f9be033aa900f9b99a5eb4c27a3fab /app/src/main/java/com/zeapo/pwdstore/git/GitServerConfigActivity.kt
parent2687763bdaa36709667d38919b7cba1a7e26206f (diff)
downloadHardenedPass-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.kt32
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,
)
}
}