-
-
Notifications
You must be signed in to change notification settings - Fork 3.7k
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
Rendering deeper changes fails to update text nodes #4174
Comments
I also encountered a simillar issue in ckeditor/ckeditor5-basic-styles#55 (comment). It's worth checking when we'll be working on this fix. |
There are two bugs connected with this and related tickets. Both are caused by the fact that |
I've also pushed
But I am not sure I like those solutions and I think that we need to discuss how |
The https://github.com/ckeditor/ckeditor5-typing/issues/120 issue is just solved by adjusting mutations observer as in In this case the typed letter is placed outside of the link like:
Which causes inconsistency with the model. And then trying to map the
the |
Other: Introduced deep children text nodes rerendering. Closes #1125. Closes #1093. Closes ckeditor/ckeditor5-typing#120.
Example:
<p><a>Text<b>X</b></a></p>
.<p>
) instead of at the end of<b>
where we want to render it. It means that at this point we have the<p>
's children marked to be re-rendered.<p><a>Text<b>XY</b></a></p>
.<a>
's children and then<p>
's children. It also wants to update "X" text node but since<a>
will be rendered anyway, this is blocked._updateChildren( <a> )
is executed but it takes<b>
throughviewToDom()
which then usesmapViewToDom()
(because in the view that's still the same element) and we get the old...<b>X</b>
DOM element.This needs to be fixed in
viewToDom()
– it seems that it needs to somehow update the entire tree (not only take the element from the mapper) or mark its contents to be re-rendered by the renderer after it does its job.Causes the following issues:
The text was updated successfully, but these errors were encountered: