Disable the connect and login buttons when the app is connecting / logging in
This commit is contained in:
parent
78458d661a
commit
2b2041c569
8 changed files with 14 additions and 11 deletions
|
@ -67,15 +67,18 @@ class AddServerFragment : Fragment() {
|
|||
}
|
||||
|
||||
private fun bindUiStateNormal() {
|
||||
binding.buttonConnect.isEnabled = true
|
||||
binding.progressCircular.isVisible = false
|
||||
}
|
||||
|
||||
private fun bindUiStateError(uiState: AddServerViewModel.UiState.Error) {
|
||||
binding.buttonConnect.isEnabled = true
|
||||
binding.progressCircular.isVisible = false
|
||||
binding.editTextServerAddressLayout.error = uiState.message
|
||||
}
|
||||
|
||||
private fun bindUiStateLoading() {
|
||||
binding.buttonConnect.isEnabled = false
|
||||
binding.progressCircular.isVisible = true
|
||||
binding.editTextServerAddressLayout.error = null
|
||||
}
|
||||
|
@ -86,6 +89,6 @@ class AddServerFragment : Fragment() {
|
|||
}
|
||||
|
||||
private fun navigateToLoginFragment() {
|
||||
findNavController().navigate(AddServerFragmentDirections.actionAddServerFragment3ToLoginFragment2())
|
||||
findNavController().navigate(AddServerFragmentDirections.actionAddServerFragmentToLoginFragment())
|
||||
}
|
||||
}
|
|
@ -67,15 +67,18 @@ class LoginFragment : Fragment() {
|
|||
}
|
||||
|
||||
private fun bindUiStateNormal() {
|
||||
binding.buttonLogin.isEnabled = true
|
||||
binding.progressCircular.isVisible = false
|
||||
}
|
||||
|
||||
private fun bindUiStateError(uiState: LoginViewModel.UiState.Error) {
|
||||
binding.buttonLogin.isEnabled = true
|
||||
binding.progressCircular.isVisible = false
|
||||
binding.editTextUsernameLayout.error = uiState.message
|
||||
}
|
||||
|
||||
private fun bindUiStateLoading() {
|
||||
binding.buttonLogin.isEnabled = false
|
||||
binding.progressCircular.isVisible = true
|
||||
binding.editTextUsernameLayout.error = null
|
||||
}
|
||||
|
@ -88,6 +91,6 @@ class LoginFragment : Fragment() {
|
|||
}
|
||||
|
||||
private fun navigateToMainActivity() {
|
||||
findNavController().navigate(LoginFragmentDirections.actionLoginFragment2ToNavigationHome())
|
||||
findNavController().navigate(LoginFragmentDirections.actionLoginFragmentToNavigationHome())
|
||||
}
|
||||
}
|
|
@ -63,7 +63,7 @@ class ServerSelectFragment : Fragment() {
|
|||
|
||||
private fun navigateToAddServerFragment() {
|
||||
findNavController().navigate(
|
||||
ServerSelectFragmentDirections.actionServerSelectFragment2ToAddServerFragment3()
|
||||
ServerSelectFragmentDirections.actionServerSelectFragmentToAddServerFragment()
|
||||
)
|
||||
}
|
||||
|
||||
|
|
|
@ -32,7 +32,6 @@ constructor(
|
|||
private val resources: Resources = application.resources
|
||||
|
||||
private val uiState = MutableStateFlow<UiState>(UiState.Normal)
|
||||
|
||||
private val navigateToLogin = MutableSharedFlow<Boolean>()
|
||||
|
||||
sealed class UiState {
|
||||
|
@ -58,7 +57,6 @@ constructor(
|
|||
* @param inputValue Can be an ip address or hostname
|
||||
*/
|
||||
fun checkServer(inputValue: String) {
|
||||
|
||||
viewModelScope.launch {
|
||||
uiState.emit(UiState.Loading)
|
||||
|
||||
|
|
|
@ -31,7 +31,6 @@ constructor(
|
|||
private val resources: Resources = application.resources
|
||||
|
||||
private val uiState = MutableStateFlow<UiState>(UiState.Normal)
|
||||
|
||||
private val navigateToMain = MutableSharedFlow<Boolean>()
|
||||
|
||||
sealed class UiState {
|
||||
|
|
|
@ -80,7 +80,7 @@
|
|||
android:layout_width="48dp"
|
||||
android:layout_height="48dp"
|
||||
android:elevation="8dp"
|
||||
android:indeterminateTint="?attr/colorOnPrimary"
|
||||
android:indeterminateTint="?attr/colorPrimary"
|
||||
android:padding="8dp"
|
||||
android:visibility="invisible" />
|
||||
|
||||
|
|
|
@ -97,7 +97,7 @@
|
|||
android:layout_width="48dp"
|
||||
android:layout_height="48dp"
|
||||
android:elevation="8dp"
|
||||
android:indeterminateTint="?attr/colorOnPrimary"
|
||||
android:indeterminateTint="?attr/colorPrimary"
|
||||
android:padding="8dp"
|
||||
android:visibility="invisible" />
|
||||
</RelativeLayout>
|
||||
|
|
|
@ -249,7 +249,7 @@
|
|||
android:label="@string/add_server"
|
||||
tools:layout="@layout/fragment_add_server">
|
||||
<action
|
||||
android:id="@+id/action_addServerFragment3_to_loginFragment2"
|
||||
android:id="@+id/action_addServerFragment_to_loginFragment"
|
||||
app:destination="@id/loginFragment" />
|
||||
</fragment>
|
||||
<fragment
|
||||
|
@ -258,7 +258,7 @@
|
|||
android:label="@string/select_server"
|
||||
tools:layout="@layout/fragment_server_select">
|
||||
<action
|
||||
android:id="@+id/action_serverSelectFragment2_to_addServerFragment3"
|
||||
android:id="@+id/action_serverSelectFragment_to_addServerFragment"
|
||||
app:destination="@id/addServerFragment" />
|
||||
<action
|
||||
android:id="@+id/action_serverSelectFragment_to_homeFragment"
|
||||
|
@ -272,7 +272,7 @@
|
|||
android:label="@string/login"
|
||||
tools:layout="@layout/fragment_login">
|
||||
<action
|
||||
android:id="@+id/action_loginFragment2_to_navigation_home"
|
||||
android:id="@+id/action_loginFragment_to_navigation_home"
|
||||
app:destination="@id/homeFragment"
|
||||
app:popUpTo="@id/homeFragment"
|
||||
app:popUpToInclusive="true" />
|
||||
|
|
Loading…
Reference in a new issue