[CP Staging] Fix: keep "Add receipt" label on one line in compact confirmation banner - #97207
Conversation
Co-authored-by: Issa Nimaga <inimaga@users.noreply.github.com>
|
I analyzed the failing checks. All code, build, and test checks pass — The only failing check is
There's no code fix to push for this — it fails solely because the checkboxes in the PR description (the platform testing affirmations, the To clear this check: fill out the |
|
@sobitneupane 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] |
|
🚧 inimaga has triggered a test Expensify/App build. You can view the workflow run here. |
This comment has been minimized.
This comment has been minimized.
|
@emkhalid Could you take over testing of this PR instead of raising a new one |
On it, thanks |
trjExpensify
left a comment
There was a problem hiding this comment.
I think this should get a @Expensify/design review.
|
Also, swapping in @flaviadefaria as this was yours. 👍 |
|
Re-checked: all code, build, and test checks are still green. The only failing check is now Like the author checklist, this isn't a code defect I can push a fix for — it fails only because the reviewer-checklist boxes aren't all ticked. That's a reviewer affirmation, so the assigned reviewer needs to complete their checklist to clear it. There's nothing for me to commit here. |
|
@inimaga I reproduced the issue and confirmed this PR fixes it with minimum font and display sizes.
|
@trjExpensify This PR is a minor follow-up to the PR #96203 in order to fix the deploy blocker at #97153 The original design had been approved and this adjustment is fixing an edge case specific to Android devices with minimum system font size. |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppAndroid: mWeb ChromeiOS: HybridAppiOS: mWeb SafariMacOS: Chrome / Safari |
|
Need to get an additional review here because I instructed MelvinBot to create the PR. |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppAndroid: mWeb ChromeiOS: HybridAppiOS: mWeb SafariMacOS: Chrome / Safari |
|
🚧 inimaga has triggered a test Expensify/App build. You can view the workflow run here. |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
…uard Fix: keep "Add receipt" label on one line in compact confirmation banner (cherry picked from commit 795aa90) (cherry-picked to staging by lakchote)
|
🚀 Cherry-picked to staging by https://github.com/lakchote in version: 9.4.45-4 🚀
|
|
|


Explanation of Change
On the expense confirmation page, the compact "Add receipt" banner renders its label as a plain
<Text>inside a fixed-height (52dp),overflow: 'hidden'container. At minimum system font size the label wraps to a second line and the clipped overflow leaves only "Add" visible instead of "Add receipt".This adds a single-line guard to the compact label so it can never wrap out of the fixed-height banner:
numberOfLines={1}plusstyles.flexShrink1so it truncates gracefully if space is ever tight, matching how the sharedButtonhandles its icon + label row. The fixedheight/overfloware intentionally kept — they preserve the intended compact banner size; the real defect was the missing wrap guard.Fixed Issues
$ #97153
PROPOSAL: #97153 (comment)
Tests
Offline tests
QA Steps
Precondition:
Test steps:
Expected Result:
"Add receipt" will be shown on confirm page.
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