@@ -15,8 +15,8 @@ import { IWorkbenchExtensionEnablementService, IWorkbenchExtensionManagementServ
1515import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation' ;
1616import { INotificationService , Severity } from 'vs/platform/notification/common/notification' ;
1717import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry' ;
18- import { ActivationTimes , ExtensionPointContribution , IExtensionService , IExtensionsStatus , IMessage , IWillActivateEvent , IResponsiveStateChangeEvent , toExtension , IExtensionHost , ActivationKind , ExtensionHostKind , ExtensionRunningLocation , extensionHostKindToString , ExtensionActivationReason , IInternalExtensionService , RemoteRunningLocation , LocalProcessRunningLocation , LocalWebWorkerRunningLocation , IImplicitActivationEvents } from 'vs/workbench/services/extensions/common/extensions' ;
19- import { ExtensionActivationEventsCollector , ExtensionMessageCollector , ExtensionPoint , ExtensionsRegistry , IExtensionPoint , IExtensionPointUser } from 'vs/workbench/services/extensions/common/extensionsRegistry' ;
18+ import { ActivationTimes , ExtensionPointContribution , IExtensionService , IExtensionsStatus , IMessage , IWillActivateEvent , IResponsiveStateChangeEvent , toExtension , IExtensionHost , ActivationKind , ExtensionHostKind , ExtensionRunningLocation , extensionHostKindToString , ExtensionActivationReason , IInternalExtensionService , RemoteRunningLocation , LocalProcessRunningLocation , LocalWebWorkerRunningLocation } from 'vs/workbench/services/extensions/common/extensions' ;
19+ import { ExtensionMessageCollector , ExtensionPoint , ExtensionsRegistry , IExtensionPoint , IExtensionPointUser } from 'vs/workbench/services/extensions/common/extensionsRegistry' ;
2020import { ExtensionDescriptionRegistry } from 'vs/workbench/services/extensions/common/extensionDescriptionRegistry' ;
2121import { ResponsiveState } from 'vs/workbench/services/extensions/common/rpcProtocol' ;
2222import { createExtensionHostManager , IExtensionHostManager } from 'vs/workbench/services/extensions/common/extensionHostManager' ;
@@ -153,7 +153,6 @@ export abstract class AbstractExtensionService extends Disposable implements IEx
153153 private readonly _installedExtensionsReady : Barrier ;
154154 private readonly _isDev : boolean ;
155155 private readonly _extensionsMessages : Map < string , IMessage [ ] > ;
156- private readonly _extensionsImplicitActivationEvents : Map < string , Set < string > > ;
157156 private readonly _allRequestedActivateEvents = new Set < string > ( ) ;
158157 private readonly _proposedApiController : ProposedApiController ;
159158 private readonly _isExtensionDevHost : boolean ;
@@ -207,7 +206,6 @@ export abstract class AbstractExtensionService extends Disposable implements IEx
207206 this . _installedExtensionsReady = new Barrier ( ) ;
208207 this . _isDev = ! this . _environmentService . isBuilt || this . _environmentService . isExtensionDevelopment ;
209208 this . _extensionsMessages = new Map < string , IMessage [ ] > ( ) ;
210- this . _extensionsImplicitActivationEvents = new Map < string , Set < string > > ( ) ;
211209 this . _proposedApiController = _instantiationService . createInstance ( ProposedApiController ) ;
212210
213211 this . _extensionHostManagers = [ ] ;
@@ -1213,47 +1211,17 @@ export abstract class AbstractExtensionService extends Disposable implements IEx
12131211 }
12141212
12151213 const messageHandler = ( msg : IMessage ) => this . _handleExtensionPointMessage ( msg ) ;
1216- const implicitActivationEventsHandler = ( info : IImplicitActivationEvents ) => this . _handleImplicitExtensionActivationEvents ( info ) ;
12171214 const availableExtensions = this . _registry . getAllExtensionDescriptions ( ) ;
12181215 const extensionPoints = ExtensionsRegistry . getExtensionPoints ( ) ;
12191216 perf . mark ( 'code/willHandleExtensionPoints' ) ;
12201217 for ( const extensionPoint of extensionPoints ) {
12211218 if ( affectedExtensionPoints [ extensionPoint . name ] ) {
12221219 perf . mark ( `code/willHandleExtensionPoint/${ extensionPoint . name } ` ) ;
1223- AbstractExtensionService . _handleExtensionPoint ( extensionPoint , availableExtensions , messageHandler , implicitActivationEventsHandler ) ;
1220+ AbstractExtensionService . _handleExtensionPoint ( extensionPoint , availableExtensions , messageHandler ) ;
12241221 perf . mark ( `code/didHandleExtensionPoint/${ extensionPoint . name } ` ) ;
12251222 }
12261223 }
1227- this . _combineImplicitExtensionActivationEvents ( ) ;
12281224 perf . mark ( 'code/didHandleExtensionPoints' ) ;
1229- this . _registry . set ( availableExtensions ) ;
1230- }
1231-
1232- private _combineImplicitExtensionActivationEvents ( ) {
1233- for ( const [ extensionKey , implicitActivationEvents ] of this . _extensionsImplicitActivationEvents . entries ( ) ) {
1234- const extensionDescription = this . _registry . getExtensionDescription ( extensionKey ) ;
1235- if ( ! extensionDescription ) {
1236- continue ;
1237- }
1238-
1239- for ( const activationEvents of ( extensionDescription ?. activationEvents ?? [ ] ) ) {
1240- implicitActivationEvents . add ( activationEvents ) ;
1241- }
1242- extensionDescription . activationEvents = Array . from ( implicitActivationEvents ) ;
1243- }
1244- }
1245-
1246- private _handleImplicitExtensionActivationEvents ( extensionActivationEventsInfo : IImplicitActivationEvents ) {
1247- const extensionKey = ExtensionIdentifier . toKey ( extensionActivationEventsInfo . extensionId ) ;
1248-
1249- if ( ! this . _extensionsImplicitActivationEvents . has ( extensionKey ) ) {
1250- this . _extensionsImplicitActivationEvents . set ( extensionKey , new Set ( ) ) ;
1251- }
1252- const implicitActivationEvents = this . _extensionsImplicitActivationEvents . get ( extensionKey ) ;
1253-
1254- for ( const activationEvent of extensionActivationEventsInfo . implicitActivationEvents ) {
1255- implicitActivationEvents ?. add ( activationEvent ) ;
1256- }
12571225 }
12581226
12591227 private _handleExtensionPointMessage ( msg : IMessage ) {
@@ -1305,15 +1273,14 @@ export abstract class AbstractExtensionService extends Disposable implements IEx
13051273 }
13061274 }
13071275
1308- private static _handleExtensionPoint < T extends IExtensionContributions [ keyof IExtensionContributions ] > ( extensionPoint : ExtensionPoint < T > , availableExtensions : IExtensionDescription [ ] , messageHandler : ( msg : IMessage ) => void , implicitActivationEventsHandler : ( info : IImplicitActivationEvents ) => void ) : void {
1276+ private static _handleExtensionPoint < T extends IExtensionContributions [ keyof IExtensionContributions ] > ( extensionPoint : ExtensionPoint < T > , availableExtensions : IExtensionDescription [ ] , messageHandler : ( msg : IMessage ) => void ) : void {
13091277 const users : IExtensionPointUser < T > [ ] = [ ] ;
13101278 for ( const desc of availableExtensions ) {
13111279 if ( desc . contributes && hasOwnProperty . call ( desc . contributes , extensionPoint . name ) ) {
13121280 users . push ( {
13131281 description : desc ,
13141282 value : desc . contributes [ extensionPoint . name as keyof typeof desc . contributes ] as T ,
1315- collector : new ExtensionMessageCollector ( messageHandler , desc , extensionPoint . name ) ,
1316- implicitActivationEventsCollector : new ExtensionActivationEventsCollector ( implicitActivationEventsHandler , desc ) ,
1283+ collector : new ExtensionMessageCollector ( messageHandler , desc , extensionPoint . name )
13171284 } ) ;
13181285 }
13191286 }
0 commit comments