Bug 299529 UI scheduling strategy causes injections to be delayed
bundles/org.eclipse.e4.ui.workbench/src/org/eclipse/e4/workbench/ui/internal/Workbench.java
.get(IContributionFactory.class.getName());
				EHandlerService hs = (EHandlerService) context.get(EHandlerService.class.getName());
				EList<MHandler> handlers = container.getHandlers();
				for (MHandler handler : handlers) {
					String commandId = handler.getCommand().getId();
					if (handler.getObject() == null) {
						handler.setObject(cf.create(handler.getURI(), context));
					}
					hs.activateHandler(commandId, handler.getObject());
				}
			}
		}
		if (me instanceof MBindingContainer) {
			MContext contextModel = (MContext) me;
			MBindingContainer container = (MBindingContainer) me;
			IEclipseContext context = contextModel.getContext();
			if (context != null) {
				ECommandService cs = (ECommandService) context.get(ECommandService.class.getName());
				EBindingService bs = (EBindingService) context.get(EBindingService.class.getName());
				EList<MKeyBinding> bindings = container.getBindings();
				for (MKeyBinding binding : bindings) {
					Map<String, Object> parameters = null;
					EList<MParameter> modelParms = binding.getParameters();
					if (modelParms != null && !modelParms.isEmpty()) {
						parameters = new HashMap<String, Object>();
						for (MParameter mParm : modelParms) {
							parameters.put(mParm.getTag(), mParm.getValue());
						}
					}
					ParameterizedCommand cmd = cs.createCommand(binding.getCommand().getId(),