Преглед изворни кода

Merge pull request #534 from ckeditor/t/453

Moved default observers from EditingController to view document.
Szymon Cofalik пре 9 година
родитељ
комит
8e977fa8f4
23 измењених фајлова са 53 додато и 118 уклоњено
  1. 1 20
      packages/ckeditor5-engine/src/editingcontroller.js
  2. 17 1
      packages/ckeditor5-engine/src/view/document.js
  3. 3 3
      packages/ckeditor5-engine/src/view/observer/focusobserver.js
  4. 2 2
      packages/ckeditor5-engine/src/view/observer/keyobserver.js
  5. 2 2
      packages/ckeditor5-engine/src/view/observer/mutationobserver.js
  6. 2 2
      packages/ckeditor5-engine/src/view/observer/selectionobserver.js
  7. 0 11
      packages/ckeditor5-engine/tests/editingcontroller.js
  8. 21 7
      packages/ckeditor5-engine/tests/view/document/document.js
  9. 0 3
      packages/ckeditor5-engine/tests/view/document/jumpoverinlinefiller.js
  10. 0 7
      packages/ckeditor5-engine/tests/view/manual/focus.js
  11. 0 7
      packages/ckeditor5-engine/tests/view/manual/focusobserver.js
  12. 0 9
      packages/ckeditor5-engine/tests/view/manual/immutable.js
  13. 0 7
      packages/ckeditor5-engine/tests/view/manual/inline-filler.js
  14. 0 3
      packages/ckeditor5-engine/tests/view/manual/keyobserver.js
  15. 0 3
      packages/ckeditor5-engine/tests/view/manual/mutationobserver.js
  16. 0 7
      packages/ckeditor5-engine/tests/view/manual/noselection-iframe.js
  17. 0 7
      packages/ckeditor5-engine/tests/view/manual/noselection.js
  18. 0 7
      packages/ckeditor5-engine/tests/view/manual/selectionobserver.js
  19. 0 5
      packages/ckeditor5-engine/tests/view/manual/x-index.js
  20. 1 1
      packages/ckeditor5-engine/tests/view/observer/focusobserver.js
  21. 1 1
      packages/ckeditor5-engine/tests/view/observer/keyobserver.js
  22. 1 1
      packages/ckeditor5-engine/tests/view/observer/mutationobserver.js
  23. 2 2
      packages/ckeditor5-engine/tests/view/observer/selectionobserver.js

+ 1 - 20
packages/ckeditor5-engine/src/editingcontroller.js

@@ -4,11 +4,6 @@
  */
 
 import ViewDocument from './view/document.js';
-import MutationObserver from './view/observer/mutationobserver.js';
-import SelectionObserver from './view/observer/selectionobserver.js';
-import FocusObserver from './view/observer/focusobserver.js';
-import KeyObserver from './view/observer/keyobserver.js';
-
 import Mapper from './conversion/mapper.js';
 import ModelConversionDispatcher from './conversion/modelconversiondispatcher.js';
 import { insertText, remove, move } from './conversion/model-to-view-converters.js';
@@ -24,15 +19,7 @@ import EmitterMixin from '../utils/emittermixin.js';
 /**
  * Controller for the editing pipeline. The editing pipeline controls {@link engine.EditingController#model model} rendering,
  * including selection handling. It also creates {@link engine.EditingController#view view document} which build a
- * browser-independent virtualization over the DOM elements. Editing controller also attach default converters and
- * observers.
- *
- * Note that the following observers are attached by the controller and are always available:
- *
- * * {@link view.observer.MutationObserver},
- * * {@link view.observer.SelectionObserver},
- * * {@link view.observer.FocusObserver},
- * * {@link view.observer.KeyObserver}.
+ * browser-independent virtualization over the DOM elements. Editing controller also attach default converters.
  *
  * @memberOf engine
  */
@@ -59,12 +46,6 @@ export default class EditingController {
 		 */
 		this.view = new ViewDocument();
 
-		// Attach default observers.
-		this.view.addObserver( MutationObserver );
-		this.view.addObserver( SelectionObserver );
-		this.view.addObserver( FocusObserver );
-		this.view.addObserver( KeyObserver );
-
 		/**
 		 * Mapper which describes model-view binding.
 		 *

+ 17 - 1
packages/ckeditor5-engine/src/view/document.js

@@ -9,7 +9,10 @@ import DomConverter from './domconverter.js';
 import RootEditableElement from './rooteditableelement.js';
 import { injectQuirksHandling } from './filler.js';
 import log from '../../utils/log.js';
-
+import MutationObserver from './observer/mutationobserver.js';
+import SelectionObserver from './observer/selectionobserver.js';
+import FocusObserver from './observer/focusobserver.js';
+import KeyObserver from './observer/keyobserver.js';
 import mix from '../../utils/mix.js';
 import ObservableMixin from '../../utils/observablemixin.js';
 
@@ -22,6 +25,13 @@ import ObservableMixin from '../../utils/observablemixin.js';
  * If you want to only transform the tree of view elements to the DOM elements you can use the
  * {@link engine.view.DomConverter DomConverter}.
  *
+ * Note that the following observers are added by the class constructor and are always available:
+ *
+ * * {@link view.observer.MutationObserver},
+ * * {@link view.observer.SelectionObserver},
+ * * {@link view.observer.FocusObserver},
+ * * {@link view.observer.KeyObserver}.
+ *
  * @memberOf engine.view
  * @mixes utils.EmitterMixin
  */
@@ -92,6 +102,12 @@ export default class Document {
 		 */
 		this._observers = new Map();
 
+		// Add default observers.
+		this.addObserver( MutationObserver );
+		this.addObserver( SelectionObserver );
+		this.addObserver( FocusObserver );
+		this.addObserver( KeyObserver );
+
 		injectQuirksHandling( this );
 
 		// Listens `render` event on default priority.

+ 3 - 3
packages/ckeditor5-engine/src/view/observer/focusobserver.js

@@ -10,7 +10,7 @@ import DomEventObserver from './domeventobserver.js';
  * Focus observer handle also {@link engine.view.RootEditableElement#isFocused isFocused} property of the
  * {@link engine.view.RootEditableElement root elements}.
  *
- * Note that this observer is attached by the {@link engine.EditingController} and is available by default.
+ * Note that this observer is attached by the {@link engine.view.Document} and is available by default.
  *
  * @memberOf engine.view.observer
  * @extends engine.view.observer.DomEventObserver
@@ -44,7 +44,7 @@ export default class FocusObserver extends DomEventObserver {
  *
  * Introduced by {@link engine.view.observer.FocusObserver}.
  *
- * Note that because {@link engine.view.observer.FocusObserver} is attached by the {@link engine.EditingController}
+ * Note that because {@link engine.view.observer.FocusObserver} is attached by the {@link engine.view.Document}
  * this event is available by default.
  *
  * @see engine.view.observer.FocusObserver
@@ -57,7 +57,7 @@ export default class FocusObserver extends DomEventObserver {
  *
  * Introduced by {@link engine.view.observer.FocusObserver}.
  *
- * Note that because {@link engine.view.observer.FocusObserver} is attached by the {@link engine.EditingController}
+ * Note that because {@link engine.view.observer.FocusObserver} is attached by the {@link engine.view.Document}
  * this event is available by default.
  *
  * @see engine.view.observer.FocusObserver

+ 2 - 2
packages/ckeditor5-engine/src/view/observer/keyobserver.js

@@ -9,7 +9,7 @@ import { getCode } from '../../../utils/keyboard.js';
 /**
  * {@link engine.view.Document#keydown Key down} event observer.
  *
- * Note that this observer is attached by the {@link engine.EditingController} and is available by default.
+ * Note that this observer is attached by the {@link engine.view.Document} and is available by default.
  *
  * @memberOf engine.view.observer
  * @extends engine.view.observer.DomEventObserver
@@ -41,7 +41,7 @@ export default class KeyObserver extends DomEventObserver {
  *
  * Introduced by {@link engine.view.observer.KeyObserver}.
  *
- * Note that because {@link engine.view.observer.KeyObserver} is attached by the {@link engine.EditingController}
+ * Note that because {@link engine.view.observer.KeyObserver} is attached by the {@link engine.view.Document}
  * this event is available by default.
  *
  * @see engine.view.observer.KeyObserver

+ 2 - 2
packages/ckeditor5-engine/src/view/observer/mutationobserver.js

@@ -17,7 +17,7 @@ import { startsWithFiller, getDataWithoutFiller } from '../filler.js';
  * mutations on elements which do not have corresponding view elements. Also
  * {@link engine.view.Document.MutatatedText text mutation} is fired only if parent element do not change child list.
  *
- * Note that this observer is attached by the {@link engine.EditingController} and is available by default.
+ * Note that this observer is attached by the {@link engine.view.Document} and is available by default.
  *
  * @memberOf engine.view.observer
  * @extends engine.view.observer.Observer
@@ -201,7 +201,7 @@ export default class MutationObserver extends Observer {
  *
  * Introduced by {@link engine.view.observer.MutationObserver}.
  *
- * Note that because {@link engine.view.observer.MutationObserver} is attached by the {@link engine.EditingController}
+ * Note that because {@link engine.view.observer.MutationObserver} is attached by the {@link engine.view.Document}
  * this event is available by default.
  *
  * @see engine.view.observer.MutationObserver

+ 2 - 2
packages/ckeditor5-engine/src/view/observer/selectionobserver.js

@@ -15,7 +15,7 @@ import log from '../../../utils/log.js';
  * {@link engine.view.Document#selectionChange} event only if selection change was the only change in the document
  * and DOM selection is different then the view selection.
  *
- * Note that this observer is attached by the {@link engine.EditingController} and is available by default.
+ * Note that this observer is attached by the {@link engine.view.Document} and is available by default.
  *
  * @see engine.view.MutationObserver
  * @memberOf engine.view.observer
@@ -192,7 +192,7 @@ export default class SelectionObserver extends Observer {
  *
  * Introduced by {@link engine.view.observer.SelectionObserver}.
  *
- * Note that because {@link engine.view.observer.SelectionObserver} is attached by the {@link engine.EditingController}
+ * Note that because {@link engine.view.observer.SelectionObserver} is attached by the {@link engine.view.Document}
  * this event is available by default.
  *
  * @see engine.view.observer.SelectionObserver

+ 0 - 11
packages/ckeditor5-engine/tests/editingcontroller.js

@@ -8,10 +8,6 @@
 import EditingController from '/ckeditor5/engine/editingcontroller.js';
 
 import ViewDocument from '/ckeditor5/engine/view/document.js';
-import MutationObserver from '/ckeditor5/engine/view/observer/mutationobserver.js';
-import SelectionObserver from '/ckeditor5/engine/view/observer/selectionobserver.js';
-import FocusObserver from '/ckeditor5/engine/view/observer/focusobserver.js';
-import KeyObserver from '/ckeditor5/engine/view/observer/keyobserver.js';
 
 import Mapper from '/ckeditor5/engine/conversion/mapper.js';
 import ModelConversionDispatcher from '/ckeditor5/engine/conversion/modelconversiondispatcher.js';
@@ -42,13 +38,6 @@ describe( 'EditingController', () => {
 			expect( editing ).to.have.property( 'mapper' ).that.is.instanceof( Mapper );
 			expect( editing ).to.have.property( 'modelToView' ).that.is.instanceof( ModelConversionDispatcher );
 		} );
-
-		it( 'should add observers', () => {
-			expect( editing.view.getObserver( MutationObserver ) ).to.be.instanceof( MutationObserver );
-			expect( editing.view.getObserver( SelectionObserver ) ).to.be.instanceof( SelectionObserver );
-			expect( editing.view.getObserver( FocusObserver ) ).to.be.instanceof( FocusObserver );
-			expect( editing.view.getObserver( KeyObserver ) ).to.be.instanceof( KeyObserver );
-		} );
 	} );
 
 	describe( 'createRoot', () => {

+ 21 - 7
packages/ckeditor5-engine/tests/view/document/document.js

@@ -7,6 +7,10 @@
 
 import Document from '/ckeditor5/engine/view/document.js';
 import Observer from '/ckeditor5/engine/view/observer/observer.js';
+import MutationObserver from '/ckeditor5/engine/view/observer/mutationobserver.js';
+import SelectionObserver from '/ckeditor5/engine/view/observer/selectionobserver.js';
+import FocusObserver from '/ckeditor5/engine/view/observer/focusobserver.js';
+import KeyObserver from '/ckeditor5/engine/view/observer/keyobserver.js';
 import Renderer from '/ckeditor5/engine/view/renderer.js';
 import ViewRange from '/ckeditor5/engine/view/range.js';
 import DomConverter from '/ckeditor5/engine/view/domconverter.js';
@@ -17,6 +21,7 @@ import log from '/ckeditor5/utils/log.js';
 testUtils.createSinonSandbox();
 
 describe( 'Document', () => {
+	const DEFAULT_OBSERVERS_COUNT = 4;
 	let ObserverMock, ObserverMockGlobalCount, instantiated, enabled;
 
 	beforeEach( () => {
@@ -53,11 +58,20 @@ describe( 'Document', () => {
 
 			expect( count( viewDocument.domRoots ) ).to.equal( 0 );
 			expect( count( viewDocument.roots ) ).to.equal( 0 );
-			expect( count( viewDocument._observers ) ).to.equal( 0 );
 			expect( viewDocument ).to.have.property( 'renderer' ).that.is.instanceOf( Renderer );
 			expect( viewDocument ).to.have.property( 'domConverter' ).that.is.instanceOf( DomConverter );
 			expect( viewDocument ).to.have.property( 'isFocused' ).that.is.false;
 		} );
+
+		it( 'should add default observers', () => {
+			const viewDocument = new Document();
+
+			expect( count( viewDocument._observers ) ).to.equal( DEFAULT_OBSERVERS_COUNT );
+			expect( viewDocument.getObserver( MutationObserver ) ).to.be.instanceof( MutationObserver );
+			expect( viewDocument.getObserver( SelectionObserver ) ).to.be.instanceof( SelectionObserver );
+			expect( viewDocument.getObserver( FocusObserver ) ).to.be.instanceof( FocusObserver );
+			expect( viewDocument.getObserver( KeyObserver ) ).to.be.instanceof( KeyObserver );
+		} );
 	} );
 
 	describe( 'createRoot', () => {
@@ -224,13 +238,13 @@ describe( 'Document', () => {
 		it( 'should be instantiated and enabled on adding', () => {
 			const observerMock = viewDocument.addObserver( ObserverMock );
 
-			expect( viewDocument._observers.size ).to.equal( 1 );
+			expect( viewDocument._observers.size ).to.equal( DEFAULT_OBSERVERS_COUNT + 1 );
 
 			expect( observerMock ).to.have.property( 'document', viewDocument );
 			sinon.assert.calledOnce( observerMock.enable );
 		} );
 
-		it( 'should return observer instance ever time addObserver is called', () => {
+		it( 'should return observer instance each time addObserver is called', () => {
 			const observerMock1 = viewDocument.addObserver( ObserverMock );
 			const observerMock2 = viewDocument.addObserver( ObserverMock );
 
@@ -243,12 +257,12 @@ describe( 'Document', () => {
 			viewDocument.addObserver( ObserverMockGlobalCount );
 			viewDocument.addObserver( ObserverMockGlobalCount );
 
-			expect( viewDocument._observers.size ).to.equal( 1 );
+			expect( viewDocument._observers.size ).to.equal( DEFAULT_OBSERVERS_COUNT + 1 );
 			expect( instantiated ).to.equal( 1 );
 			expect( enabled ).to.equal( 1 );
 
 			viewDocument.addObserver( ObserverMock );
-			expect( viewDocument._observers.size ).to.equal( 2 );
+			expect( viewDocument._observers.size ).to.equal( DEFAULT_OBSERVERS_COUNT + 2 );
 		} );
 
 		it( 'should instantiate child class of already registered observer', () => {
@@ -262,7 +276,7 @@ describe( 'Document', () => {
 			viewDocument.addObserver( ObserverMock );
 			viewDocument.addObserver( ChildObserverMock );
 
-			expect( viewDocument._observers.size ).to.equal( 2 );
+			expect( viewDocument._observers.size ).to.equal( DEFAULT_OBSERVERS_COUNT + 2 );
 		} );
 
 		it( 'should be disabled and re-enabled on render', () => {
@@ -373,7 +387,7 @@ describe( 'Document', () => {
 
 			viewDocument.focus();
 
-			expect( converterFocusSpy.calledOnce ).to.be.true;
+			expect( converterFocusSpy.called ).to.be.true;
 			expect( renderSpy.calledOnce ).to.be.true;
 			expect( document.activeElement ).to.equal( domEditable );
 			const domSelection = document.getSelection();

+ 0 - 3
packages/ckeditor5-engine/tests/view/document/jumpoverinlinefiller.js

@@ -7,7 +7,6 @@
 
 import ViewRange from '/ckeditor5/engine/view/range.js';
 import ViewDocument from '/ckeditor5/engine/view/document.js';
-import KeyObserver from '/ckeditor5/engine/view/observer/keyobserver.js';
 import { INLINE_FILLER_LENGTH, isInlineFiller, startsWithFiller } from '/ckeditor5/engine/view/filler.js';
 
 import { keyCodes } from '/ckeditor5/utils/keyboard.js';
@@ -20,8 +19,6 @@ describe( 'Document', () => {
 	beforeEach( () => {
 		viewDocument = new ViewDocument();
 
-		viewDocument.addObserver( KeyObserver );
-
 		viewDocument.createRoot( document.getElementById( 'editor' ) );
 
 		document.getSelection().removeAllRanges();

+ 0 - 7
packages/ckeditor5-engine/tests/view/manual/focus.js

@@ -4,9 +4,6 @@
  */
 
 import Document from '/ckeditor5/engine/view/document.js';
-import MutationObserver from '/ckeditor5/engine/view/observer/mutationobserver.js';
-import SelectionObserver from '/ckeditor5/engine/view/observer/selectionobserver.js';
-import FocusObserver from '/ckeditor5/engine/view/observer/focusobserver.js';
 import { parse } from '/tests/engine/_utils/view.js';
 
 const viewDocument = new Document();
@@ -21,10 +18,6 @@ viewDocument.on( 'selectionChange', ( evt, data ) => {
 	viewDocument.selection.setTo( data.newSelection );
 } );
 
-viewDocument.addObserver( MutationObserver );
-viewDocument.addObserver( SelectionObserver );
-viewDocument.addObserver( FocusObserver );
-
 const { selection: selection1 } = parse( '<p>Foo {bar} baz.</p>', { rootElement: editable1 } );
 const { selection: selection2 } = parse( '<p>{Foo} bar baz.</p>', { rootElement: editable2 } );
 

+ 0 - 7
packages/ckeditor5-engine/tests/view/manual/focusobserver.js

@@ -6,9 +6,6 @@
 /* global console:false */
 
 import Document from '/ckeditor5/engine/view/document.js';
-import MutationObserver from '/ckeditor5/engine/view/observer/mutationobserver.js';
-import SelectionObserver from '/ckeditor5/engine/view/observer/selectionobserver.js';
-import FocusObserver from '/ckeditor5/engine/view/observer/focusobserver.js';
 import { setData } from '/tests/engine/_utils/view.js';
 
 const viewDocument = new Document();
@@ -26,10 +23,6 @@ viewDocument.on( 'selectionChange', ( evt, data ) => {
 	viewDocument.selection.setTo( data.newSelection );
 } );
 
-viewDocument.addObserver( MutationObserver );
-viewDocument.addObserver( SelectionObserver );
-viewDocument.addObserver( FocusObserver );
-
 setData( viewDocument, '<p>First editable.</p>', { rootName: 'editable1' } );
 setData( viewDocument, '<p>Second editable.</p>', { rootName: 'editable2' } );
 

+ 0 - 9
packages/ckeditor5-engine/tests/view/manual/immutable.js

@@ -4,20 +4,11 @@
  */
 
 import Document from '/ckeditor5/engine/view/document.js';
-import MutationObserver from '/ckeditor5/engine/view/observer/mutationobserver.js';
-import SelectionObserver from '/ckeditor5/engine/view/observer/selectionobserver.js';
-import FocusObserver from '/ckeditor5/engine/view/observer/focusobserver.js';
-import KeyObserver from '/ckeditor5/engine/view/observer/keyobserver.js';
 import { setData } from '/tests/engine/_utils/view.js';
 
 const viewDocument = new Document();
 viewDocument.createRoot( document.getElementById( 'editor' ) );
 
-viewDocument.addObserver( MutationObserver );
-viewDocument.addObserver( SelectionObserver );
-viewDocument.addObserver( KeyObserver );
-viewDocument.addObserver( FocusObserver );
-
 setData( viewDocument,
 	'<container:p><attribute:strong>foo</attribute:strong>[]<attribute:strong>bar</attribute:strong></container:p>' +
 	'<container:p></container:p>' +

+ 0 - 7
packages/ckeditor5-engine/tests/view/manual/inline-filler.js

@@ -4,18 +4,11 @@
  */
 
 import Document from '/ckeditor5/engine/view/document.js';
-import SelectionObserver from '/ckeditor5/engine/view/observer/selectionobserver.js';
-import MutationObserver from '/ckeditor5/engine/view/observer/mutationobserver.js';
-import KeyObserver from '/ckeditor5/engine/view/observer/keyobserver.js';
 import { setData } from '/tests/engine/_utils/view.js';
 
 const viewDocument = new Document();
 viewDocument.createRoot( document.getElementById( 'editor' ) );
 
-viewDocument.addObserver( MutationObserver );
-viewDocument.addObserver( SelectionObserver );
-viewDocument.addObserver( KeyObserver );
-
 viewDocument.isFocused = true;
 
 setData( viewDocument,

+ 0 - 3
packages/ckeditor5-engine/tests/view/manual/keyobserver.js

@@ -6,12 +6,9 @@
 /* global console:false */
 
 import Document from '/ckeditor5/engine/view/document.js';
-import KeyObserver from '/ckeditor5/engine/view/observer/keyobserver.js';
 
 const viewDocument = new Document();
 
 viewDocument.on( 'keydown', ( evt, data ) => console.log( 'keydown', data ) );
 
-viewDocument.addObserver( KeyObserver );
-
 viewDocument.createRoot( document.getElementById( 'editable' ), 'editable' );

+ 0 - 3
packages/ckeditor5-engine/tests/view/manual/mutationobserver.js

@@ -6,7 +6,6 @@
 /* global console:false */
 
 import Document from '/ckeditor5/engine/view/document.js';
-import MutationObserver from '/ckeditor5/engine/view/observer/mutationobserver.js';
 import { setData } from '/tests/engine/_utils/view.js';
 
 const viewDocument = new Document();
@@ -14,8 +13,6 @@ viewDocument.createRoot( document.getElementById( 'editor' ) );
 
 viewDocument.on( 'mutations', ( evt, mutations ) => console.log( mutations ) );
 
-viewDocument.addObserver( MutationObserver );
-
 setData( viewDocument,
 	'<container:p>foo</container:p>' +
 	'<container:p>bar</container:p>' );

+ 0 - 7
packages/ckeditor5-engine/tests/view/manual/noselection-iframe.js

@@ -4,19 +4,12 @@
  */
 
 import Document from '/ckeditor5/engine/view/document.js';
-import MutationObserver from '/ckeditor5/engine/view/observer/mutationobserver.js';
-import SelectionObserver from '/ckeditor5/engine/view/observer/selectionobserver.js';
-import FocusObserver from '/ckeditor5/engine/view/observer/focusobserver.js';
 import { setData } from '/tests/engine/_utils/view.js';
 
 const viewDocument = new Document();
 const iframe = document.getElementById( 'iframe' );
 viewDocument.createRoot( iframe.contentWindow.document.getElementById( 'editor' ) );
 
-viewDocument.addObserver( MutationObserver );
-viewDocument.addObserver( SelectionObserver );
-viewDocument.addObserver( FocusObserver );
-
 setData( viewDocument,
 	'<container:p>foo</container:p>' +
 	'<container:p>bar</container:p>' );

+ 0 - 7
packages/ckeditor5-engine/tests/view/manual/noselection.js

@@ -4,18 +4,11 @@
  */
 
 import Document from '/ckeditor5/engine/view/document.js';
-import MutationObserver from '/ckeditor5/engine/view/observer/mutationobserver.js';
-import SelectionObserver from '/ckeditor5/engine/view/observer/selectionobserver.js';
-import FocusObserver from '/ckeditor5/engine/view/observer/focusobserver.js';
 import { setData } from '/tests/engine/_utils/view.js';
 
 const viewDocument = new Document();
 viewDocument.createRoot( document.getElementById( 'editor' ) );
 
-viewDocument.addObserver( MutationObserver );
-viewDocument.addObserver( SelectionObserver );
-viewDocument.addObserver( FocusObserver );
-
 setData( viewDocument,
     '<container:p>foo</container:p>' +
     '<container:p>bar</container:p>' );

+ 0 - 7
packages/ckeditor5-engine/tests/view/manual/selectionobserver.js

@@ -6,18 +6,11 @@
 /* global console:false */
 
 import Document from '/ckeditor5/engine/view/document.js';
-import MutationObserver from '/ckeditor5/engine/view/observer/mutationobserver.js';
-import SelectionObserver from '/ckeditor5/engine/view/observer/selectionobserver.js';
-import FocusObserver from '/ckeditor5/engine/view/observer/focusobserver.js';
 import { setData } from '/tests/engine/_utils/view.js';
 
 const viewDocument = new Document();
 viewDocument.createRoot( document.getElementById( 'editor' ) );
 
-viewDocument.addObserver( MutationObserver );
-viewDocument.addObserver( SelectionObserver );
-viewDocument.addObserver( FocusObserver );
-
 setData( viewDocument,
 	'<container:p><attribute:b>foo</attribute:b>bar</container:p>' +
 	'<container:p>bom</container:p>' );

+ 0 - 5
packages/ckeditor5-engine/tests/view/manual/x-index.js

@@ -6,16 +6,11 @@
 /* global console:false */
 
 import Document from '/ckeditor5/engine/view/document.js';
-import SelectionObserver from '/ckeditor5/engine/view/observer/selectionobserver.js';
-import MutationObserver from '/ckeditor5/engine/view/observer/mutationobserver.js';
 import { setData } from '/tests/engine/_utils/view.js';
 
 const viewDocument = new Document();
 viewDocument.createRoot( document.getElementById( 'editor' ) );
 
-viewDocument.addObserver( MutationObserver );
-viewDocument.addObserver( SelectionObserver );
-
 viewDocument.isFocused = true;
 
 setData( viewDocument,

+ 1 - 1
packages/ckeditor5-engine/tests/view/observer/focusobserver.js

@@ -14,7 +14,7 @@ describe( 'FocusObserver', () => {
 
 	beforeEach( () => {
 		viewDocument = new ViewDocument();
-		observer = viewDocument.addObserver( FocusObserver );
+		observer = viewDocument.getObserver( FocusObserver );
 	} );
 
 	it( 'should define domEventType', () => {

+ 1 - 1
packages/ckeditor5-engine/tests/view/observer/keyobserver.js

@@ -14,7 +14,7 @@ describe( 'KeyObserver', () => {
 
 	beforeEach( () => {
 		viewDocument = new ViewDocument();
-		observer = viewDocument.addObserver( KeyObserver );
+		observer = viewDocument.getObserver( KeyObserver );
 	} );
 
 	it( 'should define domEventType', () => {

+ 1 - 1
packages/ckeditor5-engine/tests/view/observer/mutationobserver.js

@@ -21,7 +21,7 @@ describe( 'MutationObserver', () => {
 		viewDocument.selection.removeAllRanges();
 		document.getSelection().removeAllRanges();
 
-		mutationObserver = viewDocument.addObserver( MutationObserver );
+		mutationObserver = viewDocument.getObserver( MutationObserver );
 
 		viewDocument.on( 'mutations', ( evt, mutations ) => lastMutations = mutations );
 

+ 2 - 2
packages/ckeditor5-engine/tests/view/observer/selectionobserver.js

@@ -29,8 +29,8 @@ describe( 'SelectionObserver', () => {
 
 		viewDocument.createRoot( document.getElementById( 'main' ) );
 
-		mutationObserver = viewDocument.addObserver( MutationObserver );
-		selectionObserver = viewDocument.addObserver( SelectionObserver );
+		mutationObserver = viewDocument.getObserver( MutationObserver );
+		selectionObserver = viewDocument.getObserver( SelectionObserver );
 
 		viewRoot = viewDocument.getRoot();