save the selected contact after reordered

cusax-fix
Yana Stamcheva 20 years ago
parent 81088bdaa0
commit ab244321c8

@ -87,7 +87,10 @@ public ContactList(MainFrame mainFrame) {
this.addListSelectionListener(new ListSelectionListener() {
public void valueChanged(ListSelectionEvent e) {
currentlySelectedObject = getSelectedValue();
new Exception().printStackTrace();
if(!e.getValueIsAdjusting()) {
currentlySelectedObject = getSelectedValue();
}
}
});
@ -183,7 +186,9 @@ public void metaContactGroupRemoved(MetaContactGroupEvent evt) {
* depends on the contact and not on the index.
*/
public void childContactsReordered(MetaContactGroupEvent evt) {
this.refreshGroup(evt.getSourceMetaContactGroup());
if(currentlySelectedObject != null)
setSelectedValue(currentlySelectedObject);
this.refreshGroup(evt.getSourceMetaContactGroup());
}
@ -662,7 +667,7 @@ public void run()
}
else {
this.refreshAll();
}
}
isModified = false;
}
}
@ -688,7 +693,7 @@ private void refreshGroup(MetaContactGroup group)
int groupIndex = listModel.indexOf(group);
int lastIndex = listModel.countChildContacts(group);
listModel.contentAdded(groupIndex, lastIndex);
listModel.contentChanged(groupIndex, lastIndex);
}
}
}
@ -724,7 +729,7 @@ public void refreshAll()
public void setSelectedValue(Object o) {
if(o == null)
setSelectedIndex(-1);
else if(!o.equals(getSelectedValue())) {
else {
int i = listModel.indexOf(o);
this.setSelectedIndex(i);
}

Loading…
Cancel
Save