-
Notifications
You must be signed in to change notification settings - Fork 2.8k
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
[$2000] Flickering is seen when entering first character #14799
Comments
Uh oh! This issue is overdue by 2 days. Don't forget to update your issues! |
@johncschuster Whoops! This issue is 2 days overdue. Let's get this updated quick! |
1 similar comment
@johncschuster Whoops! This issue is 2 days overdue. Let's get this updated quick! |
@johncschuster Eep! 4 days overdue now. Issues have feelings too... |
@daraksha-dk I tried reproducing this behavior on a Google Pixel 7 (via browserstack) and was unable to get the first character to flicker. Can you help me dial in the reproduction steps a bit more? |
from @daraksha-dk (thank you!)
|
Ok, I've reproduced the behavior using a Pixel 3a (v. 2023-02-17_09-47-48.mp4 |
Triggered auto assignment to @techievivek ( |
@johncschuster @techievivek this issue was created 2 weeks ago. Are we close to a solution? Let's make sure we're treating this as a top priority. Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks! |
Will look into it by today. |
I can reproduce this on my OnePlus 7T, and this can be worked externally. |
Job added to Upwork: https://www.upwork.com/jobs/~01068656221cc9737e |
Edited by proposal-police: This proposal was edited at 2024-08-30 10:09:17 UTC. ProposalPlease re-state the problem that we are trying to solve in this issue.Flickering is seen when entering first character What is the root cause of that problem?Flickering is seen when entering first character caused by App/src/components/TextInput/BaseTextInput/index.native.tsx Lines 353 to 355 in 9e82ed8
In the first input inside the Close account page we see flickering when entering first character because in the first input we enabled the autoGrowHeight property to trueApp/src/pages/settings/Security/CloseAccountPage.tsx Lines 101 to 110 in 9e82ed8
What changes do you think we should make in order to solve the problem?Adding App/src/pages/settings/Security/CloseAccountPage.tsx Lines 114 to 124 in b912e17
So inside the input component we're setting the lineHeight to undefined if the input is not multiline meaning it is not enabled by using
Result
What alternative solutions did you explore? (Optional) |
@NJ-2020 Thanks for the proposal
This is not the case, you can still experience the flickering without that style if you increase the line height enough Screen.Recording.2024-08-30.at.11.47.40.PM.mov |
@s77rt After looking into it, I found that the issue comes from the lineHeight, so if we increase the lineHeight i.e to 50, the cursor input initially will start from the default value meaning the default that already defined from the react-native or from the android but not from 50, but when we start typing for the first character, the cursor height increase until the value we set which is 50, which will cause the flickering issue We can fix it by adding this Or we can fix it by removing the lineHeight Line 1216 in 117b961
|
@NJ-2020 Let's avoid going with the empty string approach, at least for the JS implementation. If this is a bug in Android itself I could see a reason to go with that but at the Native implementation level. Removing the |
Not overdue. Looking for proposals |
@s77rt After looking into it again, I found that the issue only causing in Android and not on IOS Screen.Recording.2024-09-03.at.05.57.30.movWe can fix it by doing this: Line 1216 in 117b961
to: lineHeight: getPlatform() !== CONST.PLATFORM.ANDROID ? variables.lineHeightXLarge: undefined So we will set the lineHeight property if its not an Android platform <style name="EditTextStyle" parent="@android:style/Widget.EditText">
<item name="android:lineHeight">20sp</item>
</style> And invoke the <item name="editTextStyle">@style/App_EditTextStyle</item> App/android/app/src/main/res/values/styles.xml Lines 7 to 15 in 0e9f918
So the cursor height will not increasing like Web platform but we will still have space for each line (lineHeight) ResultScreen.Recording.2024-09-03.at.04.39.02.movI've tried increasing the cursor height to match as the lineHeight by using |
@NJ-2020 The suggested solution is a workaround. We are looking to fix the root cause so everyone can benefit from the fix (fix the bug upstream - RN) |
No update – waiting on an upstream fix. @s77rt, do you know if there's a PR already out there for the upstream fix? This issue has gotten a bit long in the tooth, and it's a bit challenging to make sense of where we're at. |
@johncschuster There was facebook/react-native#37998 but it's not closed for being stalled for too long. We are basically looking for someone else to continue from that PR or implement a similar solution. Please remove the "hold" from the title. |
Not overdue, looking for proposals here. |
📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸 |
Not overdue, we are still looking for proposals here. @johncschuster should we update the reward amount here to get more eyes? |
📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸 |
Still looking for proposals |
Bumped my post in Slack for proposals |
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Action Performed:
Alternative steps:
Expected Result:
No flickering should happen
Actual Result:
The first character will flicker
Workaround:
unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Version Number: 1.2.64-2
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:
flicker.1.mp4
Record_2023-02-02-16-42-18_4f9154176b47c00da84e32064abf1c48.mp4
Expensify/Expensify Issue URL:
Issue reported by: @daraksha-dk
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1674823661904079
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @The text was updated successfully, but these errors were encountered: