Browse Source

View.regions become NamedCollection (previously Collection).

Aleksander Nowodzinski 10 years ago
parent
commit
dda654c6e0

+ 4 - 6
packages/ckeditor5-engine/src/ui/view.js

@@ -13,13 +13,13 @@
  */
 
 CKEDITOR.define( [
-	'collection',
+	'namedcollection',
 	'model',
 	'ui/template',
 	'ckeditorerror',
 	'ui/domemittermixin',
 	'utils'
-], function( Collection, Model, Template, CKEditorError, DOMEmitterMixin, utils ) {
+], function( NamedCollection, Model, Template, CKEditorError, DOMEmitterMixin, utils ) {
 	class View extends Model {
 		/**
 		 * Creates an instance of the {@link View} class.
@@ -38,7 +38,7 @@ CKEDITOR.define( [
 			/**
 			 * Regions which belong to this view.
 			 */
-			this.regions = new Collection();
+			this.regions = new NamedCollection();
 		}
 
 		/**
@@ -123,9 +123,7 @@ CKEDITOR.define( [
 			}
 
 			// Remove and destroy regions.
-			for ( let i = this.regions.length; i--; ) {
-				this.regions.remove( i ).destroy();
-			}
+			this.regions.forEach( r => this.regions.remove( r ).destroy() );
 
 			// Remove all listeners related to this view.
 			this.stopListening();

+ 1 - 1
packages/ckeditor5-engine/tests/ui/view.js

@@ -421,7 +421,7 @@ describe( 'destroy', function() {
 
 	it( 'destroys child regions', function() {
 		var Region = modules[ 'ui/region' ];
-		var region = new Region();
+		var region = new Region( 'test' );
 		var spy = bender.sinon.spy( region, 'destroy' );
 
 		view.regions.add( region );