Bug 156456 [Forms] widgets accept focus even though they can't do anything with it
Many of the widgets in the Forms library (Section, BusyIndicator, FormHeading) will accept keyboard focus even though they can't do anything with it. The impact is that when someone calls setFocus on a Form that contains a FormHeading at its top (which is quite common), keyboard focus ends up nowhere. Looking at the patterns in SWT, it appears that the correct protocol is for controls to return false from setFocus if they can't do anything with the focus so that the caller can try assigning focus somewhere else.
bundles/org.eclipse.ui.forms/src/org/eclipse/ui/internal/forms/widgets/FormHeading.java
private static final int TITLE_HMARGIN = 1;
	private static final int SPACING = 5;
	private static final int VSPACING = 5;
	private static final int HMARGIN = 6;
	private static final int VMARGIN = 1;
	private static final int CLIENT_MARGIN = 1;
	private static final int SEPARATOR = 1 << 1;
	private static final int BOTTOM_TOOLBAR = 1 << 2;
	private static final int BACKGROUND_IMAGE_TILED = 1 << 3;
	private static final int SEPARATOR_HEIGHT = 2;
	private static final int MESSAGE_AREA_LIMIT = 50;
	static IMessage[] NULL_MESSAGE_ARRAY = new IMessage[] {};
	public static final String COLOR_BASE_BG = "baseBg"; 
	private Image backgroundImage;
	private Image gradientImage;
	Hashtable colors = new Hashtable();
	private int flags;
	private GradientInfo gradientInfo;
	private ToolBarManager toolBarManager;
	private SizeCache toolbarCache = new SizeCache();
	private SizeCache clientCache = new SizeCache();
	private SizeCache messageCache = new SizeCache();
	private TitleRegion titleRegion;
	private MessageRegion messageRegion;
	private IMessageToolTipManager messageToolTipManager = new DefaultMessageToolTipManager();
	private Control headClient;
	private class DefaultMessageToolTipManager implements