-
Notifications
You must be signed in to change notification settings - Fork 6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[web] Move text editing nodes outside of shadowDOM #39688
Merged
Merged
Changes from 14 commits
Commits
Show all changes
24 commits
Select commit
Hold shift + click to select a range
b7f7f22
Add a text editing host node, attach all text editing nodes to it
htoor3 1aa89a2
whitespace
htoor3 f055c0b
Merge remote-tracking branch 'upstream/main' into pass-autofill-exper…
htoor3 d9f1dd1
Move semantics tree outside of text editing host, change naming
htoor3 dfc1bab
Refactor
htoor3 23b5b6c
fix text editing tests
htoor3 546b92c
Merge remote-tracking branch 'upstream/main' into pass-autofill-exper…
htoor3 9586c58
Fix issues on semantic mode, fix tests, move platform views to new re…
htoor3 f74442e
Merge remote-tracking branch 'upstream/main' into pass-autofill-exper…
htoor3 ae00e40
Fix text field tests
htoor3 3b6f9eb
Remove unused imports
htoor3 4f75b6b
Fix host node tests
htoor3 b600dc6
Merge remote-tracking branch 'upstream/main' into pass-autofill-exper…
htoor3 df91ed5
Refactor, fix safari text field tests
htoor3 d8f96cd
Refactor, fix indentation, remove comments
htoor3 cc4ed23
Trailing whitespace
htoor3 de2e916
Merge remote-tracking branch 'upstream/main' into pass-autofill-exper…
htoor3 97555e5
Move conditional to compute talkback events when semantics enabled
htoor3 3ed55b8
Merge remote-tracking branch 'upstream/main' into pass-autofill-exper…
htoor3 36a0822
Merge remote-tracking branch 'upstream/main' into pass-autofill-exper…
htoor3 bf7f94e
Merge remote-tracking branch 'upstream/main' into pass-autofill-exper…
htoor3 401bb1c
Change function naming and comments for offset computations
htoor3 3815cea
Whitespace
htoor3 251fa13
Merge remote-tracking branch 'upstream/main' into pass-autofill-exper…
htoor3 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@yjbanov would love to get your thoughts on if we can safely move the semantics tree outside of the shadowDOM and into its own node?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
With the current problematic implementation of semantics, this shouldn't break anything I know of. However, one issue with the current semantics tree is that it does not contain platform views. This creates some issues with traversal order. I was thinking in the future to slice the semantics tree and interleave it with the render tree such that platform views can be embedded into the semantics tree while preserving the paint order. To do that, the semantics tree would have to be inside the shadow root, otherwise the
<slot>
elements won't work.Having said that, I'm willing to cross that bridge when we get there. What's the motivation for moving it out?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Primary motivation to move it out is to fix the password autofill issue for when semantics is enabled, since
<input>
s will be rendered in the semantics tree in that case and they'll face the same shadowDOM issues. AFAIK, the 2 nodes that host text editing elements would be whatever host we specify intext_editing.dart
and the semantics tree.