Bug 208335 [JFace] AbstractColumnLayout does not handle columns with minimum and weight correctly
When calculating the widths of columns that have a ColumnWeightData with both weight and minimum width, the AbstractColumnLayout appends the minimum width on to the width calculation rather than using it as an actual minimum value. This causes the widths of the columns not to honor their weight settings correctly. Say for instance that you construct a table or tree with two columns, the first with a weight of 1 and a min width of 50, the second with a weight of 1 and a min width of 100. If there are 400 pixels of available space we should see both columns having equal width. The minimums should not come in to play in this instance. Instead the second column is larger than the first. The algorithm in question is located in AbstractColumnLayout#layoutTableTree
bundles/org.eclipse.jface/src/org/eclipse/jface/layout/AbstractColumnLayout.java
/**
	 * The number of extra pixels taken as horizontal trim by the table column.
	 * To ensure there are N pixels available for the content of the column,
	 * assign N+COLUMN_TRIM for the column width.
	 *
	 * @since 3.1
	 */
	private static int COLUMN_TRIM;
	static {
		if ("win32".equals(SWT.getPlatform())) { 
			COLUMN_TRIM = 4;
		} else if ("carbon".equals(SWT.getPlatform())) { 
			COLUMN_TRIM = 24;
		} else {
			COLUMN_TRIM = 3;
		}
	}
	static final boolean IS_GTK = "gtk".equals(SWT.getPlatform());
	static final String LAYOUT_DATA = Policy.JFACE + ".LAYOUT_DATA"; 
	private boolean inupdateMode = false;
	private boolean relayout = true;
	private Listener resizeListener = new Listener() {
		public void handleEvent(Event event) {
			if( ! inupdateMode ) {
				updateColumnData(event.widget);
			}
		}