Index: /trunk/src/org/openstreetmap/josm/data/validation/tests/RelationChecker.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/validation/tests/RelationChecker.java	(revision 15582)
+++ /trunk/src/org/openstreetmap/josm/data/validation/tests/RelationChecker.java	(revision 15583)
@@ -28,4 +28,5 @@
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPreset;
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItem;
+import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetListener;
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetType;
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresets;
@@ -39,5 +40,5 @@
  * @since 3669
  */
-public class RelationChecker extends Test {
+public class RelationChecker extends Test implements TaggingPresetListener {
 
     // CHECKSTYLE.OFF: SingleSpaceSeparator
@@ -80,4 +81,5 @@
     @Override
     public void initialize() {
+        TaggingPresets.addListener(this);
         initializePresets();
     }
@@ -376,3 +378,9 @@
         return testError.getCode() == RELATION_EMPTY && !primitives.isEmpty() && primitives.iterator().next().isNew();
     }
+
+    @Override
+    public void taggingPresetsModified() {
+        relationpresets.clear();
+        initializePresets();
+    }
 }
Index: /trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java	(revision 15582)
+++ /trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java	(revision 15583)
@@ -43,4 +43,5 @@
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPreset;
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItem;
+import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetListener;
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresets;
 import org.openstreetmap.josm.gui.tagging.presets.items.Check;
@@ -61,5 +62,5 @@
  * @since 3669
  */
-public class TagChecker extends TagTest {
+public class TagChecker extends TagTest implements TaggingPresetListener {
 
     /** The config file of ignored tags */
@@ -182,4 +183,5 @@
     @Override
     public void initialize() throws IOException {
+        TaggingPresets.addListener(this);
         initializeData();
         initializePresets();
@@ -1009,3 +1011,14 @@
         return false;
     }
+
+    @Override
+    public void taggingPresetsModified() {
+        try {
+            initializeData();
+            initializePresets();
+            analysePresets();
+        } catch (IOException e) {
+            Logging.error(e);
+        }
+    }
 }
Index: /trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSelector.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSelector.java	(revision 15582)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSelector.java	(revision 15583)
@@ -53,5 +53,6 @@
  * @since 6068
  */
-public class TaggingPresetSelector extends SearchTextResultListPanel<TaggingPreset> implements DataSelectionListener {
+public class TaggingPresetSelector extends SearchTextResultListPanel<TaggingPreset>
+        implements DataSelectionListener, TaggingPresetListener {
 
     private static final int CLASSIFICATION_IN_FAVORITES = 300;
@@ -194,4 +195,5 @@
         lsResult.setCellRenderer(new ResultListCellRenderer());
         classifications.loadPresets(TaggingPresets.getTaggingPresets());
+        TaggingPresets.addListener(this);
 
         JPanel pnChecks = new JPanel();
@@ -437,3 +439,9 @@
         lsResult.setSelectedValue(p, true);
     }
+
+    @Override
+    public void taggingPresetsModified() {
+        classifications.clear();
+        classifications.loadPresets(TaggingPresets.getTaggingPresets());
+    }
 }
