@@ -282,14 +282,16 @@ export interface IViewContentDescriptor {
282282
283283export interface IViewsRegistry {
284284
285- readonly onViewsRegistered : Event < { views : IViewDescriptor [ ] , viewContainer : ViewContainer } > ;
285+ readonly onViewsRegistered : Event < { views : IViewDescriptor [ ] , viewContainer : ViewContainer } [ ] > ;
286286
287287 readonly onViewsDeregistered : Event < { views : IViewDescriptor [ ] , viewContainer : ViewContainer } > ;
288288
289289 readonly onDidChangeContainer : Event < { views : IViewDescriptor [ ] , from : ViewContainer , to : ViewContainer } > ;
290290
291291 registerViews ( views : IViewDescriptor [ ] , viewContainer : ViewContainer ) : void ;
292292
293+ registerViews2 ( views : { views : IViewDescriptor [ ] , viewContainer : ViewContainer } [ ] ) : void ;
294+
293295 deregisterViews ( views : IViewDescriptor [ ] , viewContainer : ViewContainer ) : void ;
294296
295297 moveViews ( views : IViewDescriptor [ ] , viewContainer : ViewContainer ) : void ;
@@ -319,8 +321,8 @@ function compareViewContentDescriptors(a: IViewContentDescriptor, b: IViewConten
319321
320322class ViewsRegistry extends Disposable implements IViewsRegistry {
321323
322- private readonly _onViewsRegistered : Emitter < { views : IViewDescriptor [ ] , viewContainer : ViewContainer } > = this . _register ( new Emitter < { views : IViewDescriptor [ ] , viewContainer : ViewContainer } > ( ) ) ;
323- readonly onViewsRegistered : Event < { views : IViewDescriptor [ ] , viewContainer : ViewContainer } > = this . _onViewsRegistered . event ;
324+ private readonly _onViewsRegistered = this . _register ( new Emitter < { views : IViewDescriptor [ ] , viewContainer : ViewContainer } [ ] > ( ) ) ;
325+ readonly onViewsRegistered = this . _onViewsRegistered . event ;
324326
325327 private readonly _onViewsDeregistered : Emitter < { views : IViewDescriptor [ ] , viewContainer : ViewContainer } > = this . _register ( new Emitter < { views : IViewDescriptor [ ] , viewContainer : ViewContainer } > ( ) ) ;
326328 readonly onViewsDeregistered : Event < { views : IViewDescriptor [ ] , viewContainer : ViewContainer } > = this . _onViewsDeregistered . event ;
@@ -336,8 +338,12 @@ class ViewsRegistry extends Disposable implements IViewsRegistry {
336338 private _viewWelcomeContents = new SetMap < string , IViewContentDescriptor > ( ) ;
337339
338340 registerViews ( views : IViewDescriptor [ ] , viewContainer : ViewContainer ) : void {
339- this . addViews ( views , viewContainer ) ;
340- this . _onViewsRegistered . fire ( { views : views , viewContainer } ) ;
341+ this . registerViews2 ( [ { views, viewContainer } ] ) ;
342+ }
343+
344+ registerViews2 ( views : { views : IViewDescriptor [ ] , viewContainer : ViewContainer } [ ] ) : void {
345+ views . forEach ( ( { views, viewContainer } ) => this . addViews ( views , viewContainer ) ) ;
346+ this . _onViewsRegistered . fire ( views ) ;
341347 }
342348
343349 deregisterViews ( viewDescriptors : IViewDescriptor [ ] , viewContainer : ViewContainer ) : void {
0 commit comments