Bug 185216 [CellEditors] Double click behavior on editable cells for tables happens regardless of the button used to execute the second click.
This happens with an editable CellEditor in a table. 1. The user single clicks (with button 1) the text cell editor to activate the cell. The text inside the cell automatically highlights. 2. The user clicks again (with button 2 and within the defined double click time) to activate the popup menu (perhaps they wish to paste a new value over the highlighted text). The text cell editor will then become un-activated and the double click behavior for the table will be run. I believe that this could be fixed by ensuring that for a double click action to happen, both mouse clicks are from button 1. I looked at the code in 3.2.2 and this is would involve modifying the code in both the TableEditorImpl.activateCellEditor() (lines 98-110 where it adds the mouse listener) and in TreeEditorImpl.activateCellEditor() (also lines 98-110). In 3.3, it appears that those classes were replaced. I did find, however, the same code in ColumnViewerEditor.activateCellEditor() (lines 181-193) and TableTreeViewer.TableTreeEditorImpl.activateCellEditor (lines 152-164).
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/ColumnViewerEditor.java
if (t != null && !t.isDisposed()) {
						saveEditorValue(c);
					}
					if (!viewer.getControl().isDisposed()) {
						setEditor(null, null, 0);
					}
					c.removeListener(cellEditorListener);
					Control control = c.getControl();
					if (control != null && !control.isDisposed()) {
						if (mouseListener != null) {
							control.removeMouseListener(mouseListener);
							
							mouseListener = null;
						}
						if (focusListener != null) {
							control.removeFocusListener(focusListener);
						}
						if (tabeditingListener != null) {
							control.removeTraverseListener(tabeditingListener);
						}
					}
					c.deactivate(tmp);
					if (editorActivationListener != null
							&& !editorActivationListener.isEmpty()) {
						Object[] ls = editorActivationListener.getListeners();
						for (int i = 0; i < ls.length; i++) {
							((ColumnViewerEditorActivationListener) ls[i])
									.afterEditorDeactivated(tmp);
						}
					}