diff --git a/src/org/openstreetmap/josm/gui/preferences/display/DrawingPreference.java b/src/org/openstreetmap/josm/gui/preferences/display/DrawingPreference.java
index 409b3cc33..6b89d5042 100644
--- a/src/org/openstreetmap/josm/gui/preferences/display/DrawingPreference.java
+++ b/src/org/openstreetmap/josm/gui/preferences/display/DrawingPreference.java
@@ -73,6 +73,11 @@ public PreferenceSetting createPreferenceSetting() {
 
     @Override
     public void addGui(PreferenceTabbedPane gui) {
+        addOsmPane(gui);
+        addGpxPane(gui);
+    }
+
+    private void addGpxPane(PreferenceTabbedPane gui) {
         gpxPanel = new GPXSettingsPanel();
         gui.addValidationListener(gpxPanel);
         JPanel panel = gpxPanel;
@@ -81,7 +86,10 @@ public void addGui(PreferenceTabbedPane gui) {
         scrollpane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
         GuiHelper.setDefaultIncrement(scrollpane);
         gui.getDisplayPreference().addSubTab(this, tr("GPS Points"), scrollpane);
-        panel = new JPanel(new GridBagLayout());
+    }
+
+    private void addOsmPane(PreferenceTabbedPane gui) {
+        JPanel panel = new JPanel(new GridBagLayout());
         panel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
 
         // directionHint
@@ -200,7 +208,7 @@ public void addGui(PreferenceTabbedPane gui) {
         ExpertToggleAction.addVisibilitySwitcher(discardableKeys);
 
         panel.add(Box.createVerticalGlue(), GBC.eol().fill(GBC.BOTH));
-        scrollpane = new JScrollPane(panel);
+        JScrollPane scrollpane = new JScrollPane(panel);
         scrollpane.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
         GuiHelper.setDefaultIncrement(scrollpane);
         gui.getDisplayPreference().addSubTab(this, tr("OSM Data"), scrollpane);
