@@ -12,6 +12,7 @@ import androidx.compose.runtime.Composable
12
12
import androidx.compose.runtime.getValue
13
13
import androidx.compose.ui.Modifier
14
14
import androidx.compose.ui.platform.LocalContext
15
+ import androidx.compose.ui.platform.LocalSoftwareKeyboardController
15
16
import androidx.compose.ui.tooling.preview.Preview
16
17
import androidx.compose.ui.unit.dp
17
18
import androidx.hilt.navigation.compose.hiltViewModel
@@ -48,6 +49,7 @@ internal fun LoginRoute(
48
49
val intent = Intent (Intent .ACTION_VIEW , Uri .parse(Url .PRIVACY_POLICY ))
49
50
context.startActivity(intent)
50
51
}
52
+
51
53
LoginSideEffect .NavigateToHome -> navigateToHome()
52
54
is LoginSideEffect .ShowToast -> {
53
55
Toast .makeText(context, effect.message, Toast .LENGTH_SHORT ).show()
@@ -65,6 +67,8 @@ fun LoginScreen(
65
67
loginState : LoginState ,
66
68
onIntent : (LoginIntent ) -> Unit = {},
67
69
) {
70
+ val keyboardController = LocalSoftwareKeyboardController .current
71
+
68
72
YappBackground {
69
73
Column (
70
74
modifier = Modifier
@@ -79,7 +83,10 @@ fun LoginScreen(
79
83
onEmailChange = { onIntent(LoginIntent .ChangeEmail (it)) },
80
84
onPasswordChange = { onIntent(LoginIntent .ChangePassword (it)) },
81
85
buttonEnable = loginState.enableLoginButton,
82
- onButtonClick = { onIntent(LoginIntent .ClickLoginButton ) },
86
+ onButtonClick = {
87
+ keyboardController?.hide()
88
+ onIntent(LoginIntent .ClickLoginButton )
89
+ },
83
90
emailErrorDescription = loginState.emailErrorDescription,
84
91
passwordErrorDescription = loginState.passwordErrorDescription
85
92
)
0 commit comments