-
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
chore: memoed renderItem on emoji and mention suggestion lists #31703
chore: memoed renderItem on emoji and mention suggestion lists #31703
Conversation
@alitoshmatov 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] |
Reviewing |
src/components/EmojiSuggestions.tsx
Outdated
</View> | ||
); | ||
}, | ||
[styles, prefix, preferredSkinToneIndex], |
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.
The styles object is quite large. Do you think that matters when including it in a dependency array? Would it be better to include all the used styles in the dependency array separately?
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.
It depends on the reference stability - we recreate this object each time the theme
changes, so each separate style will also change. In this case it's cheaper to run fewer equality checks (the whole styles there).
Hey there @alitoshmatov 👋 Is there any way I can help you with the review in here? Let me know! |
Sorry, all good, missed this one. I will review this today. |
I am facing this issue where mention suggestion is not closing even after choosing an email, also it is only happening in few selected emails. I couldn't reproduce this in main, staging and prod. @adhorodyski Can you retest it. I couldn't find exact root cause here Screen.Recording.2023-11-28.at.22.05.40.mov |
@alitoshmatov I'm able to reproduce this on |
aefa6c4
to
c5c3fb6
Compare
@alitoshmatov could you please give it another try? I've retested this multiple time for your & my emails (only these 2 were reproducible on both this branch and |
#32214 seems related |
Thank you, reviewing |
Reviewer Checklist
Screenshots/VideosAndroid: Nativehttps://github.com/Expensify/App/assets/59907218/7b9af8ab-dc81-4d47-b90c-7a4462d4a12cAndroid: mWeb Chromemenu-android.moviOS: Nativemenu-ios.mp4iOS: mWeb Safarimenu-safari.mp4MacOS: Chrome / Safarimenu-web.movMacOS: Desktopmenu-desktop.mov |
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!
Looks like we have merge conflicts here |
Yeah, on it! |
c5c3fb6
to
9070a4e
Compare
@roryabraham I've rebased & retested the proposed solution :) |
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
@roryabraham Can you assign me to corresponding issue so that we can handle payment after regression period is over |
🚀 Cherry-picked to staging by https://github.com/yuwenmemon in version: 1.4.7-4 🚀
@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes. |
🚀 Deployed to staging by https://github.com/roryabraham in version: 1.4.8-0 🚀
|
@alitoshmatov can you post in Contributor+ about this and tag me? I'm going to be AFK most of today and I want to make sure this doesn't slip through the cracks. We probably need to create a separate issue for your payment |
🚀 Deployed to production by https://github.com/yuwenmemon in version: 1.4.8-3 🚀
|
🚀 Deployed to production by https://github.com/yuwenmemon in version: 1.4.8-3 🚀
|
Details
This is a followup PR to the Flashlist migration on BaseAutoCompleteSuggestions under #31057 - it ensures renderItem functions are wrapped with useCallback for MentionSuggestions and EmojiSuggestions lists.
Fixed Issues
$ #30912
PROPOSAL: N/A
Tests
Offline tests
QA Steps
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodWaiting for Copy
label for a copy review on the original GH to get the correct copy.STYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)ScrollView
component to make it scrollable when more elements are added to the page.main
branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTest
steps.Screenshots/Videos
To be added.
Android: Native
android.mp4
Android: mWeb Chrome
android_mweb.mp4
iOS: Native
ios.mp4
iOS: mWeb Safari
ios_mweb.mp4
MacOS: Chrome / Safari
web.mp4
MacOS: Desktop
desktop.mp4