浏览代码

Merge pull request #62 from ckeditor/t/47

T/47 Fixed: Selection collapsed in wrong position after new text node is created.
Piotrek Koszuliński 9 年之前
父节点
当前提交
2e4fd5019d

+ 1 - 1
packages/ckeditor5-typing/src/input.js

@@ -264,7 +264,7 @@ class MutationHandler {
 
 
 		this._insert( modelPos, insertedText );
 		this._insert( modelPos, insertedText );
 
 
-		this.editing.model.selection.collapse( modelPos.parent, 'end' );
+		this.editing.model.selection.collapse( modelPos.getShiftedBy( insertedText.length ) );
 	}
 	}
 
 
 	_insert( position, text ) {
 	_insert( position, text ) {

+ 3 - 2
packages/ckeditor5-typing/tests/manual/selection.js

@@ -9,11 +9,12 @@ import ClassicEditor from '/ckeditor5/editor-classic/classic.js';
 import Enter from '/ckeditor5/enter/enter.js';
 import Enter from '/ckeditor5/enter/enter.js';
 import Typing from '/ckeditor5/typing/typing.js';
 import Typing from '/ckeditor5/typing/typing.js';
 import Paragraph from '/ckeditor5/paragraph/paragraph.js';
 import Paragraph from '/ckeditor5/paragraph/paragraph.js';
+import Bold from '/ckeditor5/basic-styles/bold.js';
 import Undo from '/ckeditor5/undo/undo.js';
 import Undo from '/ckeditor5/undo/undo.js';
 
 
 ClassicEditor.create( document.querySelector( '#editor' ), {
 ClassicEditor.create( document.querySelector( '#editor' ), {
-	features: [ Enter, Typing, Paragraph, Undo ],
-	toolbar: []
+	features: [ Enter, Typing, Paragraph, Undo, Bold ],
+	toolbar: [ 'bold' ]
 } )
 } )
 .then( editor => {
 .then( editor => {
 	window.editor = editor;
 	window.editor = editor;

+ 7 - 0
packages/ckeditor5-typing/tests/manual/selection.md

@@ -20,3 +20,10 @@
 1. Focus somewhere in the middle of text.
 1. Focus somewhere in the middle of text.
 2. Write "emd" and press <kbd>space</kbd>.
 2. Write "emd" and press <kbd>space</kbd>.
 3. Safari autocorrect should change "emd" to "end" and selection should be placed after space character.
 3. Safari autocorrect should change "emd" to "end" and selection should be placed after space character.
+
+#### Empty inline attributes
+
+1. Focus selection at "ins^tance".
+2. Use "Bold" feature.
+3. Type a letter.
+4. Selection should be placed after typed letter, "Bold" button should be on, next typed letters should be bold.