Bug 146265 [FieldAssist] Problems with vertical filled control
When using text with fill vertical, the text of the decorated field will not fill all the space. DecoratedField decoNormal = new DecoratedField(shell, SWT.BORDER, new TextControlCreator()); FieldDecoration fieldDeco = FieldDecorationRegistry.getDefault(). getFieldDecoration(FieldDecorationRegistry.DEC_CONTENT_PROPOSAL); decoNormal.addFieldDecoration(fieldDeco, SWT.TOP | SWT.LEFT, false); decoNormal.getLayoutControl().setLayoutData( new GridData(SWT.FILL, SWT.FILL, true, true) ); If i do this trick it will work but it is not a good practice i think : FormData fieldData = (FormData)decoVerticalFilled.getControl().getLayoutData(); fieldData.bottom = new FormAttachment(100, 0); decoVerticalFilled.getControl().setLayoutData(fieldData); Regards
bundles/org.eclipse.jface/src/org/eclipse/jface/fieldassist/DecoratedField.java
* <code>setUseMaximumDecorationWidth(false)</code> and need not register
 * their decorations.
 * <p>
 * This class is not intended to be subclassed.
 * 
 * @since 3.2
 * 
 * @see FieldDecorationRegistry
 */
public class DecoratedField {
	/**
	 * Cached platform flags for dealing with platform-specific issues.
	 */
	private static boolean CARBON = "carbon".equals(SWT.getPlatform()); 
	/**
	 * Constants describing the array indices used to hold the decorations in
	 * array slots.
	 */
	private static final int LEFT_TOP = 0;
	private static final int LEFT_BOTTOM = 1;
	private static final int RIGHT_TOP = 2;
	private static final int RIGHT_BOTTOM = 3;
	private static final int DECORATION_SLOTS = 4;
	/**
	 * Simple data structure class for specifying the internals for a field
	 * decoration. This class contains data specific to the implementation of
	 * field decorations as labels attached to the field. Clients should use
	 * <code>FieldDecoration</code> for specifying a decoration.
	 */
	private class FieldDecorationData {