@@ -12,7 +12,7 @@ import { match } from 'vs/base/common/glob';
1212import * as json from 'vs/base/common/json' ;
1313import {
1414 IExtensionManagementService , IExtensionGalleryService , IExtensionTipsService , ExtensionRecommendationReason , LocalExtensionType , EXTENSION_IDENTIFIER_PATTERN ,
15- IExtensionsConfigContent , RecommendationChangeNotification , IExtensionRecommendation , ExtensionRecommendationSource , IExtensionManagementServerService , InstallOperation
15+ IExtensionsConfigContent , RecommendationChangeNotification , IExtensionRecommendation , ExtensionRecommendationSource , InstallOperation
1616} from 'vs/platform/extensionManagement/common/extensionManagement' ;
1717import { IModelService } from 'vs/editor/common/services/modelService' ;
1818import { ITextModel } from 'vs/editor/common/model' ;
@@ -23,7 +23,7 @@ import { ShowRecommendedExtensionsAction, InstallWorkspaceRecommendedExtensionsA
2323import Severity from 'vs/base/common/severity' ;
2424import { IWorkspaceContextService , IWorkspaceFolder , IWorkspace , IWorkspaceFoldersChangeEvent , WorkbenchState } from 'vs/platform/workspace/common/workspace' ;
2525import { IFileService } from 'vs/platform/files/common/files' ;
26- import { IExtensionsConfiguration , ConfigurationKey , ShowRecommendationsOnlyOnDemandKey , IExtensionsViewlet } from 'vs/workbench/parts/extensions/common/extensions' ;
26+ import { IExtensionsConfiguration , ConfigurationKey , ShowRecommendationsOnlyOnDemandKey , IExtensionsViewlet , IExtensionsWorkbenchService } from 'vs/workbench/parts/extensions/common/extensions' ;
2727import { IConfigurationService , ConfigurationTarget } from 'vs/platform/configuration/common/configuration' ;
2828import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry' ;
2929import * as pfs from 'vs/base/node/pfs' ;
@@ -104,7 +104,7 @@ export class ExtensionTipsService extends Disposable implements IExtensionTipsSe
104104 @IViewletService private viewletService : IViewletService ,
105105 @INotificationService private notificationService : INotificationService ,
106106 @IExtensionManagementService private extensionManagementService : IExtensionManagementService ,
107- @IExtensionManagementServerService private extensionManagementServiceService : IExtensionManagementServerService ,
107+ @IExtensionsWorkbenchService private extensionWorkbenchService : IExtensionsWorkbenchService ,
108108 @IExperimentService private experimentService : IExperimentService ,
109109 ) {
110110 super ( ) ;
@@ -545,9 +545,8 @@ export class ExtensionTipsService extends Disposable implements IExtensionTipsSe
545545 const importantRecommendationsIgnoreList = < string [ ] > JSON . parse ( this . storageService . get ( 'extensionsAssistant/importantRecommendationsIgnore' , StorageScope . GLOBAL , '[]' ) ) ;
546546 recommendationsToSuggest = recommendationsToSuggest . filter ( id => importantRecommendationsIgnoreList . indexOf ( id ) === - 1 && this . isExtensionAllowedToBeRecommended ( id ) ) ;
547547
548- const server = this . extensionManagementServiceService . getExtensionManagementServer ( model . uri ) ;
549- const importantTipsPromise = recommendationsToSuggest . length === 0 ? TPromise . as ( null ) : server . extensionManagementService . getInstalled ( LocalExtensionType . User ) . then ( local => {
550- const localExtensions = local . map ( e => `${ e . manifest . publisher . toLowerCase ( ) } .${ e . manifest . name . toLowerCase ( ) } ` ) ;
548+ const importantTipsPromise = recommendationsToSuggest . length === 0 ? TPromise . as ( null ) : this . extensionWorkbenchService . queryLocal ( ) . then ( local => {
549+ const localExtensions = local . map ( e => e . id ) ;
551550 recommendationsToSuggest = recommendationsToSuggest . filter ( id => localExtensions . every ( local => local !== id . toLowerCase ( ) ) ) ;
552551 if ( ! recommendationsToSuggest . length ) {
553552 return ;
@@ -575,9 +574,7 @@ export class ExtensionTipsService extends Disposable implements IExtensionTipsSe
575574 }
576575 */
577576 this . telemetryService . publicLog ( 'extensionRecommendations:popup' , { userReaction : 'install' , extensionId : name } ) ;
578-
579- const installAction = this . instantiationService . createInstance ( InstallRecommendedExtensionAction , id , server ) ;
580- installAction . run ( ) . then ( ( ) => installAction . dispose ( ) ) ;
577+ this . instantiationService . createInstance ( InstallRecommendedExtensionAction , id ) . run ( ) ;
581578 }
582579 } , {
583580 label : localize ( 'showRecommendations' , "Show Recommendations" ) ,
0 commit comments