add custom action for explorer actions (#1059)

This commit is contained in:
Anthony Dresser
2018-04-06 15:53:45 -07:00
committed by Karl Burtram
parent 563e25f073
commit 596f09f754

View File

@@ -28,6 +28,7 @@ import { IAction } from 'vs/base/common/actions';
import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation';
import { generateUuid } from 'vs/base/common/uuid'; import { generateUuid } from 'vs/base/common/uuid';
import { $ } from 'vs/base/browser/dom'; import { $ } from 'vs/base/browser/dom';
import { ExecuteCommandAction } from 'vs/platform/actions/common/actions';
import { IKeyboardEvent } from 'vs/base/browser/keyboardEvent'; import { IKeyboardEvent } from 'vs/base/browser/keyboardEvent';
export class ObjectMetadataWrapper implements ObjectMetadata { export class ObjectMetadataWrapper implements ObjectMetadata {
@@ -385,14 +386,14 @@ function GetExplorerActions(element: TreeResource, instantiationService: IInstan
actions.push(instantiationService.createInstance(ScriptAlterAction, ScriptAlterAction.ID, ScriptAlterAction.LABEL)); actions.push(instantiationService.createInstance(ScriptAlterAction, ScriptAlterAction.ID, ScriptAlterAction.LABEL));
} }
} else { } else {
actions.push(instantiationService.createInstance(OEAction, NewQueryAction.ID, NewQueryAction.LABEL)); actions.push(instantiationService.createInstance(CustomExecuteCommandAction, NewQueryAction.ID, NewQueryAction.LABEL));
let action: IAction = instantiationService.createInstance(OEAction, RestoreAction.ID, RestoreAction.LABEL); let action: IAction = instantiationService.createInstance(CustomExecuteCommandAction, RestoreAction.ID, RestoreAction.LABEL);
if (capabilitiesService.isFeatureAvailable(action, info)) { if (capabilitiesService.isFeatureAvailable(action, info)) {
actions.push(action); actions.push(action);
} }
action = instantiationService.createInstance(OEAction, BackupAction.ID, BackupAction.LABEL); action = instantiationService.createInstance(CustomExecuteCommandAction, BackupAction.ID, BackupAction.LABEL);
if (capabilitiesService.isFeatureAvailable(action, info)) { if (capabilitiesService.isFeatureAvailable(action, info)) {
actions.push(action); actions.push(action);
} }
@@ -405,3 +406,9 @@ function GetExplorerActions(element: TreeResource, instantiationService: IInstan
return TPromise.as(actions); return TPromise.as(actions);
} }
class CustomExecuteCommandAction extends ExecuteCommandAction {
run(context: ManageActionContext): TPromise<any> {
return super.run(context.profile);
}
}