Improve client cert password handling

This commit is contained in:
Niko Diamadis
2024-06-06 00:42:36 +02:00
parent 4fac47f3b1
commit 090edb75fc
2 changed files with 7 additions and 1 deletions

View File

@@ -79,8 +79,12 @@ internal class AdvancedDialog(
showRemoveClientCertificate() showRemoveClientCertificate()
} }
binding.clientCertPasswordEdittext.doOnTextChanged { _, _, _, _ -> binding.clientCertPasswordEdittext.doOnTextChanged { _, _, _, _ ->
if (binding.selectedClientCert.text.toString() ==
context.getString(R.string.certificate_found)
) {
showPasswordMissing(binding.clientCertPasswordEdittext.text.toString().isEmpty()) showPasswordMissing(binding.clientCertPasswordEdittext.text.toString().isEmpty())
} }
}
val dialog = MaterialAlertDialogBuilder(context) val dialog = MaterialAlertDialogBuilder(context)
.setView(binding.root) .setView(binding.root)
.setTitle(R.string.advanced_settings) .setTitle(R.string.advanced_settings)
@@ -114,6 +118,7 @@ internal class AdvancedDialog(
binding.toggleClientCert.setOnClickListener { onClickSelectClientCertificate.run() } binding.toggleClientCert.setOnClickListener { onClickSelectClientCertificate.run() }
binding.selectedClientCert.setText(R.string.no_certificate_selected) binding.selectedClientCert.setText(R.string.no_certificate_selected)
showPasswordMissing(false) showPasswordMissing(false)
binding.clientCertPasswordEdittext.text = null
} }
fun showRemoveClientCertificate() { fun showRemoveClientCertificate() {

View File

@@ -181,6 +181,7 @@ internal class LoginActivity : AppCompatActivity() {
.onClickRemoveCaCertificate { .onClickRemoveCaCertificate {
invalidateUrl() invalidateUrl()
caCertPath = null caCertPath = null
clientCertPassword = null
} }
.onClickSelectClientCertificate { .onClickSelectClientCertificate {
invalidateUrl() invalidateUrl()