fix: 24261 user able to select 2 emoji at a time#24614
fix: 24261 user able to select 2 emoji at a time#24614marcochavezf merged 6 commits intoExpensify:mainfrom
Conversation
|
@robertKozik 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] |
|
@robertKozik Can you help take a look at my PR? |
|
@robertKozik any updates? |
|
Today, I'll review your PR. I apologize for any inconvenience; a few tasks have piled up on my end. |
|
@robertKozik Got it, but |
Reviewer Checklist
Screenshots/VideosWebweb.movMobile Web - Chromeandroid.-.web.movMobile Web - Safariios.-.web.movDesktopdesktop.moviOSios.native.movAndroidScreen.Recording.2023-08-22.at.12.36.54.mov |
robertKozik
left a comment
There was a problem hiding this comment.
LGTM, let's push it forward 🚀
|
@marcochavezf @tienifr I think we should wait with merge for #24173 to be sure the ref solution inside useSingleExecution won't get overwritten |
|
#24173 has been merged and I think we're ready to push this forward @marcochavezf @robertKozik |
| setIsExecuting(false); | ||
|
|
||
| setIsExecuting(true); | ||
|
|
There was a problem hiding this comment.
isExecutingRef is updated right after singleExecution is executed. Why do you think it's updated on each render?
There was a problem hiding this comment.
Because the isExecutingRef.current is updated at line 13 which I guess will be updated when useSingleExecution function is invoked again on a re-render.
I expect it to look like this:
setIsExecuting(true);
isExecutingRef.current = true;
CMIIW
There was a problem hiding this comment.
@bernhardoj Thanks for your suggestion. I totally agree with your idea. Updated the PR
|
@robertKozik Pls take a look at this PR when you have a chance. Thanks |
|
@tienifr I'm okay with that change 👌🏼 The suggestion looks more inline with the intent of this hook. I've tested it briefly and I didn't find any regression after this change |
|
@marcochavezf bumping as the PR introducing the |
|
Thanks guys, 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. |
|
🚀 Deployed to staging by https://github.com/marcochavezf in version: 1.3.63-0 🚀
|
|
🚀 Deployed to production by https://github.com/mountiny in version: 1.3.63-2 🚀
|
|
🚀 Deployed to staging by https://github.com/marcochavezf in version: 1.3.64-0 🚀
|
|
🚀 Deployed to production by https://github.com/mountiny in version: 1.3.64-2 🚀
|
|
|
||
| setIsExecuting(true); | ||
|
|
||
| const execution = action(params); |
There was a problem hiding this comment.
@tienifr Any reason why we're not spreading params here?
|
Just noting that this PR caused a regression in the emoji picker due to not spreading the params here App/src/hooks/useSingleExecution.js Line 25 in d494433 This caused the selected emoji to unexpectedly come through as an array. More details here. |
Details
Fixed Issues
$ #24261
PROPOSAL: #24261 (comment)
Tests
Offline tests
Same as above
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-08-16.at.12.09.33.mov
Mobile Web - Chrome
original-527B526D-1C1D-4F4C-9F0F-43CCBAB3501B.mp4
Mobile Web - Safari
original-AAE70EF4-5107-4C03-915B-F30C7B8CB825.mp4
Desktop
Screen.Recording.2023-08-16.at.12.26.27.mov
iOS
Uploading Screen Recording 2023-08-16 at 15.20.10.mov…
Android
Screen.Recording.2023-08-16.at.13.52.28.mov