-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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 payment 2023-08-28] [Tracking Browser back button] [$1000] mWeb- Clicking on back button on Concierge after leaving the thread gives us access to the same thread again #20908
Comments
Triggered auto assignment to @abekkala ( |
Bug0 Triage Checklist (Main S/O)
|
ProposalPlease re-state the problem that we are trying to solve in this issue.mWeb- Clicking on back button on Concierge after leaving the thread gives us access to the same thread again What is the root cause of that problem?When user click on the back arrow in the Header view, it simply call the Navigation.goBack function which will navigate to the previous route history, then we will see the thread report again. What changes do you think we should make in order to solve the problem?I think in the leaveRoom action, we need to call |
Looks like something related to As a reminder, please make sure that all proposals are not workarounds and that any and all attempt to fix the issue holistically have been made before proceeding with a solution. Proposals to change our Feel free to drop a note in #expensify-open-source with any questions. |
ProposalPlease re-state the problem that we are trying to solve in this issue.Clicking on back button on Concierge after leaving the thread shouldn't give access to the same thread again (since the user had already decided to leave) What is the root cause of that problem?The problem is that after pressing back it will return to the previous screen which is router What changes do you think we should make in order to solve the problem?Define function pop screen in
In the function
What alternative solutions did you explore? (Optional)N/A |
📣 @ginsuma! 📣
|
ProposalPlease re-state the problem that we are trying to solve in this issue.On mWeb, clicking on back button on Concierge after leaving the thread gives us access to the same thread again What is the root cause of that problem?The root cause of this issue is that, when clicking header go back button, the route state still saves previous pages(including the details page) after clicking What changes do you think we should make in order to solve the problem?From method leaveRoom App/src/libs/actions/Report.js Line 1678 in 83ab016
We know that we want to navigate to the concierge chat when clicking To fix this issue, we can reset the route state of navigation to the concierge chat when calling method leaveRoom. To achieve this, we can
App/src/libs/Navigation/Navigation.js Lines 62 to 67 in 83ab016
if (action !== undefined && type !== 'RESET') {
root.dispatch(action);
} else {
root.reset(state);
}
App/src/libs/actions/Report.js Line 1132 in 83ab016
like function navigateToConciergeChat(shouldResetNavigationState = false) { If
App/src/libs/actions/Report.js Line 1678 in 83ab016
Click to find the demo videoSimulator.Screen.Recording.-.iPhone.14.-.2023-06-18.at.01.20.27.mp4What alternative solutions did you explore? (Optional)We can also navigate to home page and reset route state of navigation when leaving thread by changing this line App/src/libs/actions/Report.js Line 1678 in 83ab016
to Navigation.navigate(ROUTES.HOME, 'RESET'); This alternative will be applicable if the product team agrees with navigating to home page after leaving thread. |
Job added to Upwork: https://www.upwork.com/jobs/~01448a7bf541bf3868 |
Current assignee @abekkala is eligible for the External assigner, not assigning anyone new. |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @allroundexperts ( |
@allroundexperts we already have a couple proposals for this one |
@allroundexperts have you had a chance to review the proposals that have come in? |
@abekkala I did review these but I'm not concretely sure about the best approach. I'm tilting towards @namhihi237's proposal since we've used navigation pop method in another PR as well. Given that this issue occurred after navigation refactor that we did, I'd like to get @WoLewicki or @mountiny's opinion on this as well. |
@allroundexperts Thanks for reviewing proposals. Can I have your feedback about my proposal? I proposed a solution to reset the state of navigation stack, which should be useful and complementary to the current navigating methods provided in Navigation.js. For example, we can open a page of App in a new tab through a link. If we perform an exit-and-redirect like navigation action, like leaving a thread, from that page, then having a reseting navigation stack solution will be helpful to avoid navigating to the |
Thanks @allroundexperts for appreciating my proposal, I think if the user has pressed the back button it is their intention and they want to go back to the previous page. |
Is this behavior the same on web? How does the forward browser button works in these flows if so? @eh2077 could you elaborate more on how would the The only problem with @namhihi237 proposal that I can think of is that it dispatches 2 navigation actions one after another, being popping the 2 screens and then navigating. I am afraid it can introduce some animation and browser buttons glitches. Normally resetting the state is the proper solution with removing the 2 last screens and adding another one at the end, but if you confirm that those mentioned things work as they should, I think we can also go with it. |
Thanks @WoLewicki Yes, It's works well with my proposal Screen.Recording.2023-06-23.at.21.28.17.mov |
@namhihi237 and what happens if you click the forward browser button after leaving the thread? Seems weird that it is possible to even do that. |
We are going to be more strict on these requests but given this issue has 114 comments and its been open since June 16 I think its valid to give the classic 25% so $250 for your help here. Albeit its not probably matching the efforts, there are other issues which end up being less time consuming so it balances out I believe. Thanks for your help |
@dylanexpensify so the issue was fixed in another PR. The is the payment decision. |
Got it! @allroundexperts @priya-zha mind applying here |
I'll be paid by our App. Can you please add a payment summary here @dylanexpensify? |
Hi. I'm not being able to apply to the job since it says 'The job is no longer available' |
Woot! Payment summary:
Upwork job! Please apply! |
New job ^ fyi @priya-zha |
Applied. Thanks |
Reviewed the details for @allroundexperts. $250 approved for payment via NewDot. |
TY! Payment coming now @priya-zha |
Offer sent @priya-zha ! |
bump @priya-zha |
@dylanexpensify Accepted the offer already. Waiting for the payment. Thanks. |
@dylanexpensify just to confirm have you paid @priya-zha? I see the contract is still open but it's unclear to me if they have been paid or not. |
Payment sent! |
Contract ended! |
Perfect so closing this! Thanks! |
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:
Expected Result:
Clicking on back button on Concierge after leaving the thread shouldn't give access to the same thread again (since the user had already decided to leave)
Actual Result:
licking on back button on Concierge after leaving the thread gives us access to the same thread again
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Version Number: 1.3.2.7.6
Reproducible in staging?: yes
Reproducible in production?: yes
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: Any additional supporting documentation
thread.1.mp4
Screen.Recording.20230615.000715.Chrome.mp4
Expensify/Expensify Issue URL:
Issue reported by: @priya-zha
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1686249319392879
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: