Skip to content
Snippets Groups Projects
Commit 1a02e368 authored by Taras's avatar Taras
Browse files

Lowercase input filter for username + validate on resume

parent d4f3e968
No related branches found
No related tags found
No related merge requests found
package org.futo.circles.auth.feature.sign_up.username
import android.os.Bundle
import android.text.InputFilter
import android.text.Spanned
import android.view.View
import androidx.core.widget.doAfterTextChanged
import androidx.fragment.app.Fragment
......@@ -9,11 +11,11 @@ import by.kirich1409.viewbindingdelegate.viewBinding
import dagger.hilt.android.AndroidEntryPoint
import org.futo.circles.auth.R
import org.futo.circles.auth.databinding.FragmentUsernameBinding
import org.futo.circles.core.base.fragment.HasLoadingState
import org.futo.circles.core.base.fragment.ParentBackPressOwnerFragment
import org.futo.circles.core.extensions.getText
import org.futo.circles.core.extensions.observeData
import org.futo.circles.core.extensions.observeResponse
import org.futo.circles.core.base.fragment.HasLoadingState
import org.futo.circles.core.base.fragment.ParentBackPressOwnerFragment
@AndroidEntryPoint
class UsernameFragment : ParentBackPressOwnerFragment(R.layout.fragment_username),
......@@ -29,6 +31,11 @@ class UsernameFragment : ParentBackPressOwnerFragment(R.layout.fragment_username
setupObservers()
}
override fun onResume() {
super.onResume()
setContinueButtonEnabled()
}
private fun setupViews() {
with(binding) {
btnSetUsername.setOnClickListener {
......@@ -36,8 +43,18 @@ class UsernameFragment : ParentBackPressOwnerFragment(R.layout.fragment_username
viewModel.setUsername(tilUserName.getText())
}
tilUserName.editText?.doAfterTextChanged {
btnSetUsername.isEnabled = tilUserName.getText().isNotEmpty()
setContinueButtonEnabled()
}
etUserName.filters = arrayOf<InputFilter>(object : InputFilter.AllCaps() {
override fun filter(
source: CharSequence?,
start: Int,
end: Int,
dest: Spanned?,
dstart: Int,
dend: Int
) = source.toString().lowercase()
})
}
}
......@@ -47,4 +64,9 @@ class UsernameFragment : ParentBackPressOwnerFragment(R.layout.fragment_username
binding.tvServerDomain.text = it
}
}
private fun setContinueButtonEnabled() {
binding.btnSetUsername.isEnabled = binding.tilUserName.getText().isNotEmpty()
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment