This patch (committed) ensures that the removeElementAt() method fires an event when
the selection is changed because of the removal:
2006-06-16 David Gilbert <[EMAIL PROTECTED]>
* javax/swing/DefaultComboBoxModel.java
(removeElementAt): Set new selected item by calling setSelectedItem().
I'll commit the corresponding Mauve test in a moment.
Regards,
Dave
Index: javax/swing/DefaultComboBoxModel.java
===================================================================
RCS file: /sources/classpath/classpath/javax/swing/DefaultComboBoxModel.java,v
retrieving revision 1.15
diff -u -r1.15 DefaultComboBoxModel.java
--- javax/swing/DefaultComboBoxModel.java 31 Mar 2006 09:45:48 -0000
1.15
+++ javax/swing/DefaultComboBoxModel.java 16 Jun 2006 14:12:16 -0000
@@ -146,9 +146,9 @@
if (selected == index) // choose a new selected item
{
if (selected > 0)
- selectedItem = getElementAt(selected - 1);
+ setSelectedItem(getElementAt(selected - 1));
else
- selectedItem = getElementAt(selected + 1);
+ setSelectedItem(getElementAt(selected + 1));
}
list.removeElementAt(index);
fireIntervalRemoved(this, index, index);