Index: trunk/src/org/openstreetmap/josm/gui/dialogs/PropertiesDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/PropertiesDialog.java	(revision 414)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/PropertiesDialog.java	(revision 415)
@@ -19,4 +19,5 @@
 import java.awt.event.MouseEvent;
 import java.util.Collection;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
@@ -245,9 +246,11 @@
             @Override public void focusGained(FocusEvent e) {
             	String key = keys.getEditor().getItem().toString();
+				Collection<String> newItems;
             	if (allData.containsKey(key)) {
-					values.setPossibleItems(allData.get(key));
+					newItems = allData.get(key);
 				} else {
-					values.removeAllItems();
-				}
+					newItems = Collections.emptyList();
+				}
+				values.setPossibleItems(newItems);
             }
         });
Index: trunk/src/org/openstreetmap/josm/tools/AutoCompleteComboBox.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/AutoCompleteComboBox.java	(revision 414)
+++ trunk/src/org/openstreetmap/josm/tools/AutoCompleteComboBox.java	(revision 415)
@@ -82,9 +82,9 @@
 
 	public void setPossibleItems(Collection<String> elems) {
-		Object oldValue = this.getSelectedItem();
 		DefaultComboBoxModel model = (DefaultComboBoxModel)this.getModel();
+		Object oldValue = this.getEditor().getItem();
 		model.removeAllElements();
 		for (String elem : elems) model.addElement(elem);
-		this.setSelectedItem(oldValue);
+		this.getEditor().setItem(oldValue);
 		this.getEditor().selectAll();
 	}
