Keep Android new task composer above keyboard - #4388
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
ApprovabilityVerdict: Approved This is a self-contained Android UI fix that switches keyboard handling components (KeyboardAvoidingView → KeyboardStickyView) to keep the composer above the keyboard. The change restructures layout hierarchy without modifying business logic or introducing new functionality. You can customize Macroscope's approvability policy. Learn more. |
82eee6c to
4e3aa7b
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 4e3aa7b. Configure here.
4e3aa7b to
6a7e3c4
Compare
Dismissing prior approval to re-evaluate 6a7e3c4
7389b10 to
e6eff76
Compare
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
e6eff76 to
967ab35
Compare
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
… the keyboard while it expands)
967ab35 to
2b8c311
Compare
2b8c311 to
f5846bf
Compare
…ove the keyboard while it expands)
…ove the keyboard while it expands)

What Changed
KeyboardStickyView.Why
The Android new-task composer changes height as focus expands the collapsed prompt pill into a multiline editor with toolbar controls. The padding-based keyboard relayout could race that height change, leaving part of the editor and toolbar underneath Gboard.
Anchoring the Android composer directly to the keyboard makes the expansion grow upward and keeps the complete composer accessible while typing.
UI Changes
Before: With Gboard open and a multiline prompt, the lower portion of the composer can remain hidden behind the keyboard.
After: The expanded editor and its model/configuration/action row remain fully above Gboard, including at the editor’s maximum height.
Verified on a physical Pixel 9 Pro XL through wireless debugging, plus an Android 35 emulator. On the phone, the toolbar bottom moved from
1628(inside Gboard) to1363(fully above Gboard’s1399top edge).Physical-device evidence
Watch the wireless-debugging interaction recording
Validation
vp checkvp run typecheckvp run lint:mobilevp run --filter @t3tools/mobile test— 92 files, 538 tests passedChecklist
Note
Low Risk
Scoped Android UI/layout change in one screen, following an existing
KeyboardStickyViewpattern elsewhere in mobile; no auth, data, or API impact.Overview
On Android, the new-thread draft screen no longer uses
KeyboardAvoidingViewwith padding to lift the composer. The draft composer (surface, toolbar, gradient chrome) is wrapped inKeyboardStickyViewwith absolute bottom anchoring so it tracks the IME.That change targets a race when the collapsed pill expands into a multiline editor: padding-based avoidance could leave the editor and toolbar under Gboard. Sticky anchoring lets height growth move upward while the bar stays above the keyboard.
iOS still uses the existing
KeyboardAvoidingViewlayout; only the Android branch inNewTaskDraftScreenchanges.Reviewed by Cursor Bugbot for commit f5846bf. Bugbot is set up for automated code reviews on this repo. Configure here.
Note
Keep Android new task composer above the keyboard using
KeyboardStickyViewOn Android, the draft composer was previously laid out with
KeyboardAvoidingView, which could leave the toolbar obscured by the keyboard. The composer is now wrapped in aKeyboardStickyViewwith absolute bottom positioning so it anchors to the bottom and rises with the IME. The non-Android path usingKeyboardAvoidingViewis unchanged.Macroscope summarized f5846bf.