From 95795de13933ff458cc287b099c62cd57c792ee4 Mon Sep 17 00:00:00 2001 From: Taras <tarassmakula@gmail.com> Date: Thu, 10 Mar 2022 14:48:59 +0200 Subject: [PATCH] Add sign up button action --- .../futo/circles/feature/log_in/LogInFragment.kt | 16 ++++++++++++++-- app/src/main/res/layout/log_in_fragment.xml | 3 +-- .../main/res/navigation/nav_graph_start_host.xml | 2 +- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/futo/circles/feature/log_in/LogInFragment.kt b/app/src/main/java/com/futo/circles/feature/log_in/LogInFragment.kt index b210dff7f..752cdad11 100644 --- a/app/src/main/java/com/futo/circles/feature/log_in/LogInFragment.kt +++ b/app/src/main/java/com/futo/circles/feature/log_in/LogInFragment.kt @@ -31,11 +31,20 @@ class LogInFragment : Fragment(R.layout.log_in_fragment) { success = { navigateToBottomMenuFragment() }, error = { showError(it) } ) + viewModel.signUpEventResultLiveData.observeResponse( + this, + onRequestInvoked = { setLoadingState(false) }, + success = { navigateToSignUp() }, + error = { showError(it) } + ) } private fun setOnClickActions() { with(binding) { - btnSignUp.setOnClickListener { navigateToSignUp() } + btnSignUp.setOnClickWithLoading { + setLoadingState(true) + viewModel.startSignUp() + } btnLogin.setOnClickWithLoading { setLoadingState(true) @@ -49,7 +58,10 @@ class LogInFragment : Fragment(R.layout.log_in_fragment) { private fun setLoadingState(isLoading: Boolean) { setEnabledViews(!isLoading) - binding.btnLogin.setIsLoading(isLoading) + if (!isLoading) { + binding.btnLogin.setIsLoading(false) + binding.btnSignUp.setIsLoading(false) + } } private fun navigateToSignUp() { diff --git a/app/src/main/res/layout/log_in_fragment.xml b/app/src/main/res/layout/log_in_fragment.xml index b25c9925a..8fad7241e 100644 --- a/app/src/main/res/layout/log_in_fragment.xml +++ b/app/src/main/res/layout/log_in_fragment.xml @@ -145,9 +145,8 @@ app:layout_constraintEnd_toEndOf="@id/guidelineEnd" app:layout_constraintStart_toStartOf="@id/guidelineStart" /> - <com.google.android.material.button.MaterialButton + <com.futo.circles.view.LoadingButton android:id="@+id/btnSignUp" - style="@style/AccentButtonStyle" android:layout_width="0dp" android:layout_height="wrap_content" android:text="@string/sign_up" diff --git a/app/src/main/res/navigation/nav_graph_start_host.xml b/app/src/main/res/navigation/nav_graph_start_host.xml index 2f58d0fae..dc820bcdd 100644 --- a/app/src/main/res/navigation/nav_graph_start_host.xml +++ b/app/src/main/res/navigation/nav_graph_start_host.xml @@ -23,7 +23,7 @@ <fragment android:id="@+id/signUpFragment" android:name="com.futo.circles.feature.sign_up.SignUpFragment" - android:label="Log In" + android:label="Sign up" tools:layout="@layout/sign_up_fragment"> <action android:id="@+id/action_signUpFragment_to_bottomNavigationFragment" -- GitLab