Add mentions and emojis suggestions to Home prompt box; fix RHP suggestions - #99912
Conversation
|
@codex please review |
|
Codex Review: Didn't find any major issues. Swish! Reviewed commit: ℹ️ About Codex in GitHubCodex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback". |
|
@ZhenjaHorbach 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] |
|
🚧 shawnborton has triggered a test Expensify/App build. You can view the workflow run here. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4fee957c77
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
This comment has been minimized.
This comment has been minimized.
|
This might be a silly question, but why would you ever need to @mention someone in that Concierge input? |
|
My thinking is that it might be nice to do something like |
|
Ah yes! That makes perfect sense, thank you. |
|
@shawnborton are you still able to reproduce? I can't: Screen.Recording.2026-09-01.at.10.27.13.mov |
|
Jest test failing on main, not caused by this PR, will merge main later when it's fixed |
|
Hmm odd, I can't reproduce now - ignore me! |
Reviewer Checklist
Screenshots/VideosAndroid: HybridApp2026-09-10.10.43.53.movAndroid: mWeb Chrome2026-09-10.10.43.53.moviOS: HybridApp2026-09-10.10.37.14.moviOS: mWeb Safari2026-09-10.10.34.26.movMacOS: Chrome / Safari2026-09-10.10.42.05.mov |
dylanexpensify
left a comment
There was a problem hiding this comment.
good from a product perspective 👍
|
Ok I talked to @ZhenjaHorbach in DMs and we verified that flickering also happens on main in the concierge chat, so this is not something that was introduced on this PR, we can test on AdHoc to see if it's not only a simulator/dev build problem |
|
@shawnborton @dylanexpensify could you trigger adhoc build here? 🙏 thanks! |
|
Doing it now 🚀 |
|
🚧 shawnborton has triggered a test Expensify/App build. You can view the workflow run here. |
This comment has been minimized.
This comment has been minimized.
|
@ZhenjaHorbach I tested on two physical Android devices and couldn't reproduce flickering, maybe this is only simulator/dev build issue? This is not caused by this PR anyway so I think we can keep an eye on this and proceed |
|
LGTM then! |
puneetlath
left a comment
There was a problem hiding this comment.
Seems good to me from a code-perspective. Just confirming that @shawnborton @dylanexpensify you guys are good on the product side?
|
Yeah |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚧 puneetlath has triggered a test Expensify/App build. You can view the workflow run here. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
🚀 Deployed to staging by https://github.com/puneetlath in version: 9.4.76-0 🚀
|
|
🤖 Yes, help site changes are required. Draft PR: #100902 Why: this PR adds a user-facing capability — What changed (one file,
No other article needs changes. The UI strings verified against the running app on web, not the code
Note for a separate cleanup: Written against @GCyganek, please review the linked help site PR and confirm it reflects the current behavior. Then mark the linked help site PR |
|
Deploy Blocker #100915 was identified to be related to this PR. |
|
Deploy Blocker #100932 was identified to be related to this PR. |
|
Deploy Blocker #100934 was identified to be related to this PR. |
|
🚀 Deployed to production by https://github.com/mountiny in version: 9.4.76-1 🚀
Bundle Size Analysis (Sentry): |


Explanation of Change
Adds
@mentionand:emojisuggestions to the Home page Concierge prompt box. Extracted the logic shared by the report composer and message edit into a newuseComposerSuggestionshook, reused by all three. Also fixes suggestions rendering behind the RHP by giving the suggestions portal an explicit z-index.Fixed Issues
$ #99550
PROPOSAL: N/A
Tests
Web:
@followed by a few letters of a known contact (e.g.@exp).Enter.Enteragain (with no suggestion list open).:smiin the prompt box.Enterand verify the emoji is inserted instead of the prompt being sent.@aagain to open the suggestions, then pressEscape.@aagain to open the suggestions, then click outside the prompt box so it loses focus.@to trigger mention suggestion list in a way that changes prompt box height with suggestion list open.RHP (web):
@.:smiand verify that an emoji suggestion list appearsMobile app:
@.:smiin the prompt box.@to trigger mention suggestion list in a way that changes prompt box height with suggestion list open.Offline tests
N/A
QA Steps
Same as tests
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectionAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.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
Screen.Recording.2026-08-31.at.16.25.39.mov
suggestions placement
screen-20260903-161704-1788444993621.mp4
screen-20260903-161527-1788444893007.mp4
Android: mWeb Chrome
iOS: Native
Screen.Recording.2026-08-31.at.16.38.07.mov
suggestions placement:
Screen.Recording.2026-09-03.at.16.11.39.mov
Screen.Recording.2026-09-03.at.16.12.13.mov
Screen.Recording.2026-09-03.at.16.13.52.mov
iOS: mWeb Safari
MacOS: Chrome / Safari
Screen.Recording.2026-08-31.at.16.20.38.mov
Screen.Recording.2026-08-31.at.16.24.16.mov
Screen.Recording.2026-08-31.at.16.23.50.mov
Screen.Recording.2026-08-31.at.16.23.00.mov