Parcourir la source

Other: Make transformation helper method always return copy of Position.

Maciej Gołaszewski il y a 8 ans
Parent
commit
fa83f7705f
1 fichiers modifiés avec 4 ajouts et 4 suppressions
  1. 4 4
      packages/ckeditor5-engine/src/model/position.js

+ 4 - 4
packages/ckeditor5-engine/src/model/position.js

@@ -515,7 +515,7 @@ export default class Position {
 	_getTransformedByDeletion( deletePosition, howMany ) {
 		// This position can't be affected if deletion was in a different root.
 		if ( this.root != deletePosition.root ) {
-			return this;
+			return Position.createFromPosition( this );
 		}
 
 		const comparisonResult = compareArrays( deletePosition.getParentPath(), this.getParentPath() );
@@ -552,7 +552,7 @@ export default class Position {
 			}
 		}
 
-		return this;
+		return Position.createFromPosition( this );
 	}
 
 	/**
@@ -569,7 +569,7 @@ export default class Position {
 	_getTransformedByInsertion( insertPosition, howMany, insertBefore ) {
 		// This position can't be affected if insertion was in a different root.
 		if ( this.root != insertPosition.root ) {
-			return this;
+			return Position.createFromPosition( this );
 		}
 
 		if ( compareArrays( insertPosition.getParentPath(), this.getParentPath() ) == 'same' ) {
@@ -594,7 +594,7 @@ export default class Position {
 			}
 		}
 
-		return this;
+		return Position.createFromPosition( this );
 	}
 
 	/**