Repository navigation
Positioning IME bars on iOS - #61981
Conversation
f3c1ac4 to
4ba45f7
Compare
justinmc
left a comment
There was a problem hiding this comment.
LGTM, super excited for this.
There was a problem hiding this comment.
Why is a 1 frame delay needed here?
There was a problem hiding this comment.
The information is sent to the platform every frame if needed.
There was a problem hiding this comment.
| // No composing text so the width should not be too wide becomes | |
| // No composing text so the width should not be too wide because |
There was a problem hiding this comment.
Can this lag cause jitter when the true information is received? 1 frame swapping between an estimate and true info may be a source of jank.
There was a problem hiding this comment.
The "true" information does not trigger a UI update of any sort when it's sent to the platform. It will be used as an estimate the next time iOS requests this information.
There was a problem hiding this comment.
For multiline text, first and last may not get you the bounding boxes you expect for the left and right positions
There was a problem hiding this comment.
We should add a test for this case as well.
There was a problem hiding this comment.
Could you elaborate a bit on this? I would expect the marked text to be continuous and has a consistent writing direction, because it's produced by the same IME. Is it because the text within the given TextRange could be using different fonts so they might be grouped in different TextBoxes even if they are on the same line?
There was a problem hiding this comment.
I guess the line can have more than 1 run.
There was a problem hiding this comment.
| // invalid range. | |
| // Invalid range. |
There was a problem hiding this comment.
| // collapsed range. | |
| // Collapsed range. |
|
Waiting for the release to be cut. |
|
Gold has detected about 3 untriaged digest(s) on patchset 16. |
40d0013 to
57e005f
Compare
38e3b15 to
d9e9759
Compare
d9e9759 to
96ad2f1
Compare
| /// This property is typically used to notify the renderer of input gestures | ||
| /// when [RenderEditable.ignorePointer] is true. | ||
| RenderEditable? get renderEditable => _editableKey.currentContext!.findRenderObject() as RenderEditable?; | ||
| RenderEditable get renderEditable => _editableKey.currentContext!.findRenderObject()! as RenderEditable; |
There was a problem hiding this comment.
Nice way of getting rid of all of the exclamation marks elsewhere in the file. I'm still figuring out all of the NNBD stuff but it's looking pretty slick.
|
This pull request is not suitable for automatic merging in its current state.
|
|
This pull request is not suitable for automatic merging in its current state.
|
Description
Engine: flutter-team-archive/engine#19929
Keep sending marked text rect / caret rect information for the iOS text input plugin to consume.
Turning this into a real PR when #61940 is merged .
Related Issues
Depends on #61940
Fixes #9344
Tests
I added the following tests:
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes (
[x]). This will ensure a smooth and quick review process.///).flutter analyze --flutter-repo) does not report any problems on my PR.Breaking Change
Did any tests fail when you ran them? Please read [Handling breaking changes].