Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Edured-101: Changing the screens layout so that when the keyboard is … #94

Merged
merged 2 commits into from
May 26, 2023

Conversation

IuliaSTANA
Copy link
Contributor

@IuliaSTANA IuliaSTANA commented May 25, 2023

Short Description of Change

Correctly handle window insets for keyboard on input fields/forms: makes sure the keyboard doesn't hide important buttons and that the keyboard is shown when the screen is opened when required.

Changes

Motivation and Context

Edured-101: Changing the screens layout so that when the keyboard is visible, any input fields and/or buttons are still visible. To make this happen, the top bar will exclude handling the window insets for the navigation bars and ime and pass the content padding like the standard scaffold.
Moreover, the keyboard state can be observed as a state and elements in the screen can be hidden/made visible based on the keyboard state. This is preferable over handling it via focusevents because the focus request/status are asynchronous and can easily result in an unwanted state when there is more than one focusable input field.
Button must require specific height, otherwise height becomes 0 when keyboard is shown.

Screens impacted: DeleteAccountFirstConfirmScreen, ManageAccountScreen, OauthScreen, RequestEduIdEmailSentScreen, RequestEduIdStartScreen, SecurityScreen, WelcomeStartScreen, TwoFactorKeyScreen, TwoFactorKeyDeleteScreen, RequestAuthenticationScreen, DeepLinkScreen, AuthenticationCompletedScreen, PersonalInfoScreen, DataAndActivityScreen,RequestEduIdCreatedScreen, EnableBiometricScreen

Automatically showing keyboard, focus on input field, submit button(s) visible:
DeleteAccountSecondConfirmScreen, EditNameScreen, PhoneRequestCodeScreen, RequestEduIdFormScreen,
ConfirmCodeScreen(Added automatic paste of the sms code. That is why the keyboard is not automatically shown for the confirm sms code screen, it's either or.), ResetPasswordConfirmScreen(includes animating visibility for title & spacing to make room for keyboard & button), RequestEduIdCreatedScreen,
AuthenticationPinBiometricScreen: show keyboard when biometric is skipped or fails. Makes sure buttons are visible above the keyboard. Making sure the PIN input during enrollment is also correct.

Other fixes:
Fixed correctly showing error messages for during registration
Correct the ripple animation by applying the padding to the right elements
Fix issue with capitalized letter for email field
Edured-110: only show number's keyboard on the PIN input screens

Testing Steps

proper_insets.mp4

Additional Information

Iulia Stana added 2 commits May 25, 2023 22:43
…visible, any input fields and/or buttons are still visible. To make this happen, the top bar will exclude handling the window insets for the navigation bars and ime and pass the content padding like the standard scaffold.

Moreover, the keyboard state can be observed as a state and elements in the screen can be hidden/made visible based on the keyboard state. This is preferable over handling it via focusevents because the focus request/status are asynchronous and can easily result in an unwanted state when there is more than one focusable input field.
Button must require specific height, otherwise height becomes 0 when keyboard is shown.

Screens impacted: DeleteAccountFirstConfirmScreen, ManageAccountScreen, OauthScreen, RequestEduIdEmailSentScreen, RequestEduIdStartScreen, SecurityScreen, WelcomeStartScreen, TwoFactorKeyScreen, TwoFactorKeyDeleteScreen, RequestAuthenticationScreen, DeepLinkScreen, AuthenticationCompletedScreen, PersonalInfoScreen, DataAndActivityScreen,RequestEduIdCreatedScreen, EnableBiometricScreen

Automatically showing keyboard, focus on input field, submit button(s) visible:
DeleteAccountSecondConfirmScreen, EditNameScreen, PhoneRequestCodeScreen, RequestEduIdFormScreen,
ConfirmCodeScreen(Added automatic paste of the sms code. That is why the keyboard is not automatically shown for the confirm sms code screen, it's either or.), ResetPasswordConfirmScreen(includes animating visibility for title & spacing to make room for keyboard & button), RequestEduIdCreatedScreen,
AuthenticationPinBiometricScreen: show keyboard when biometric is skipped or fails. Makes sure buttons are visible above the keyboard. Making sure the PIN input during enrollment is also correct.

 Other fixes:
 Fixed correctly showing error messages for during registration
 Correct the ripple animation by applying the padding to the right elements
 Fix issue with capitalized letter for email field
 Edured-110: only show number's keyboard on the PIN input screens
Base automatically changed from Edured-100_show_error_message_on_security to develop May 26, 2023 07:41
@IuliaSTANA IuliaSTANA merged commit 3e786a2 into develop May 26, 2023
@IuliaSTANA IuliaSTANA deleted the bugfix/edured-101-handle_show_keyboard_with_input branch May 26, 2023 09:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants