Add subscribe to parent comment action menu#27994
Conversation
|
@danieldoglas Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
|
Hi @dannymcclain! Do you think you could send me the bell and bell-slash icon whenever you get a chance. I see them in the figma but not sure whether I should use the regular icons or the flattened ones. This is for the subscribe to thread functionality from this thread.
|
|
No prob! Will post them soon. Sorry, I just posted them and realized the export was goofed up. |
|
@srikarparsi please create the PR as a DRAFT instead of a full PR until it's ready to review :) I'll unassign myself from it for now |
|
🔔 🔕 |
|
Hey @dannymcclain, I believe the bell icons might be just a little too big? The svg code also looks a little different between the bell icons and the other icons. For reference, this is the svg code for the chatBubble icon: And this is svg code for the bell icon (I took out the fill: "black" from the zip file you sent) |
|
@srikarparsi The reason the SVG code looks a little different is because most of our SVGs have been exported from Illustrator instead of Figma, but I've been running into a lot of issues with Illustrator distorting/changing the paths of an icon. So if it's not a problem, let's go with the slightly cleaner SVG code. As for the size, I think typically all of our icons are designed and exported at |
Deploying with
|
| Latest commit: |
37f5d27
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://3018d0ac.helpdot.pages.dev |
| Branch Preview URL: | https://srikar-addsubscribetoparentc.helpdot.pages.dev |
|
Talking to @chiragsalian 1 on 1 but wanted to leave a comment on this Github. Subscribing and unsubscribing is working but the childReportNotificationPreference data isn't updating so the right icon isn't being shown in the context action menu. I think we might need to do something here to fetch updated data but I'm not sure if there's a better way to do it. A video of it working without updating the icons is below: Screen.Recording.2023-10-17.at.3.13.09.AM.mov |
|
This PR could have been removed from HOLD yesterday. Also I just noticed you didn't test on all platforms. In future atleast add a C+ reviewer so that they can test it on all platforms. |
Reviewer Checklist
Screenshots/VideosAndroid: NativeAndroid: mWeb ChromeiOS: NativeiOS: mWeb SafariMacOS: Chrome / SafariMacOS: Desktop |
|
Removing HOLD since https://github.com/Expensify/Web-Expensify/pull/39234 is live. |
|
Oh look like PR author checklist isn't completed yet. Maybe you are still working on this. Let us know or update accordingly @srikarparsi. |
|
Hey @chiragsalian, so there's one problem I found with more testing.
Screen.Recording.2023-10-27.at.4.49.30.PM.movThe reason this occurs is because for reports you're the owner of, the icon is unsubscribe by default if the child report doesn't exist. I can create a fix for this so that the leaveReport command updates the child report notification preference but the alternative is to modify the leaveThread button to set the notification preference to hidden instead of unsharing the report. What do you think? Also, would this be better as a follow up issue since it's pretty edge case and would require web, auth and app changes if we go the child report notification preference route. And that way I can fix it alongside any other bugs that come up? |
|
Running a build for android |
|
🧪🧪 Use the links below to test this build in android and iOS. Happy testing! 🧪🧪 |
yes that's correct. But I don't see why that's the issue. I also don't think this would require a web change. I think it might require an auth change such that when leaveRoom is called, before we unshare the report we check if user is the owner or maybe first commenter and set their notification preference appropriately.
Sure a follow-up is fine. Just ask mitch also so that we're on the same page with no surprises. |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
Performance Comparison Report 📊Significant Changes To Duration
Show details
Meaningless Changes To DurationShow entries
Show details
|
|
@Expensify/mobile-deployers 📣 Please look into this performance regression as it's a deploy blocker. |
|
🚀 Deployed to staging by https://github.com/chiragsalian in version: 1.3.93-0 🚀
|
|
🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.93-1 🚀
|
|
🚀 Deployed to staging by https://github.com/chiragsalian in version: 1.3.94-0 🚀
|
1 similar comment
|
🚀 Deployed to staging by https://github.com/chiragsalian in version: 1.3.94-0 🚀
|
|
🚀 Deployed to production by https://github.com/Beamanator in version: 1.3.94-2 🚀
|
| } | ||
| const subscribed = childReportNotificationPreference !== 'hidden'; | ||
| const isCommentAction = reportAction.actionName === CONST.REPORT.ACTIONS.TYPE.ADDCOMMENT && !ReportUtils.isThreadFirstChat(reportAction, reportID); | ||
| const isReportPreviewAction = reportAction.actionName === CONST.REPORT.ACTIONS.TYPE.REPORTPREVIEW; |
There was a problem hiding this comment.
Coming from #35092, we shouldn’t display the leave thread option for IOU previews


Details
Fixed Issues
$ https://github.com/Expensify/Expensify/issues/309277
PROPOSAL:
Tests
Subscribing/Unsubscribing to a thread with comments:
Subscribing to a thread without comments (Need 2 users, User A and User B):
Offline tests
QA Steps
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)myBool && <MyComponent />.src/languages/*files and using the translation methodWaiting for Copylabel for a copy review on the original GH to get the correct copy.STYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)/** comment above it */thisproperly so there are no scoping issues (i.e. foronClick={this.submit}the methodthis.submitshould be bound tothisin the constructor)thisare necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);ifthis.submitis never passed to a component event handler likeonClick)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Web
Screen.Recording.2023-10-27.at.4.41.32.PM.mov
Screen.Recording.2023-10-17.at.10.35.58.PM.mov
Mobile Web - Chrome
Screen.Recording.2023-10-27.at.4.46.09.PM.mov
Mobile Web - Safari
Screen.Recording.2023-10-27.at.4.47.06.PM.mov
Desktop
Screen.Recording.2023-10-27.at.4.55.40.PM.mov
iOS
Android
IMG_8975.MOV