From 8c9b0f7f0bda259724afa8efdb0f3fd6f803dc09 Mon Sep 17 00:00:00 2001 From: alexp Date: Fri, 17 Sep 2010 23:21:51 +0400 Subject: [PATCH] 4330950: Lost newly entered data in the cell when resizing column width Reviewed-by: peterz --- src/share/classes/javax/swing/JTable.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/share/classes/javax/swing/JTable.java b/src/share/classes/javax/swing/JTable.java index bcf00a375..7842410e7 100644 --- a/src/share/classes/javax/swing/JTable.java +++ b/src/share/classes/javax/swing/JTable.java @@ -4574,9 +4574,8 @@ public class JTable extends JComponent implements TableModelListener, Scrollable * @see TableColumnModelListener */ public void columnMoved(TableColumnModelEvent e) { - // If I'm currently editing, then I should stop editing - if (isEditing()) { - removeEditor(); + if (isEditing() && !getCellEditor().stopCellEditing()) { + getCellEditor().cancelCellEditing(); } repaint(); } @@ -4593,8 +4592,8 @@ public class JTable extends JComponent implements TableModelListener, Scrollable * @see TableColumnModelListener */ public void columnMarginChanged(ChangeEvent e) { - if (isEditing()) { - removeEditor(); + if (isEditing() && !getCellEditor().stopCellEditing()) { + getCellEditor().cancelCellEditing(); } TableColumn resizingColumn = getResizingColumn(); // Need to do this here, before the parent's -- GitLab