Bug 49751 [Contributions] IWorkbenchActionConstants inconsistency
IWorkbenchActionConstants has M_VIEW but not M_PERSPECTIVE. The M_VIEW comment references the Perspective menu. Also it has M_WORKBENCH which I don't think is used any more. /** * Name of standard Perspective menu (value <code>"view"</code>). */ public static final String M_VIEW = MENU_PREFIX+"view"; //$NON-NLS-1$ /** * Name of standard Workbench menu (value <code>"workbench"</code>). */ public static final String M_WORKBENCH = MENU_PREFIX+"workbench"; // $NON-NLS-1$
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/WorkbenchActionBuilder.java
final IMutableCommandHandlerService commandHandlerServiceA = CommandHandlerServiceFactory.getMutableCommandHandlerService();
		commandHandlerServiceA.setHandlersByCommandId(new HashMap(Collections.singletonMap("command", handlerA)));
		final IMutableCommandHandlerService commandHandlerServiceB = CommandHandlerServiceFactory.getMutableCommandHandlerService();
		commandHandlerServiceB.setHandlersByCommandId(new HashMap(Collections.singletonMap("command", handlerB)));				
				
		menu.add(new Separator());
		
		menu.add(new Action("Add handler A to the workbench") {
			public void run() {
				IWorkbench workbench = PlatformUI.getWorkbench();
				IWorkbenchCommandSupport workbenchCommandSupport = (IWorkbenchCommandSupport) workbench.getCommandSupport();
				workbenchCommandSupport.getCompoundCommandHandlerService().addCommandHandlerService(commandHandlerServiceA);
			}
		});
		menu.add(new Action("Remove handler A from the workbench") {
			public void run() {
				IWorkbench workbench = PlatformUI.getWorkbench();
				IWorkbenchCommandSupport workbenchCommandSupport = (IWorkbenchCommandSupport) workbench.getCommandSupport();
				workbenchCommandSupport.getCompoundCommandHandlerService().removeCommandHandlerService(commandHandlerServiceA);
			}
		});
		
		menu.add(new Action("Add handler B to the workbench") {
			public void run() {
				IWorkbench workbench = PlatformUI.getWorkbench();
				IWorkbenchCommandSupport workbenchCommandSupport = (IWorkbenchCommandSupport) workbench.getCommandSupport();
				workbenchCommandSupport.getCompoundCommandHandlerService().addCommandHandlerService(commandHandlerServiceB);
			}
		});
		menu.add(new Action("Remove handler B from the workbench") {