8
0
Просмотр исходного кода

Fixed: View won't listen on windom DOM events.

Aleksander Nowodzinski 9 лет назад
Родитель
Сommit
73ba3f1691

+ 1 - 1
packages/ckeditor5-ui/src/domemittermixin.js

@@ -268,7 +268,7 @@ function getNodeUID( node ) {
 // @param {Node} node
 // @return {Boolean} True when native DOM Node.
 function isDomNode( node ) {
-	return node && node.nodeType && ( typeof node.addEventListener == 'function' );
+	return node && ( typeof node.addEventListener == 'function' );
 }
 
 /**

+ 20 - 0
packages/ckeditor5-ui/tests/domemittermixin.js

@@ -60,6 +60,26 @@ describe( 'DOMEmitterMixin', () => {
 			sinon.assert.calledOnce( spy );
 		} );
 
+		it( 'should listen to native DOM events - window as source', () => {
+			const spy = testUtils.sinon.spy();
+
+			domEmitter.listenTo( window, 'test', spy );
+
+			window.dispatchEvent( new Event( 'test' ) );
+
+			sinon.assert.calledOnce( spy );
+		} );
+
+		it( 'should listen to native DOM events - document as source', () => {
+			const spy = testUtils.sinon.spy();
+
+			domEmitter.listenTo( document, 'test', spy );
+
+			document.dispatchEvent( new Event( 'test' ) );
+
+			sinon.assert.calledOnce( spy );
+		} );
+
 		// #187
 		it( 'should work for DOM Nodes belonging to another window', () => {
 			const spy = testUtils.sinon.spy();