Bug 169997 [CellEditors] TableViewer doesn't activate TextCellEditor consistently
A TextCellEditor is not activated consistently in a TableViewer if the cell clicked is not in the currently selected row. Running the sample application in a debugger, the bounds reported for the table item appears to be incorrect for the column when the row is not selected. This behaviour can be observed by setting a breakpoint at TableEditorImpl.java line 135 (the if statement doesn't return true unless the row is selected due to the bounds being incorrect): if (bounds.contains(event.x, event.y)) {
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/TableViewer.java
table.deselectAll();
	}
	protected void doSetSelection(Item[] items) {
		Assert.isNotNull(items, "Items-Array can not be null"); 
		TableItem[] t = new TableItem[items.length];
		System.arraycopy(items, 0, t, 0, t.length);
		table.setSelection(t);
	}
	protected void doShowSelection() {
		table.showSelection();
	}
	protected void doSetSelection(int[] indices) {
		table.setSelection(indices);
	}
	protected void doClear(int index) {
		table.clear(index);
	}
	protected void doSelect(int[] indices) {
		table.select(indices);
	}
	/**
	 * Refreshes this viewer starting with the given element. Labels are updated
	 * as described in <code>refresh(boolean updateLabels)</code>. The
	 * methods attempts to preserve the selection.
	 * <p>
	 * Unlike the <code>update</code> methods, this handles structural changes
	 * to the given element (e.g. addition or removal of children). If only the
	 * given element needs updating, it is more efficient to use the
	 * <code>update</code> methods.
	 * </p>