[iOS] Editor jumps to middle of screen when focused with cursor at bottom
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 23.3k
- Forks
- 2k
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 296
Description
Description
Bug description
When focusing an Editor with a large amount of text and a fixed height (HeightRequest), the entire page view unexpectedly scrolls upward, positioning the editor roughly in the middle of the screen above the keyboard.
This behavior occurs only when the text cursor (caret) is located at the very bottom visible line of the Editor at the moment of focusing.
If the cursor is placed anywhere else (for example, in the top or middle lines), the issue does not occur.
The issue started appearing with .NET 9.0.0 workloads.
It works correctly in .NET 8.0.100 workloads.
Affected platforms
iOS
My testing platform
- Platform: iOS
- Version: iOS 18.5 (Simulator – iPhone 16 Pro Max)
- .NET version: .NET 9
- MAUI workload version: 9.0.82 (also reproducible since 9.0.0)
- Regression from: .NET 8.0.100
- Reproduces on device and simulator: Yes
- Reproduces on Android: No
Expected behavior
The page layout should remain stable when the editor receives focus.
The system should only adjust enough to keep the caret visible, not shift the entire content up.
Actual behavior
When the cursor is on the bottom visible line and the editor is focused, the entire page shifts upward, centering the control above the keyboard.
If the cursor is not at the bottom, the issue does not occur.
Steps to Reproduce
Use my repo:
https://github.com/mtopolewski/MauiEditorIssueApp
And look at my video:
https://github.com/user-attachments/assets/f1f88890-4b7f-4299-9cbd-b036403373c9
Link to public reproduction project repository
https://github.com/mtopolewski/MauiEditorIssueApp
Version with bug
9.0.0 GA
Is this a regression from previous behavior?
Yes, this used to work in .NET MAUI
Last version that worked well
.net8 8.0.100
Affected platforms
iOS
Affected platform versions
18.5
Did you find any workaround?
Back to .net8 (workload 8.0.100)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked MauiEditorIssueApp reproduction project and reproduce the focus case on iOS 18.5 with the .NET 9.0.82 workload, then compare it with .NET 8.0.100. Done means the page remains stable when a fixed-height Editor is focused with the caret on its bottom visible line, while the caret still remains visible above the keyboard.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, ios
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100