From 3d30e38b79ebac6473e99a04bf1af1e763e85bf8 Mon Sep 17 00:00:00 2001 From: Juha Heinanen Date: Thu, 2 Apr 2020 09:39:58 +0300 Subject: [PATCH] - Added "Show Password" checkbox to password prompt. --- .../kotlin/com/tutpro/baresip/MainActivity.kt | 16 ++++++++++++++++ app/src/main/res/layout/password_dialog.xml | 10 +++++++++- app/src/main/res/values-fi/strings.xml | 1 + app/src/main/res/values/strings.xml | 1 + 4 files changed, 27 insertions(+), 1 deletion(-) diff --git a/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt b/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt index e75015c3..2c1976f5 100644 --- a/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt +++ b/app/src/main/kotlin/com/tutpro/baresip/MainActivity.kt @@ -15,6 +15,8 @@ import android.support.v4.content.LocalBroadcastManager import android.view.inputmethod.InputMethodManager import android.text.InputType import android.text.TextWatcher +import android.text.method.HideReturnsTransformationMethod +import android.text.method.PasswordTransformationMethod import android.widget.* import android.view.* @@ -956,6 +958,13 @@ class MainActivity : AppCompatActivity() { .inflate(R.layout.password_dialog, findViewById(android.R.id.content) as ViewGroup, false) val input = viewInflated.findViewById(R.id.password) as EditText + val checkBox = viewInflated.findViewById(R.id.checkbox) as CheckBox + checkBox.setOnCheckedChangeListener { buttonView, isChecked -> + if (isChecked) + input.transformationMethod = HideReturnsTransformationMethod() + else + input.transformationMethod = PasswordTransformationMethod() + } builder.setView(viewInflated) builder.setPositiveButton(android.R.string.ok) { dialog, _ -> dialog.dismiss() @@ -986,6 +995,13 @@ class MainActivity : AppCompatActivity() { .inflate(R.layout.password_dialog, findViewById(android.R.id.content) as ViewGroup, false) val input = viewInflated.findViewById(R.id.password) as EditText + val checkBox = viewInflated.findViewById(R.id.checkbox) as CheckBox + checkBox.setOnCheckedChangeListener { buttonView, isChecked -> + if (isChecked) + input.transformationMethod = HideReturnsTransformationMethod() + else + input.transformationMethod = PasswordTransformationMethod() + } builder.setView(viewInflated) builder.setPositiveButton(android.R.string.ok) { dialog, _ -> dialog.dismiss() diff --git a/app/src/main/res/layout/password_dialog.xml b/app/src/main/res/layout/password_dialog.xml index 0bc7ed19..ada147a0 100644 --- a/app/src/main/res/layout/password_dialog.xml +++ b/app/src/main/res/layout/password_dialog.xml @@ -8,14 +8,22 @@ android:layout_width="match_parent" android:layout_height="wrap_content"> - + + \ No newline at end of file diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml index 1403c1d5..1952be53 100644 --- a/app/src/main/res/values-fi/strings.xml +++ b/app/src/main/res/values-fi/strings.xml @@ -358,4 +358,5 @@ ilman Mikrofoni-käyttöoikeutta. Tilin %1$s salasana + Näytä salasana diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index b72d673e..e7696f4e 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -317,4 +317,5 @@ You are not able to place or answer calls without Microphone permission. Account %1$s Authentication Password + Show Password