|
@@ -171,6 +171,10 @@ export default class Renderer {
|
|
|
render() {
|
|
render() {
|
|
|
let inlineFillerPosition;
|
|
let inlineFillerPosition;
|
|
|
|
|
|
|
|
|
|
+ // Remove unneeded fake selection container from the DOM so it will not affect the DOM nodes diffing.
|
|
|
|
|
+ // It will be re-added if needed when rendering the selection.
|
|
|
|
|
+ this._removeFakeSelection();
|
|
|
|
|
+
|
|
|
// Refresh mappings.
|
|
// Refresh mappings.
|
|
|
for ( const element of this.markedChildren ) {
|
|
for ( const element of this.markedChildren ) {
|
|
|
this._updateChildrenMappings( element );
|
|
this._updateChildrenMappings( element );
|
|
@@ -660,7 +664,6 @@ export default class Renderer {
|
|
|
// If there is no selection - remove DOM and fake selections.
|
|
// If there is no selection - remove DOM and fake selections.
|
|
|
if ( this.selection.rangeCount === 0 ) {
|
|
if ( this.selection.rangeCount === 0 ) {
|
|
|
this._removeDomSelection();
|
|
this._removeDomSelection();
|
|
|
- this._removeFakeSelection();
|
|
|
|
|
|
|
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
@@ -676,7 +679,6 @@ export default class Renderer {
|
|
|
if ( this.selection.isFake ) {
|
|
if ( this.selection.isFake ) {
|
|
|
this._updateFakeSelection( domRoot );
|
|
this._updateFakeSelection( domRoot );
|
|
|
} else {
|
|
} else {
|
|
|
- this._removeFakeSelection();
|
|
|
|
|
this._updateDomSelection( domRoot );
|
|
this._updateDomSelection( domRoot );
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|