-
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:: Account details stuck in RHN when switching chats #7725
Conversation
CLA Assistant Lite bot All contributors have signed the CLA ✍️ ✅ |
I have read the CLA Document and I hereby sign the CLA |
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.
Please add Screenshots/clips for all platforms. It is a must. Add QA and testing steps to test this change.
As this change affects the whole app. Please be detailed in your QA steps and cover most of the different navigation cases. LHN, RHN, two Side-modals as per the issue, etc.
Don't forget to sign your commits.
src/libs/Navigation/CustomActions.js
Outdated
const activeState = getActiveState(); | ||
navigationRef.current.dispatch({ | ||
...StackActions.popToTop(), | ||
target: activeState.key, |
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.
Please add a descriptive comment about what is happening here. And also mention why does this works and when will it not work.
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.
Code comment added.
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.
Please sign your commits and add videos for all platforms and tick those checkboxes in the template.
/** | ||
* @returns {Object} | ||
*/ | ||
function getActiveState() { |
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.
There is a duplicate method for this....Please remove the other one.
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 rajat. Just wanted to add to remember to always test your PR before putting it out for review. If you test the current code on ios you'll see,
which would quickly guide you to remove the extra method. Additionally, if you need more time you can always create a draft PR first without any assignees such that once its ready for review you can click on the ready for review button and it will then auto assign the reviewers.
src/libs/Navigation/CustomActions.js
Outdated
//Dispatch "popToTop" action takes you back to the first screen in the stack at the same time | ||
//it will prevent bubbling of action and limit it to activeState by specifing target. |
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.
//Dispatch "popToTop" action takes you back to the first screen in the stack at the same time | |
//it will prevent bubbling of action and limit it to activeState by specifing target. | |
// To navigate to the main drawer route, pop to the first route on the Root Stack Navigator as the main drawer is always the first route that is activated. | |
// It will pop all fullscreen and RHN modals that are over the main drawer. | |
// It won't work when the main drawer is not the first route of the Root Stack Navigator which is not the case ATM. |
Also @parasharrajat, locally i removed the extra getActiveState and tested the flow mentioned here. Is this the correct expectation? |
@hiteshagja You would have to sign all of your commits before we can merge this. Also, a test on each platform is required. Please add the remaining platforms back to the description and tick them when tested. |
@chiragsalian It does not seem like As a side note, we should look at why we are not landing on the bank page(if It should). I am actually sure what is that feature. Maybe Rory can help here. But this is surely out of scope of this PR. |
1c9ec59
to
7749bb4
Compare
@parasharrajat I am testing for iOS for now and will update you for the same. Also I tried to sign old commits but command didn't work in 6720 branch with some strange reason. However, it's working fine if I create new branch. So, shall I close this repo and create new branch with single commit in it and raise new PR? |
There is a small command to sign existing commits https://superuser.com/a/1123928/1035336. I don't think it is a good idea to close this PR and create new ones. We have discussed some important stuff here. During the rebase please merge the duplicate commits as well. I see there are some on this PR. let me know if you have some trouble with it. |
Thanks! signed all commits. |
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.
Shall I commit for that lint error? |
Yes. 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.
LGTM
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
@parasharrajat , just wanted to check, in which upwork job I have to submit my proposal? |
🚀 Deployed to staging by @chiragsalian in version: 1.1.40-0 🚀
|
🚀 Deployed to production by @yuwenmemon in version: 1.1.40-2 🚀
|
Issue 1 - Title-[Medium] Chrome + Jaws: Screen reader : Focus does not lands on the new expanded content after activating the setting control. 7725_Focus.does.not.lands.on.the.expanded.conent.mp4 |
@chiragsalian @parasharrajat
Details
Re-written navigateBackToRootDrawer method to resolve #6720 and related issues if any.
Fixed Issues
$ #6720
Tests
By far I have checked following routes and they worked as expected.
bank-account - working
settings - working
settings/profile - working
settings/preferences - working
settings/security - working
settings/security/closeAccount - working
settings/security/password - working
settings/about - working
settings/about/app-download-links - working
settings/payments - working
settings/payments/add-paypal-me - working
settings/payments/add-debit-card - working
settings/payments/add-bank-account - working
settings/payments/transfer-balance - working
settings/payments/choose-transfer-account - working
new/group - working
new/chat - working
r/:reportID - working
iou/request - working
iou/request/:reportID - working
iou/split - working
iou/split/:reportID - working
iou/send - working
iou/split/currency - working
iou/split/currency/:reportID - working
iou/send/currency - working
iou/send/add-bank-account - working
iou/send/add-debit-card - working
iou/send/enable-payments - working
iou/details/add-bank-account - working
iou/details/add-debit-card - working
iou/details/enable-payments - working
iou/details/${chatReportID}/${iouReportID} - working
search - working
details?login=${encodeURIComponent(login)} - working
r/:reportID/participants - working
r/${reportID}/participants/details?login=${encodeURIComponent(login)} - working
r/:reportID/details - working
r/:reportID/settings - working
iou/send/currency/:reportID - working
QA Steps
Here are many of the routes which I checked with following steps
Home -> go to any report -> click on header -> open detail -> ctrl+K -> search -> select any report
Home -> ctrl+k -> search -> select any report
Home -> click on search icon -> search -> select any report
Home -> click on groupReport -> click on header -> open group detail -> click on any member of group profile -> detail open -> ctl+k -> search -> select any report
Home -> click on profile -> setting -> ctrl + k -> search -> select any report
Home -> click on plus icon -> start new chart -> ctrl + k -> search -> select any report
Home -> click on plus icon -> split bill -> enter amount -> select user -> split
Home -> setting -> change password -> update password
Home -> setting -> Profile -> update Profile
Home -> setting -> workspace -> general setting -> click on header (?) -> get assistance -> chat with concierge
Home -> setting -> workspace -> click on more(3 dot) on header -> delete workspace
Tested On
Screenshots
Web
Untitled.2.mp4
Android
Untitled.mp4
iOS
ios-expensify_xdLqyc9d.mov
Desktop
expensifyDesktopApp.mp4