Repository navigation
Conversation
Co-authored-by: Situ Chandra Shil <situchan@users.noreply.github.com>
|
Hey! I see that you made changes to our Form component. Make sure to update the docs in FORMS.md accordingly. Cheers! |
Codecov Report❌ Looks like you've decreased code coverage for some files. Please write tests to increase, or at least maintain, the existing level of code coverage. See our documentation here for how to interpret this table.
|
|
🤖 Android test steps verification results: Verified on standalone Android NewDot: app and Workspace Rules opened, but Add rule hit a Control-plan upgrade gate. Keyboard regression checks were blocked, and the running PR revision could not be confirmed.
|
|
🤖 Web test steps verification results: Enabled Rules through More features and opened Rules successfully. Add rule displayed a paid Control-plan upgrade dialog; no upgrade was accepted, so form and typing checks remain blocked rather than product failures.
|



Explanation of Change
Restore the description input's visibility when typing resumes without another focus event. The scrolling form tracks the input box and scroll viewport, coalesces edits into one animation frame, and scrolls only when the bounded input is obscured. The multiline input retains responsibility for scrolling its own text to the caret.
Keep initial-focus scrolling, refusal scrolling, and form/draft handling unchanged. Cancel pending recovery on blur, submission, deactivation, and unmount; exclude the non-scrolling Describe modal. Add an opt-in immediate, non-animated form scroll so editing cannot queue delayed keyboard-animation scrolls; existing callers keep their previous behavior.
Manual/native QA is left to
situchan, as requested. Native keyboard overlap and multiline caret visibility have not been verified by Melvin; a viewport smaller than the input still needs manual coverage.AI Tests
Contributor branch
No accessible contributor fork was found, so this draft uses an upstream branch. To copy it to your own fork:
Fixed Issues
$ #106059
PROPOSAL: #106059 (comment)
Tests
// TODO: The human co-author must fill out the tests you ran before marking this PR as "ready for review".
Offline tests
QA Steps
// TODO: The human co-author must fill out the QA tests you ran before marking this PR as "ready for review".
// TODO: These must be filled out, or the issue title must include "[No QA]."
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectionAvatar, I verified the components usingAvatarare working as expected)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