fix(perf): directly pass props to lhn items#63362
Conversation
|
ad4997f to
520b714
Compare
|
Do we need the C+ checklist here @adhorodyski? Thanks. |
|
I tested it and didn't find much difference as in your results: @adhorodyski after pressing record, we just select the first item and scroll down, right? Or am I doing something wrong? Thanks. MacOS: Chrome - Recording profilerScreen.Recording.2025-06-04.at.18.34.04.mov |
|
@brunovjk yes please we would like a checklist and testing on this one |
|
Ok I retested this 3x before and 3x after on a heavy account. From the timings we're both getting, it just looks like you're on a much smaller account - the % diffs are very similar, and we also have to take into account that there are lots of moving parts in the React tree that make it pretty hard to reproduce 1:1 (see that some of my runs are also different). |
|
@brunovjk feel free to continue with this |
Sure :D I'm testing on others platforms |
Reviewer Checklist
Screenshots/VideosMacOS: Chrome / Safari |
mountiny
left a comment
There was a problem hiding this comment.
Nice, great! moving this ahead with the NABs, please address them elsewhere.
| /** Whether the fullscreen is visible */ | ||
| isFullscreenVisible?: boolean; | ||
|
|
||
| isReportsSplitNavigatorLast: boolean; |
| /** Whether the fullscreen is visible */ | ||
| isFullscreenVisible?: boolean; | ||
|
|
||
| isReportsSplitNavigatorLast: boolean; |
|
✋ 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/mountiny in version: 9.1.63-0 🚀
|
|
Hey, @adhorodyski . Do we have QA steps here? |
|
@IuliiaHerets hey, no more than the FE performance tests to conduct for each change. For functional testing this should change completely nothing. |
|
@adhorodyski Can you add QA steps? |
|
@adhorodyski Seems like this has caused a regression here #63811, we are gonna revert this change for now. |
|
🚀 Deployed to production by https://github.com/Julesssss in version: 9.1.63-6 🚀
|






@mountiny
Explanation of Change
This PR moves
useOnyxconnections from within render items of LHN up the tree to the list level. This lets the CPU breathe more while maintaining the very same behaviour and data.Fixed Issues
$ #63439
PROPOSAL: N/A
Tests
This is how I measured the below results:
Offline tests
QA Steps
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectioncanBeMissingparam foruseOnyxtoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.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
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari
MacOS: Desktop