Repository navigation
Reapply "Fix iOS 27 keyboard toggle focus handoff" - #10152
azooz2003-bit merged 1 commit into
Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (13)
📝 WalkthroughWalkthroughThe PR moves keyboard presentation coordination into ChangesiOS terminal presentation
Estimated code review effort: 5 (Critical) | ~120 minutes Possibly related PRs
Suggested reviewers: Sequence Diagram(s)sequenceDiagram
participant Keyboard
participant GhosttySurfaceHostView
participant GhosttySurfaceView
participant TerminalRenderer
Keyboard->>GhosttySurfaceHostView: Send keyboard frame transition
GhosttySurfaceHostView->>GhosttySurfaceHostView: Calculate dock reservation and terminal transform
GhosttySurfaceHostView->>GhosttySurfaceView: Publish transition state and settled geometry
GhosttySurfaceView->>TerminalRenderer: Apply final renderer geometry
✨ Finishing Touches📝 Generate docstrings
🧪 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 |
Reapply the verified iOS 27 keyboard-toggle fix after the accidental revert.
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.Summary by cubic
Reapplies the iOS 27 keyboard-toggle fix by moving keyboard motion to a host view and freezing renderer geometry during transitions. Previously,
UIKeyboardLayoutGuidecould be stale on iOS 27, causing one-frame gaps and snap-on-reopen; pending scrolls could reveal a stale viewport. Now the host animates the dock and terminal together, then folds the settled edge into the renderer; pending scrolls drain before verified replay reveal.GhosttySurfaceHostViewto own dock and terminal presentation; only iOS 27 uses notification-derived geometry, other OS versions keep the system guide.GhosttySurfaceViewdefers geometry whilekeyboardPresentationTransitionActiveand exposes hosted APIs to finish the transition at the exact edge.MobileKeyboardTransitionaddsbeginFrame/beginOverlapto detect reversals; host rebases from live frames to avoid clip/dock gaps..requestVisibleFocustoTerminalInputSessionReducer; terminal/composer focus requests now show the keyboard without reloading input views mid-transition.drainPendingScrollForVerifiedReplayReveal()and generation-tracked local scroll application to prevent stale viewport flashes.ONLY_ACTIVE_ARCH=YESfor the iOS Simulator build.Written for commit db9a37c. Summary will update on new commits.
Summary by CodeRabbit