Closed lanitochka17 closed 1 week ago
Triggered auto assignment to @aldo-expensify (DeployBlockerCash
), see https://stackoverflowteams.com/c/expensify/questions/9980/ for more details.
:wave: 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:
We think that this bug might be related to #wave-collect - Release 1
This behaviour is also in production, so removing the deploy blocker label:
https://github.com/user-attachments/assets/3dc3b026-b80b-43f9-90fc-75caa5c2fbcd
Triggered auto assignment to @greg-schroeder (Bug
), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.
Job added to Upwork: https://www.upwork.com/jobs/~01254f76c66b3ced64
Triggered auto assignment to Contributor-plus team member for initial proposal review - @alitoshmatov (External
)
The report chat list always scroll to bottom when editing the money request info if we open it from the search page.
When we open the report screen from the search page, it's inside an RHP navigator. In RHP navigator, a previous screen is hidden, that is the display is set to 'none' (you can check this yourself from the element inspector). In our case, when we open the report RHP, and then open the description page, the report RHP is hidden.
The list in the report screen uses a custom FlatList which sets up a mutation observer. The mutation observer will scroll to the last scroll offset if it's different than the current offset. https://github.com/Expensify/App/blob/7d58aa6694f8ef6eb298c35526a154f7e374fdd6/src/components/FlatList/index.tsx#L123-L134
We continuously save the last scroll offset here. https://github.com/Expensify/App/blob/7d58aa6694f8ef6eb298c35526a154f7e374fdd6/src/components/FlatList/index.tsx#L77-L78
But somehow, after updating the money request, the last scroll offset is 0 and the current scroll offset is the correct scroll offset. That is because, when a view has a display of none, the scroll offset is 0 (scrollTop). https://github.com/Expensify/App/blob/7d58aa6694f8ef6eb298c35526a154f7e374fdd6/src/components/FlatList/index.tsx#L50-L55
The flow is like this:
scrollToOffset
to the last scroll offset (the correct scroll offset).prepareForMaintainVisibleContentPosition
which updates the last scroll offset to the current scroll offset, that is 0.scrollToOffset
to the last scroll offset, 0, to the bottom.Ignore the mutation observer if the list is hidden.
One way to check if it's hidden is to check whether the height is 0 or not. A hidden view will have a height (or width) of 0. https://github.com/Expensify/App/blob/7d58aa6694f8ef6eb298c35526a154f7e374fdd6/src/components/FlatList/index.tsx#L123-L134
if (!getScrollableNode(scrollRef.current)?.clientHeight) {
return;
}
OR
Don't save the scroll offset in prepareForMaintainVisibleContentPosition
if the list is still hidden.
if (contentView == null || !getScrollableNode(scrollRef.current)?.clientHeight/clientWidth) {
Proposal review underway
@greg-schroeder, @alitoshmatov, @aldo-expensify Whoops! This issue is 2 days overdue. Let's get this updated quick!
bump @alitoshmatov
๐ฃ It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? ๐ธ
@greg-schroeder, @alitoshmatov, @aldo-expensify Still overdue 6 days?! Let's take care of this!
Reviewing
@bernhardoj Thank you for your proposal, your RCA is correct and you solution does makes and works. I think we can go with your first solution
We can go with @bernhardoj 's proposal
C+ reviewed ๐ ๐ ๐
Current assignee @aldo-expensify is eligible for the choreEngineerContributorManagement assigner, not assigning anyone new.
Do we really want it to scroll down when you edit a report's field to show you the automatic message? What if you wanted to edit two or three fields? if it scrolls down automatically it would very annoying to have to scroll up for each field you want to change.
I'm going to ask in slack if this is something we really want: https://expensify.slack.com/archives/C01GTK53T8Q/p1722026364959159
๐ฃ @alitoshmatov ๐ An offer has been automatically sent to your Upwork account for the Reviewer role ๐ Thanks for contributing to the Expensify app!
I misunderstood the issue and it was the opposite, assigning @bernhardoj !
PR is ready
cc: @alitoshmatov
bump @alitoshmatov on PR review
Reviewing
label has been removed, please complete the "BugZero Checklist".
The solution for this issue has been :rocket: deployed to production :rocket: in version 9.0.16-8 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:
If no regressions arise, payment will be issued on 2024-08-13. :confetti_ball:
For reference, here are some details about the assignees on this issue:
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
Processing
Payment summary:
Contributor: @bernhardoj - $250 - You can make a manual request via ND C+: @alitoshmatov - $250 - Paid via Upwork
cc @alitoshmatov can you complete the checklist so we can close this out? Thanks!
Requested in ND.
$250 approved for @bernhardoj
Friendly bump @alitoshmatov on completing the list
@greg-schroeder, @bernhardoj, @alitoshmatov, @aldo-expensify Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!
@greg-schroeder was everyone payed? are we ready to close this?
yup! closing
If you havenโt already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Version Number: 9.0.7-3 Reproducible in staging?: Y Reproducible in production?: N Issue reported by: Applause - Internal Team
Action Performed:
Expected Result:
The report will not auto scroll down after editing the expense
Actual Result:
The report always auto scroll down after editing the expense from RHP
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
https://github.com/user-attachments/assets/bf14a155-29d7-4143-943e-995415bd8dfa
View all open jobs on GitHub
Upwork Automation - Do Not Edit