Bug 34819 [CellEditors] DialogCellEditor incorrectly displayed in TableViewer - RC2 bug
Bug appeared on migration from M4 to RC2 - Linux GTK platform, JDK 1.3.1 Table has 2 columns, multiple rows column 0 : text display with TextCellEditor (arbitary text) column 1 : text display with subclass of DialogCellEditor - opens a FileDialog Steps: 1 - all rows/column have data set 2 - select column 1 - DialogCellEditor displayed as expected 3 - do not change anything but immediately select column 0 - TextCellEditor displays as expected 4 - then select column 0 of any other row BUG : the original column 0 now displays the DialogCellEditor for its row. Need sample code? Could strip out with a bit of work.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/TableViewerImpl.java
final Control control = cellEditor.getControl();
				cellEditor.activate();
				if (control == null)
					return;
		 		setLayoutData(cellEditor.getLayoutData());
				setEditor(control, tableItem, columnNumber);		
				cellEditor.setFocus();
				if(focusListener == null) {
					focusListener = new FocusAdapter() {
						public void focusLost(FocusEvent e) {
							applyEditorValue();
						}
					};
				}
				control.addFocusListener(focusListener);
				mouseListener = new MouseAdapter() {
					public void mouseDown(MouseEvent e) {
							
						
						if (e.time <= doubleClickExpirationTime ) {
							control.removeMouseListener(mouseListener);
							cancelEditing();
							handleDoubleClickEvent();
						} else if (mouseListener != null) {
							control.removeMouseListener(mouseListener);
						}
					} 
				};				
				control.addMouseListener(mouseListener);