Bug 306883 Accelerators are never shown on MacOS X
Build Identifier: I20100318-2100 I noticed a while back that the main menus in my app no longer showed keystroke accelerators. Turns out that the EBindingServiceImpl's contextSet is always empty. EBindingServiceImpl#setContexIds() is called a few times, but always with an empty set. As a result, EBS.getBestSequenceFor() always returns null and MenuItemRenderer#setItemText() shows nothing. I'm assuming that setContextIds() should be provided something at some point. But I can't seem to find any users of IServiceConstants.ACTIVE_CONTEXTS nor EBundleService.ACTIVE_CONTEXTS nor any other occurrences of "activeContexts". Reproducible: Always
bundles/org.eclipse.e4.ui.workbench.swt/src/org/eclipse/e4/ui/workbench/swt/internal/PartRenderingEngine.java
.getProperty(UIEvents.EventTags.TYPE);
			if (UIEvents.EventTypes.ADD.equals(eventType)) {
				Activator.trace(Policy.DEBUG_RENDERER, "Child Added", null); 
				MUIElement added = (MUIElement) event
						.getProperty(UIEvents.EventTags.NEW_VALUE);
				
				
				
				
				boolean isStack = changedObj instanceof MGenericStack<?>;
				boolean hasWidget = added.getWidget() != null;
				boolean isSelected = added == changedElement
						.getSelectedElement();
				boolean renderIt = !isStack || hasWidget || isSelected;
				if (renderIt) {
					
					Widget w = (Widget) createGui(added);
					if (w instanceof Control && !(w instanceof Shell)) {
						((Control) w).getShell().layout(
								new Control[] { (Control) w }, SWT.DEFER);
					}
				} else {
					if (renderer != null)
						renderer.childRendered(changedElement, added);
				}
			} else if (UIEvents.EventTypes.REMOVE.equals(eventType)) {
				Activator.trace(Policy.DEBUG_RENDERER, "Child Removed", null); 
				MUIElement removed = (MUIElement) event
						.getProperty(UIEvents.EventTags.OLD_VALUE);