Fix Unable to scroll down group confirm page and member details page - #87402
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6c75c91248
ℹ️ 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".
| } | ||
|
|
||
| function AvatarAndGroupNameSection({setAvatarFile}: {setAvatarFile: (avatarFile: File | CustomRNImageManipulatorResult | undefined) => void}) { | ||
| const optimisticReportID = useRef<string>(generateReportID()); |
There was a problem hiding this comment.
Use one optimistic report ID for avatar and group creation
AvatarAndGroupNameSection now creates its own optimisticReportID, but createGroup still uses a different ID from NewChatConfirmPage. When no custom avatar is selected, preview uses getDefaultGroupAvatar() from the child ID while the created report ID comes from the parent, so the displayed default avatar can differ from the actual group avatar after creation (and can also change on orientation remounts). Reuse the parent report ID in the avatar section so preview and created chat stay consistent.
Useful? React with 👍 / 👎.
Codecov Report✅ Changes either increased or maintained existing code coverage, great job!
|
| ); | ||
| return options; | ||
| }, [allPersonalDetails, newGroupDraft?.participants]); | ||
| }, [allPersonalDetails, newGroupDraft]); |
There was a problem hiding this comment.
The original was more precise. Consider reverting to newGroupDraft?.participants.
There was a problem hiding this comment.
React Compiler was complaining about broken memoization when I was using newGroupDraft?.participants, so I got rid of all useMemo and useCallback in this component to depend on the React Compiler here
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppScreen.Recording.2026-04-09.at.10.55.37.movAndroid: mWeb ChromeiOS: HybridAppScreen.Recording.2026-04-09.at.11.05.46.moviOS: mWeb SafariMacOS: Chrome / Safari |
|
🚧 @mjasikowski 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! 🧪🧪
|
|
✋ 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/mjasikowski in version: 9.3.58-0 🚀
Bundle Size Analysis (Sentry): |
|
No help site changes are required for this PR. This PR is a UI layout fix that makes the group chat confirm page and member details page scrollable in landscape mode. It doesn't change any features, workflows, settings, or terminology — just wraps existing content in scrollable containers and adjusts component structure for landscape rendering. Nothing in |
|
🚀 Deployed to production by https://github.com/AndrewGable in version: 9.3.58-9 🚀
|
|
🚀 Deployed to production by https://github.com/AndrewGable in version: 9.3.58-9 🚀
|
Explanation of Change
Fixing NewChatConfirmPage and ReportParticipantDetailsPage layouts to make them scrollable to let user see full content in the landscape mode.
Fixed Issues
$ #87306
PROPOSAL: N/A
Tests
Offline tests
N/A
QA Steps
Same as Tests
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, 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.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
Screen.Recording.2026-04-08.at.18.19.30.mov
iOS: Native
Screen.Recording.2026-04-08.at.18.24.51.mov