Skip to content

Commit

Permalink
running extensions: option to disable extension
Browse files Browse the repository at this point in the history
fixes #40088
  • Loading branch information
isidorn committed Dec 12, 2017
1 parent 68ad871 commit a4e30c1
Showing 1 changed file with 9 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ import { IExtensionService, IExtensionDescription, IExtensionsStatus, IExtension
import { IDelegate, IRenderer } from 'vs/base/browser/ui/list/list';
import { WorkbenchList, IListService } from 'vs/platform/list/browser/listService';
import { append, $, addClass, toggleClass } from 'vs/base/browser/dom';
import { ActionBar } from 'vs/base/browser/ui/actionbar/actionbar';
import { ActionBar, Separator } from 'vs/base/browser/ui/actionbar/actionbar';
import { IMessageService, Severity } from 'vs/platform/message/common/message';
import { dispose, IDisposable } from 'vs/base/common/lifecycle';
import { RunOnceScheduler } from 'vs/base/common/async';
Expand All @@ -39,6 +39,7 @@ import { IEnvironmentService } from 'vs/platform/environment/common/environment'
import { memoize } from 'vs/base/common/decorators';
import { isFalsyOrEmpty } from 'vs/base/common/arrays';
import Event from 'vs/base/common/event';
import { DisableForWorkspaceAction, DisableGloballyAction } from 'vs/workbench/parts/extensions/browser/extensionsActions';

export const IExtensionHostProfileService = createDecorator<IExtensionHostProfileService>('extensionHostProfileService');

Expand Down Expand Up @@ -373,7 +374,13 @@ export class RuntimeExtensionsEditor extends BaseEditor {
this._list.onContextMenu((e) => {
const actions: IAction[] = [];

actions.push(this.saveExtensionHostProfileAction, this.extensionHostProfileAction);
if (e.element.marketplaceInfo.type === LocalExtensionType.User) {
actions.push(this._instantiationService.createInstance(DisableForWorkspaceAction, DisableForWorkspaceAction.LABEL));
actions.push(this._instantiationService.createInstance(DisableGloballyAction, DisableGloballyAction.LABEL));
actions.forEach((a: DisableForWorkspaceAction | DisableGloballyAction) => a.extension = e.element.marketplaceInfo);
actions.push(new Separator());
}
actions.push(this.extensionHostProfileAction, this.saveExtensionHostProfileAction);

this._contextMenuService.showContextMenu({
getAnchor: () => e.anchor,
Expand Down

0 comments on commit a4e30c1

Please sign in to comment.