From 9bd4dbb65f93ced01b6fba73c112f2a002a6cf0b Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 26 Nov 2019 12:40:17 +0100 Subject: [PATCH] Login screens: trim homeserver url --- .../features/login/LoginServerUrlFormFragment.kt | 15 +++------------ .../vector/riotx/features/login/LoginViewModel.kt | 2 +- 2 files changed, 4 insertions(+), 13 deletions(-) diff --git a/vector/src/main/java/im/vector/riotx/features/login/LoginServerUrlFormFragment.kt b/vector/src/main/java/im/vector/riotx/features/login/LoginServerUrlFormFragment.kt index 49c0c66e0b..228a40d568 100644 --- a/vector/src/main/java/im/vector/riotx/features/login/LoginServerUrlFormFragment.kt +++ b/vector/src/main/java/im/vector/riotx/features/login/LoginServerUrlFormFragment.kt @@ -20,10 +20,8 @@ import android.annotation.SuppressLint import android.os.Bundle import android.view.View import android.view.inputmethod.EditorInfo -import androidx.appcompat.app.AlertDialog import androidx.core.view.isVisible import butterknife.OnClick -import com.airbnb.mvrx.Fail import com.airbnb.mvrx.Success import com.airbnb.mvrx.withState import com.jakewharton.rxbinding3.widget.textChanges @@ -104,7 +102,7 @@ class LoginServerUrlFormFragment @Inject constructor( cleanupUi() // Static check of homeserver url, empty, malformed, etc. - var serverUrl = loginServerUrlFormHomeServerUrl.text.toString() + var serverUrl = loginServerUrlFormHomeServerUrl.text.toString().trim() when { serverUrl.isBlank() -> { @@ -113,8 +111,8 @@ class LoginServerUrlFormFragment @Inject constructor( else -> { if (serverUrl.startsWith("http").not()) { serverUrl = "https://$serverUrl" - loginServerUrlFormHomeServerUrl.setText(serverUrl) } + loginServerUrlFormHomeServerUrl.setText(serverUrl) loginViewModel.handle(LoginAction.UpdateHomeServer(serverUrl)) } } @@ -126,18 +124,11 @@ class LoginServerUrlFormFragment @Inject constructor( } override fun onError(throwable: Throwable) { - AlertDialog.Builder(requireActivity()) - .setTitle(R.string.dialog_title_error) - .setMessage(errorFormatter.toHumanReadable(throwable)) - .setPositiveButton(R.string.ok, null) - .show() + loginServerUrlFormHomeServerUrlTil.error = errorFormatter.toHumanReadable(throwable) } override fun invalidate() = withState(loginViewModel) { state -> when (state.asyncHomeServerLoginFlowRequest) { - is Fail -> { - loginServerUrlFormHomeServerUrlTil.error = errorFormatter.toHumanReadable(state.asyncHomeServerLoginFlowRequest.error) - } is Success -> { // The home server url is valid loginSharedActionViewModel.post(LoginNavigation.OnLoginFlowRetrieved) diff --git a/vector/src/main/java/im/vector/riotx/features/login/LoginViewModel.kt b/vector/src/main/java/im/vector/riotx/features/login/LoginViewModel.kt index 5e4421b90d..c85e2b08fb 100644 --- a/vector/src/main/java/im/vector/riotx/features/login/LoginViewModel.kt +++ b/vector/src/main/java/im/vector/riotx/features/login/LoginViewModel.kt @@ -530,7 +530,7 @@ class LoginViewModel @AssistedInject constructor(@Assisted initialState: LoginVi _viewEvents.post(LoginViewEvents.Error(failure)) setState { copy( - asyncHomeServerLoginFlowRequest = Fail(failure) + asyncHomeServerLoginFlowRequest = Uninitialized ) } }