diff --git a/src/org/openstreetmap/josm/data/preferences/BooleanProperty.java b/src/org/openstreetmap/josm/data/preferences/BooleanProperty.java
index 3e466f0..578edca 100644
--- a/src/org/openstreetmap/josm/data/preferences/BooleanProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/BooleanProperty.java
@@ -15,6 +15,9 @@ public class BooleanProperty extends AbstractProperty<Boolean> {
      */
     public BooleanProperty(String key, boolean defaultValue) {
         super(key, defaultValue);
+        if (Main.pref != null) {
+            get();
+        }
     }
 
     @Override
diff --git a/src/org/openstreetmap/josm/data/preferences/CollectionProperty.java b/src/org/openstreetmap/josm/data/preferences/CollectionProperty.java
index dabd3c7..0b5c854 100644
--- a/src/org/openstreetmap/josm/data/preferences/CollectionProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/CollectionProperty.java
@@ -17,6 +17,9 @@ public class CollectionProperty extends AbstractProperty<Collection<String>> {
      */
     public CollectionProperty(String key, Collection<String> defaultValue) {
         super(key, defaultValue);
+        if (Main.pref != null) {
+            get();
+        }
     }
 
     @Override
diff --git a/src/org/openstreetmap/josm/data/preferences/ColorProperty.java b/src/org/openstreetmap/josm/data/preferences/ColorProperty.java
index 8c1794b..b597bb2 100644
--- a/src/org/openstreetmap/josm/data/preferences/ColorProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/ColorProperty.java
@@ -23,6 +23,9 @@ public class ColorProperty extends AbstractProperty<Color> implements ColorKey {
     public ColorProperty(String colName, Color defaultValue) {
         super(getColorKey(colName), defaultValue);
         this.name = colName;
+        if (Main.pref != null) {
+            get();
+        }
     }
 
     @Override
diff --git a/src/org/openstreetmap/josm/data/preferences/IntegerProperty.java b/src/org/openstreetmap/josm/data/preferences/IntegerProperty.java
index 342b3ba..f15d082 100644
--- a/src/org/openstreetmap/josm/data/preferences/IntegerProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/IntegerProperty.java
@@ -16,6 +16,9 @@ public class IntegerProperty extends AbstractProperty<Integer> {
      */
     public IntegerProperty(String key, int defaultValue) {
         super(key, defaultValue);
+        if (Main.pref != null) {
+            get();
+        }
     }
 
     @Override
diff --git a/src/org/openstreetmap/josm/data/preferences/ParametrizedEnumProperty.java b/src/org/openstreetmap/josm/data/preferences/ParametrizedEnumProperty.java
index 094a745..84dc7ba 100644
--- a/src/org/openstreetmap/josm/data/preferences/ParametrizedEnumProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/ParametrizedEnumProperty.java
@@ -11,6 +11,9 @@ public abstract class ParametrizedEnumProperty<T extends Enum<T>> {
     public ParametrizedEnumProperty(Class<T> enumClass, T defaultValue) {
         this.defaultValue = defaultValue;
         this.enumClass = enumClass;
+        if (Main.pref != null) {
+            get();
+        }
     }
 
     protected abstract String getKey(String... params);
diff --git a/src/org/openstreetmap/josm/data/preferences/StringProperty.java b/src/org/openstreetmap/josm/data/preferences/StringProperty.java
index 1e352ad..25e42a1 100644
--- a/src/org/openstreetmap/josm/data/preferences/StringProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/StringProperty.java
@@ -15,6 +15,9 @@ public class StringProperty extends AbstractProperty<String> {
      */
     public StringProperty(String key, String defaultValue) {
         super(key, defaultValue);
+        if (Main.pref != null) {
+            get();
+        }
     }
 
     @Override
