-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Fix footer position on the login page in mobile View #6203
Conversation
…iew above keyboard It is a little tricky to manage the various parts of UI above and below the keyboard together but:- - Created a Flex 1 container which will respect the position behaviour. - Now move all the styles to content of the keyboardAvoidView. - There is some sort of problem that keeps some part of view behind the keyboard. It could be some thing but I am not aware of so I tried various padding and it seem that 20px will be hidden behind the keyboard. - so I moved the margin from footer to this and added pb5.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The footer shifts up as soon as we start typing on Android. Maybe extending signInPageStyles.js/index.ios.js
to include Android would fix this.
android.mov
I will check it. |
@parasharrajat let me know when this is ready for another review. |
Thanks. Just trying to find a way to trigger the ui update when keyboard opens which happens when you type on input. |
Explicitly trigger the page layout update when keyboard shows to remove glitch
@luacmartins Fixed it. Basically, when you type the LoginPage rerender but it does not when the keyboard is shown. So I created on HOC to trigger rerender when the keyboard becomes visible. |
Hey @parasharrajat! I pulled the latest changes, but I still see the footer shifting up when the keyboard is displayed on Android. Maybe I'm missing something here. Can you double check please? |
Ok. Checking now. may be I missed something. |
@luacmartins It works on all of the three devices I tested. output_file.mp4Oops, you asked for footer placement. Yeah, this is basically fine, I coded it this way. There is no issue with this unless the continue button does not show above the keyboard. It was really hard to achieve. we use adjustResize in Android which will move the whole view above the keyboard and resize the window on keyboardOpen. it means the whole scrollview including the footer will be placed on the top of the keyboard, pushing the main content off the screen. I am managed to keep the footer behind the keyboard so that only the main content is above the keyboard. It satisfies both issues:
|
I see... I dislike the layout shift, but I agree that that is a minor detail here. Approving. |
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
🚀 Deployed to staging by @luacmartins in version: 1.1.14-5 🚀
|
The accessibility issue related to the mWeb on Android:
|
🚀 Deployed to production by @AndrewGable in version: 1.1.15-15 🚀
|
@@ -0,0 +1,5 @@ | |||
import styles from '../../../../styles/styles'; | |||
|
|||
const scrollViewContentContainerStyles = styles.flex1; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm curious why flex1
was used here for iOS? Replacing it with mnh100
doesn't break UI for iPhone, iPad or iPod
contd.. below
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not remember but I'm sure there was some UI thing. I will get back to you on this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool, take your time. Thanks!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rushatgabhane I looked into this one. I added this as minHeight: 100% makes the Login Page height become more than the screen height and thus page will become scrollable even if we have enough space to fit the whole content.
minHeight: 100% was added for Android, It is supposed to be flex1. Android does not work good with flex1.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
welp, we made iOS use minHeight 100% in this PR #7205
This is the behaviour that we get after making the changes. It's same as using flex1 at least on the sim 😅
Screen.Recording.2022-01-16.at.1.50.17.AM.mov
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Clear the cache and then run it. I don't remember but it i visible sometimes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for your help. Yep, it's a problem only sometimes so missed it during review.
It's a regression. I'll comment in original issue.
@@ -0,0 +1,5 @@ | |||
import styles from '../../../../styles/styles'; | |||
|
|||
const scrollViewContentContainerStyles = styles.mnh100; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
mnh100
like here for rest of the platforms
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@parasharrajat just have a question here for issue 7122
Details
Fixed Issues
$ #6175
$ #6202
Tests | QA Steps
Note: Wide Screen layout is fixed in separate issue and which affect web | desktop | Ipad | Tablet | landscape view and the PR for the same is #6137.
Tested On
Screenshots
Web
Mobile Web
Desktop
iOS
Android