From 5524a3659cbf1221728eaa2fad933bf9521e95ca Mon Sep 17 00:00:00 2001 From: Aditya Bist Date: Wed, 14 Jul 2021 12:35:10 -0700 Subject: [PATCH] Secondary actions (#16122) * data menu shows up * clean up code * remove dead code * string literal * add menu item instead * remove unused code --- .../dataExplorer/browser/dataExplorerViewlet.ts | 17 ----------------- .../browser/resourceDeployment.contribution.ts | 14 ++++++++++++++ 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/src/sql/workbench/contrib/dataExplorer/browser/dataExplorerViewlet.ts b/src/sql/workbench/contrib/dataExplorer/browser/dataExplorerViewlet.ts index 1d5a699997..576af6c30d 100644 --- a/src/sql/workbench/contrib/dataExplorer/browser/dataExplorerViewlet.ts +++ b/src/sql/workbench/contrib/dataExplorer/browser/dataExplorerViewlet.ts @@ -5,7 +5,6 @@ import { localize } from 'vs/nls'; import { IWorkbenchContribution } from 'vs/workbench/common/contributions'; -import { IAction } from 'vs/base/common/actions'; import { toggleClass, Dimension } from 'vs/base/browser/dom'; import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; @@ -20,8 +19,6 @@ import { Extensions as ViewContainerExtensions, IViewDescriptor, IViewsRegistry, import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; import { IWorkbenchLayoutService } from 'vs/workbench/services/layout/browser/layoutService'; import { Registry } from 'vs/platform/registry/common/platform'; -import { IMenuService, MenuId } from 'vs/platform/actions/common/actions'; -import { IContextKeyService } from 'vs/platform/contextkey/common/contextkey'; import { ViewPane } from 'vs/workbench/browser/parts/views/viewPane'; import { ViewPaneContainer } from 'vs/workbench/browser/parts/views/viewPaneContainer'; import { SyncDescriptor } from 'vs/platform/instantiation/common/descriptors'; @@ -67,8 +64,6 @@ export class DataExplorerViewPaneContainer extends ViewPaneContainer { @IContextMenuService contextMenuService: IContextMenuService, @IExtensionService extensionService: IExtensionService, @IConfigurationService configurationService: IConfigurationService, - @IMenuService private menuService: IMenuService, - @IContextKeyService private contextKeyService: IContextKeyService, @IViewDescriptorService viewDescriptorService: IViewDescriptorService ) { super(VIEWLET_ID, { mergeViewWithContainerWhenSingleView: true }, instantiationService, configurationService, layoutService, contextMenuService, telemetryService, extensionService, themeService, storageService, contextService, viewDescriptorService); @@ -93,18 +88,6 @@ export class DataExplorerViewPaneContainer extends ViewPaneContainer { return 400; } - getSecondaryActions(): IAction[] { - let menu = this.menuService.createMenu(MenuId.DataExplorerAction, this.contextKeyService); - let actions: IAction[] = []; - menu.getActions({}).forEach(group => { - if (group[0] === 'secondary') { - actions.push(...group[1]); - } - }); - menu.dispose(); - return actions; - } - protected override createView(viewDescriptor: IViewDescriptor, options: IViewletViewOptions): ViewPane { let viewletPanel = this.instantiationService.createInstance(viewDescriptor.ctorDescriptor.ctor, options) as ViewPane; this._register(viewletPanel); diff --git a/src/sql/workbench/contrib/resourceDeployment/browser/resourceDeployment.contribution.ts b/src/sql/workbench/contrib/resourceDeployment/browser/resourceDeployment.contribution.ts index 86e16c0edf..291bec9968 100644 --- a/src/sql/workbench/contrib/resourceDeployment/browser/resourceDeployment.contribution.ts +++ b/src/sql/workbench/contrib/resourceDeployment/browser/resourceDeployment.contribution.ts @@ -3,7 +3,11 @@ * Licensed under the Source EULA. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ +import { VIEWLET_ID } from 'sql/workbench/contrib/dataExplorer/browser/dataExplorerViewlet'; +import { localize } from 'vs/nls'; +import { MenuId, MenuRegistry } from 'vs/platform/actions/common/actions'; import { CommandsRegistry, ICommandService } from 'vs/platform/commands/common/commands'; +import { ContextKeyEqualsExpr } from 'vs/platform/contextkey/common/contextkey'; import { ServicesAccessor } from 'vs/platform/instantiation/common/instantiation'; // New Resource Deployment @@ -15,3 +19,13 @@ CommandsRegistry.registerCommand({ return commandService.executeCommand('azdata.resource.deploy'); } }); + +MenuRegistry.appendMenuItem(MenuId.ViewContainerTitle, { + group: 'deployment', + order: 4, + command: { + id: 'azdata.resource.deploy', + title: localize('deployment.title', "New Deployment...") + }, + when: ContextKeyEqualsExpr.create('viewContainer', VIEWLET_ID) +});