-
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
Hold for #38909 [$500] IOU - Map is blinking when navigate to Distance request #38838
Comments
👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open `StagingDeployCash` deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:
|
Triggered auto assignment to @jasperhuangg ( |
We think that this bug might be related to #wave-collect RELEASE 1 |
Definitely don't need to block deploy as this is a display bug that doesn't really break usage of this feature |
Job added to Upwork: https://www.upwork.com/jobs/~01b572848dc86f02bf |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @mkhutornyi ( |
During testing, another issue was found:
Bug6423602_1711135650912.20240323_032324.mp4Is this the same issue or do I need to open a separate one? |
@lanitochka17 that is a different issue – the original one is about the Images, and it's happening all across the App (reported similar here: https://expensify.slack.com/archives/C049HHMV9SM/p1711121057387809). The second one is about the broken logic of the "Edit Distance" flow - it modifies the Transaction while it shouldn't – a regression from #34610. |
ProposalPlease re-state the problem that we are trying to solve in this issue.Map is blinking when navigating to created Distance request What is the root cause of that problem?In ReportScreen.tsx, this useEffect() triggers unneeded re-render to the map image component when Report.openReport(report.reportID) is called.
What changes do you think we should make in order to solve the problem?Add a new condition called isMoneyRequestView that determines if the current screen is a MoneyRequestView Add this new condition to this line to immediately return instead of calling Report.openReport
Resultexpensify.mov |
ProposalPlease re-state the problem that we are trying to solve in this issue.Map and other attachment previews are blinking/ re rendering What is the root cause of that problem?This PR here #30269 introduced the issue. the problem is
The What changes do you think we should make in order to solve the problem?We should only re render the App/src/pages/home/report/ReportActionsView.tsx Lines 135 to 142 in 4f22381
We can change the dependency array to not include isLoadingInitialReportActions , but rather use allReportActions . My gut tells me this should only re render when the ReportActions are different or newer.However the code is not commented and I am struggling to see the need for listID , also when and why to change it. I think the Author of the PR can maybe assist here.
What alternative solutions did you explore? (Optional)Early return listOldID when we don't want to re render the flatList. if (!actionListUpdated) {
return listOldID;
}
|
Screen.Recording.2024-03-23.at.21.26.05.movThis issue happens in the report action view and you can see the avatars and everything flash when switching chats. It is not just the distance request. |
@paultsimura looks like you have better context. Are you interested in taking this as C+? |
I can take it, thanks @mkhutornyi |
ProposalPlease re-state the problem that we are trying to solve in this issueMap is blinking when navigate to Distance request. What is the root cause of that problem?TLDR: The RCA was already mentioned in a previous proposal. Offending PR #30269 introduced the following logic: App/src/pages/home/report/ReportActionsView.tsx Lines 135 to 141 in fed9d6c
which generates a new The problem lies in the fact that What changes do you think we should make in order to solve the problem?We should pass the Why use extraData instead of key ?. On the other hand, the Using the Videos (before / after)MacOS: Chrome / Safari
|
Triggered auto assignment to @laurenreidexpensify ( |
📣 @paultsimura 🎉 An offer has been automatically sent to your Upwork account for the Contributor role 🎉 Thanks for contributing to the Expensify app! Offer link |
I commented on the PR #39040 (comment) kindly asking for a comment to be added above the declaration of |
I've tested and that PR fixes this issue, but I don't mind putting this on hold for #38909 just to be safe. |
I'll dupe my message here as well: So, here's the deal: I need to make the whole list refresh itself from scratch. It's all about the virtualization thing the list does. Basically, this refresh trick is mostly needed when you're linking comments, especially when jumping from looking at a bunch of messages to just a few. The virtualization in FlatList gets a bit wonky when the amount of stuff shown shrinks as you move to a specific message. So, to keep everything looking right, we gotta refresh the whole list, not just poke the FlatList to update what it's already showing. So if we put it to |
📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸 |
Hey guys! Just a quick heads-up, this PR has been merged. So this shouldn't be an issue anymore |
@laurenreidexpensify we can close this issue – it's not reproducible on my end anymore |
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Version Number: 1.4.56-0
Reproducible in staging?: y
Reproducible in production?: n
Issue reported by: Applause - Internal Team
Action Performed:
Expected Result:
Map should be stable
Actual Result:
Map is blinking when navigate to created Distance request
Workaround:
n/a
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
Bug6423445_1711129043210.Recording__2673.mp4
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: