mirror of
https://github.com/SchildiChat/SchildiChat-android.git
synced 2025-02-17 04:20:00 +03:00
applying autofill hints for phonenumber and email entry
This commit is contained in:
parent
df6ebcacd1
commit
a8b73f0cf9
3 changed files with 16 additions and 9 deletions
|
@ -16,9 +16,11 @@
|
||||||
|
|
||||||
package im.vector.app.core.extensions
|
package im.vector.app.core.extensions
|
||||||
|
|
||||||
|
import android.os.Build
|
||||||
import android.text.Editable
|
import android.text.Editable
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.inputmethod.EditorInfo
|
import android.view.inputmethod.EditorInfo
|
||||||
|
import androidx.autofill.HintConstants
|
||||||
import androidx.lifecycle.LifecycleOwner
|
import androidx.lifecycle.LifecycleOwner
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
import com.google.android.material.textfield.TextInputLayout
|
import com.google.android.material.textfield.TextInputLayout
|
||||||
|
@ -79,3 +81,12 @@ fun TextInputLayout.setOnFocusLostListener(action: () -> Unit) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun TextInputLayout.autofillPhoneNumber() = setAutofillHint(HintConstants.AUTOFILL_HINT_PHONE_NUMBER)
|
||||||
|
fun TextInputLayout.autofillEmail() = setAutofillHint(HintConstants.AUTOFILL_HINT_EMAIL_ADDRESS)
|
||||||
|
|
||||||
|
private fun TextInputLayout.setAutofillHint(hintType: String) {
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
||||||
|
setAutofillHints(hintType)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -16,13 +16,12 @@
|
||||||
|
|
||||||
package im.vector.app.features.onboarding.ftueauth
|
package im.vector.app.features.onboarding.ftueauth
|
||||||
|
|
||||||
import android.os.Build
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import androidx.autofill.HintConstants
|
|
||||||
import im.vector.app.core.extensions.associateContentStateWith
|
import im.vector.app.core.extensions.associateContentStateWith
|
||||||
|
import im.vector.app.core.extensions.autofillEmail
|
||||||
import im.vector.app.core.extensions.clearErrorOnChange
|
import im.vector.app.core.extensions.clearErrorOnChange
|
||||||
import im.vector.app.core.extensions.content
|
import im.vector.app.core.extensions.content
|
||||||
import im.vector.app.core.extensions.isEmail
|
import im.vector.app.core.extensions.isEmail
|
||||||
|
@ -49,13 +48,7 @@ class FtueAuthEmailEntryFragment @Inject constructor() : AbstractFtueAuthFragmen
|
||||||
views.emailEntryInput.setOnImeDoneListener { updateEmail() }
|
views.emailEntryInput.setOnImeDoneListener { updateEmail() }
|
||||||
views.emailEntryInput.clearErrorOnChange(viewLifecycleOwner)
|
views.emailEntryInput.clearErrorOnChange(viewLifecycleOwner)
|
||||||
views.emailEntrySubmit.debouncedClicks { updateEmail() }
|
views.emailEntrySubmit.debouncedClicks { updateEmail() }
|
||||||
setupAutoFill()
|
views.emailEntryInput.autofillEmail()
|
||||||
}
|
|
||||||
|
|
||||||
private fun setupAutoFill() {
|
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
|
||||||
views.emailEntryInput.setAutofillHints(HintConstants.AUTOFILL_HINT_PHONE_NUMBER)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun updateEmail() {
|
private fun updateEmail() {
|
||||||
|
|
|
@ -22,6 +22,7 @@ import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
import im.vector.app.core.extensions.associateContentStateWith
|
import im.vector.app.core.extensions.associateContentStateWith
|
||||||
|
import im.vector.app.core.extensions.autofillPhoneNumber
|
||||||
import im.vector.app.core.extensions.content
|
import im.vector.app.core.extensions.content
|
||||||
import im.vector.app.core.extensions.editText
|
import im.vector.app.core.extensions.editText
|
||||||
import im.vector.app.core.extensions.isEmail
|
import im.vector.app.core.extensions.isEmail
|
||||||
|
@ -57,6 +58,8 @@ class FtueAuthPhoneEntryFragment @Inject constructor() : AbstractFtueAuthFragmen
|
||||||
views.emailEntrySubmit.isEnabled = it.isEmail()
|
views.emailEntrySubmit.isEnabled = it.isEmail()
|
||||||
}
|
}
|
||||||
.launchIn(viewLifecycleOwner.lifecycleScope)
|
.launchIn(viewLifecycleOwner.lifecycleScope)
|
||||||
|
|
||||||
|
views.emailEntryInput.autofillPhoneNumber()
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun updateEmail() {
|
private fun updateEmail() {
|
||||||
|
|
Loading…
Add table
Reference in a new issue