Bug 138283 [KeyBindings] Action set with accelerator causes conflict
Build: 3.2 RC1a 1) Installed the attached plugin 2) Switch to the Java perspective 3) Type Ctrl+Shift+T -> Nothing happens. There is a conflict between the JDT's "Open Type" action, and the action set defined by the attached plugin. The conflict occurs even though the action set in question is not enabled in the Java perspective. Actions from a disabled action set should not be stealing key bindings from actions that do apply in that perspective. This occurs if you install the Eclipse Callisto release with JDT and BIRT. BIRT defines an action set with an action bound to Ctrl+Shift+T. This causes the JDT "Open Type" action to not be reachable by the Ctrl+Shift+T binding in the Java perspective.
bundles/org.eclipse.jface/src/org/eclipse/jface/bindings/BindingManager.java
private Set bindingErrors = new HashSet();
	/**
	 * The array of all bindings currently handled by this manager. This array
	 * is the raw list of bindings, as provided to this manager. This value may
	 * be <code>null</code> if there are no bindings. The size of this array
	 * is not necessarily the number of bindings.
	 */
	private Binding[] bindings = null;
	/**
	 * A cache of the bindings previously computed by this manager. This value
	 * may be empty, but it is never <code>null</code>. This is a map of
	 * <code>CachedBindingSet</code> to <code>CachedBindingSet</code>.
	 */
	private Map cachedBindings = new HashMap();
	/**
	 * The command manager for this binding manager. This manager is only needed
	 * for the <code>getActiveBindingsFor(String)</code> method. This value is
	 * guaranteed to never be <code>null</code>.
	 */
	private final CommandManager commandManager;
	/**
	 * The context manager for this binding manager. For a binding manager to
	 * function, it needs to listen for changes to the contexts. This value is
	 * guaranteed to never be <code>null</code>.
	 */
	private final ContextManager contextManager;
	/**
	 * The locale for this manager. This defaults to the current locale. The
	 * value will never be <code>null</code>.
	 */