fix: enable enableEdgeToEdgeBottomSafeAreaPadding#97031
Conversation
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 32873b3954
ℹ️ 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".
| setIsVisible(false); | ||
| }} | ||
| /> | ||
| <View style={bottomSafeAreaPaddingStyle}> |
There was a problem hiding this comment.
Enable edge-to-edge mode for this padded modal
On devices with a nonzero bottom safe-area inset, this wrapper adds the inset through useBottomSafeSafeAreaPaddingStyle, while the bottom-docked Modal still applies its default safe-area padding because enableEdgeToEdgeBottomSafeAreaPadding was not set. Opening the transaction long-press menu therefore produces double bottom spacing; enable edge-to-edge mode on this modal as done for the other migrated bottom-docked menus.
Useful? React with 👍 / 👎.
|
@shubham1206agra 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] |
Explanation of Change
This is part 2 of migrating the app to edge-to-edge bottom safe area handling. No new infrastructure is added — this reuses the
enableEdgeToEdgeBottomSafeAreaPaddingplumbing merged in part 1, and applies it to the next batch of menus and modals. In each case the bottom safe area padding is moved off the modal container and onto the scrollable / bottom-docked content, so the content sits correctly above the Android navigation bar in edge-to-edge mode.Enabled edge-to-edge for the following components:
Dropdown & popover menus (
PopoverMenu)ButtonWithDropdownMenu(shared dropdown used across many call sites; also removes its now-redundant manual safe area padding)AddPaymentMethodMenuAvatarWithImagePickerAttachmentPickerWithMenuItems(composer+menu)CopilotPage(delegate / delegator menus)ConnectToNetSuiteFlowConnectToCertiniaFlowSearchTypeMenuNarrowSearchActionsBarCreateButtonSearchSelectAllMenuDialog modals (bottom-docked
Modal)11.
DecisionModal12.
ProactiveAppReviewModal13.
ExportDownloadStatusModal14.
ReportPDFDownloadModal15.
RequireTwoFactorAuthenticationModal16.
BaseOpenAppFailureModalMobile selection ("Select") long-press menus
17.
useRowLongPressMenu18.
Table19.
MoneyRequestReportTransactionList/MoneyRequestReportTransactionLongPressModalPickers (
PopoverWithMeasuredContent+ selection list)20.
CategoryPickerModal21.
TagPickerModal(with a newaddBottomSafeAreaPaddingprop onTagPicker, mirroringCategoryPicker)Other
PopoverWithMeasuredContentcallers22.
FABPopoverMenu(global+create menu)23.
useReportSubmitToPopover(submit-to-approver popover)24.
FilterPopupButton(Search filter dropdowns)The remaining modals/menus (e.g.
FeatureTrainingModal, the v2PopoverMenucontent, and theVideoPlayerplayback menu) will be handled in follow-up PRs.Fixed Issues
$ #64241
PROPOSAL:
Tests
Offline tests
QA Steps
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
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari