this.list.addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(final ListSelectionEvent e) {</BUG>
if (!e.getValueIsAdjusting()) {
final boolean isSomethingSelected = list.getSelectedIndex() >= 0;
<BUG>SwingUtilities.invokeLater(new Runnable() {

@Override
public void run() {</BUG>
removeAction.setEnabled(isSomethingSelected && model.getSize() > 1);

this.addAction = new AddAction(stringsKey);
this.removeAction = new RemoveAction(stringsKey);
this.changeAction = new ChangeAction(stringsKey);
this.list = new JList<>(model);
this.list.setCellRenderer(renderer);
this.list.setPrototypeCellValue(prototypeValue);
this.list.addListSelectionListener(e -> {
if (!e.getValueIsAdjusting()) {
final boolean isSomethingSelected = list.getSelectedIndex() >= 0;
SwingUtilities.invokeLater(() -> {
removeAction.setEnabled(isSomethingSelected && model.getSize() > 1);
