From 2b1f101685472452ecb30d8a84bcc6b88167bd1c Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Sun, 26 Jul 2020 20:11:53 +0530 Subject: Correctly set error on incorrect credentials (#972) --- CHANGELOG.md | 1 + app/src/main/java/com/zeapo/pwdstore/git/GitOperation.kt | 7 +++---- app/src/main/res/layout/git_credential_layout.xml | 1 + 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ddd1521b..f17e7a0b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,7 @@ All notable changes to this project will be documented in this file. - Properly handle cases where files contain only TOTP secrets and no password - Allow creating nested directories directly +- I keep saying this but for real: error message for wrong SSH/HTTPS password is properly fixed now ## [1.10.1] - 2020-07-23 diff --git a/app/src/main/java/com/zeapo/pwdstore/git/GitOperation.kt b/app/src/main/java/com/zeapo/pwdstore/git/GitOperation.kt index 9d2c629f..90f72b7c 100644 --- a/app/src/main/java/com/zeapo/pwdstore/git/GitOperation.kt +++ b/app/src/main/java/com/zeapo/pwdstore/git/GitOperation.kt @@ -9,12 +9,12 @@ import android.content.Intent import android.view.LayoutInflater import androidx.annotation.StringRes import androidx.appcompat.app.AppCompatActivity -import androidx.core.content.ContextCompat import androidx.core.content.edit import androidx.preference.PreferenceManager import com.google.android.material.checkbox.MaterialCheckBox import com.google.android.material.dialog.MaterialAlertDialogBuilder import com.google.android.material.textfield.TextInputEditText +import com.google.android.material.textfield.TextInputLayout import com.zeapo.pwdstore.R import com.zeapo.pwdstore.UserPreference import com.zeapo.pwdstore.git.config.ConnectionMode @@ -37,7 +37,6 @@ import org.eclipse.jgit.transport.CredentialItem import org.eclipse.jgit.transport.CredentialsProvider import org.eclipse.jgit.transport.SshSessionFactory import org.eclipse.jgit.transport.URIish -import com.google.android.material.R as materialR private class GitOperationCredentialFinder( @@ -78,13 +77,13 @@ private class GitOperationCredentialFinder( @SuppressLint("InflateParams") val dialogView = layoutInflater.inflate(R.layout.git_credential_layout, null) + val credentialLayout = dialogView.findViewById(R.id.git_auth_passphrase_layout) val editCredential = dialogView.findViewById(R.id.git_auth_credential) editCredential.setHint(hintRes) val rememberCredential = dialogView.findViewById(R.id.git_auth_remember_credential) rememberCredential.setText(rememberRes) if (isRetry) - editCredential.setError(callingActivity.resources.getString(errorRes), - ContextCompat.getDrawable(callingActivity, materialR.drawable.mtrl_ic_error)) + credentialLayout.error = callingActivity.resources.getString(errorRes) MaterialAlertDialogBuilder(callingActivity).run { setTitle(R.string.passphrase_dialog_title) setMessage(messageRes) diff --git a/app/src/main/res/layout/git_credential_layout.xml b/app/src/main/res/layout/git_credential_layout.xml index 757658e6..180b904a 100644 --- a/app/src/main/res/layout/git_credential_layout.xml +++ b/app/src/main/res/layout/git_credential_layout.xml @@ -15,6 +15,7 @@ android:layout_height="wrap_content" app:endIconMode="password_toggle" app:hintEnabled="true" + app:errorEnabled="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"> -- cgit v1.2.3