Index: trunk/src/org/openstreetmap/josm/data/osm/Filter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/Filter.java	(revision 15476)
+++ trunk/src/org/openstreetmap/josm/data/osm/Filter.java	(revision 15477)
@@ -54,4 +54,17 @@
     public Filter(SearchSetting setting) {
         super(setting);
+    }
+
+    /**
+     * Constructs a new {@code Filter} from a {@code SearchSetting} and filter-specific fields from an existing Filter.
+     * @param setting {@code SearchSetting} to construct information from
+     * @param f {@code Filter} to construct filter-specific fields from
+     * @since 15477
+     */
+    public Filter(SearchSetting setting, Filter f) {
+        super(setting);
+        this.enable = f.enable;
+        this.hiding = f.hiding;
+        this.inverted = f.inverted;
     }
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/FilterDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/FilterDialog.java	(revision 15476)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/FilterDialog.java	(revision 15477)
@@ -164,5 +164,5 @@
             SearchSetting searchSetting = SearchAction.showSearchDialog(f);
             if (searchSetting != null) {
-                filterModel.setValue(index, new Filter(searchSetting));
+                filterModel.setValue(index, new Filter(searchSetting, f));
             }
         }
