diff --git a/src/org/openstreetmap/josm/data/preferences/AbstractProperty.java b/src/org/openstreetmap/josm/data/preferences/AbstractProperty.java
index 1516d42..e0584ca 100644
--- a/src/org/openstreetmap/josm/data/preferences/AbstractProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/AbstractProperty.java
@@ -20,6 +20,9 @@ public abstract class AbstractProperty<T> {
     public AbstractProperty(String key, T defaultValue) {
         this.key = key;
         this.defaultValue = defaultValue;
+        if (Main.pref == null) {
+            Main.initApplicationPreferences();
+        }
     }
 
     /**
diff --git a/src/org/openstreetmap/josm/data/preferences/BooleanProperty.java b/src/org/openstreetmap/josm/data/preferences/BooleanProperty.java
index 3e466f0..b9c6ed1 100644
--- a/src/org/openstreetmap/josm/data/preferences/BooleanProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/BooleanProperty.java
@@ -15,6 +15,7 @@ public class BooleanProperty extends AbstractProperty<Boolean> {
      */
     public BooleanProperty(String key, boolean defaultValue) {
         super(key, defaultValue);
+        get();
     }
 
     @Override
diff --git a/src/org/openstreetmap/josm/data/preferences/CollectionProperty.java b/src/org/openstreetmap/josm/data/preferences/CollectionProperty.java
index dabd3c7..7b418d4 100644
--- a/src/org/openstreetmap/josm/data/preferences/CollectionProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/CollectionProperty.java
@@ -17,6 +17,7 @@ public class CollectionProperty extends AbstractProperty<Collection<String>> {
      */
     public CollectionProperty(String key, Collection<String> defaultValue) {
         super(key, defaultValue);
+        get();
     }
 
     @Override
diff --git a/src/org/openstreetmap/josm/data/preferences/ColorProperty.java b/src/org/openstreetmap/josm/data/preferences/ColorProperty.java
index 8c1794b..c7a442b 100644
--- a/src/org/openstreetmap/josm/data/preferences/ColorProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/ColorProperty.java
@@ -23,6 +23,7 @@ public class ColorProperty extends AbstractProperty<Color> implements ColorKey {
     public ColorProperty(String colName, Color defaultValue) {
         super(getColorKey(colName), defaultValue);
         this.name = colName;
+        get();
     }
 
     @Override
diff --git a/src/org/openstreetmap/josm/data/preferences/IntegerProperty.java b/src/org/openstreetmap/josm/data/preferences/IntegerProperty.java
index 342b3ba..9774e46 100644
--- a/src/org/openstreetmap/josm/data/preferences/IntegerProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/IntegerProperty.java
@@ -16,6 +16,7 @@ public class IntegerProperty extends AbstractProperty<Integer> {
      */
     public IntegerProperty(String key, int defaultValue) {
         super(key, defaultValue);
+        get();
     }
 
     @Override
diff --git a/src/org/openstreetmap/josm/data/preferences/ParametrizedEnumProperty.java b/src/org/openstreetmap/josm/data/preferences/ParametrizedEnumProperty.java
index 094a745..b6c4aaa 100644
--- a/src/org/openstreetmap/josm/data/preferences/ParametrizedEnumProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/ParametrizedEnumProperty.java
@@ -11,6 +11,7 @@ public abstract class ParametrizedEnumProperty<T extends Enum<T>> {
     public ParametrizedEnumProperty(Class<T> enumClass, T defaultValue) {
         this.defaultValue = defaultValue;
         this.enumClass = enumClass;
+        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..84a649d 100644
--- a/src/org/openstreetmap/josm/data/preferences/StringProperty.java
+++ b/src/org/openstreetmap/josm/data/preferences/StringProperty.java
@@ -15,6 +15,7 @@ public class StringProperty extends AbstractProperty<String> {
      */
     public StringProperty(String key, String defaultValue) {
         super(key, defaultValue);
+        get();
     }
 
     @Override
