From d3ffa37b942c67496ec92e6bef2a24da1fa01224 Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Tue, 18 Oct 2016 11:13:15 +0200 Subject: [PATCH] Promt to enable after install --- .../extensionsWorkbenchService.ts | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/src/vs/workbench/parts/extensions/electron-browser/extensionsWorkbenchService.ts b/src/vs/workbench/parts/extensions/electron-browser/extensionsWorkbenchService.ts index 426d8492c45..87dca52616e 100644 --- a/src/vs/workbench/parts/extensions/electron-browser/extensionsWorkbenchService.ts +++ b/src/vs/workbench/parts/extensions/electron-browser/extensionsWorkbenchService.ts @@ -471,23 +471,30 @@ export class ExtensionsWorkbenchService implements IExtensionsWorkbenchService { return TPromise.wrapError(new Error('Missing gallery')); } - return this.extensionService.installFromGallery(gallery, promptToInstallDependencies); + return this.extensionService.installFromGallery(gallery, promptToInstallDependencies) + .then(() => { + this.promptToRestart(ext, true); + }); } setEnablement(extension: IExtension, enable: boolean): TPromise { return this.extensionsRuntimeService.setEnablement(extension.identifier, enable, extension.displayName).then(restart => { if (restart) { - const message = enable ? localize('postEnableMessage', "In order to enable '{0}' extension, this window of VS Code needs to be restarted.", extension.displayName) - : localize('postDisableMessage', "In order to disable '{0}' extension, this window of VS Code needs to be restarted.", extension.displayName); - this.messageService.show(Severity.Info, { - message, - actions: [this.instantiationService.createInstance(ReloadWindowAction, ReloadWindowAction.ID, localize('restartNow', "Restart Now")), LaterAction] - }); + this.promptToRestart(extension, enable); this.telemetryService.publicLog(enable ? 'extension:enable' : 'extension:disable', extension.telemetryData); } }); } + private promptToRestart(extension: IExtension, enable: boolean): void { + const message = enable ? localize('postEnableMessage', "In order to enable '{0}' extension, this window of VS Code needs to be restarted.", extension.displayName) + : localize('postDisableMessage', "In order to disable '{0}' extension, this window of VS Code needs to be restarted.", extension.displayName); + this.messageService.show(Severity.Info, { + message, + actions: [this.instantiationService.createInstance(ReloadWindowAction, ReloadWindowAction.ID, localize('restartNow', "Restart Now")), LaterAction] + }); + } + uninstall(extension: IExtension): TPromise { if (!(extension instanceof Extension)) { return; -- GitLab