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
if (ctxt.getContext() == null) {
				IEclipseContext parentContext = element.getParent() == null ? appContext
						: getContext(element.getParent());
				IEclipseContextStrategy strategy;
				if (element instanceof MContribution) {
					IContributionFactory contributionFactory = (IContributionFactory) parentContext
							.get(IContributionFactory.class.getName());
					MContribution contribution = (MContribution) element;
					Bundle bundle = contributionFactory.getBundle(contribution
							.getURI());
					strategy = new BundleContextStrategy(bundle);
				} else {
					strategy = null;
				}
				IEclipseContext lclContext = EclipseContextFactory.create(
						parentContext, strategy);
				populateModelInterfaces(ctxt, lclContext, element.getClass()
						.getInterfaces());
				ctxt.setContext(lclContext);
				
				
				for (String variable : ctxt.getVariables()) {
					lclContext.declareModifiable(variable);
				}
				for (Entry<String, String> property : ctxt.getProperties()) {
					lclContext.set(property.getKey(), property.getValue());
				}
				E4Workbench.processHierarchy(element);