Index: applications/editors/josm/plugins/osmarender/build.xml
===================================================================
--- applications/editors/josm/plugins/osmarender/build.xml	(revision 27289)
+++ applications/editors/josm/plugins/osmarender/build.xml	(revision 27857)
@@ -34,5 +34,5 @@
     <property name="xslt" location="./xslt"/>
     <property name="commit.message" value="Fixed #4360 - osmarender plugin does not load"/>
-    <property name="plugin.main.version" value="4645"/>
+    <property name="plugin.main.version" value="4968"/>
     <target name="init">
         <mkdir dir="${plugin.build.dir}"/>
Index: applications/editors/josm/plugins/osmarender/src/org/openstreetmap/josm/plugins/osmarender/OsmarenderPlugin.java
===================================================================
--- applications/editors/josm/plugins/osmarender/src/org/openstreetmap/josm/plugins/osmarender/OsmarenderPlugin.java	(revision 27289)
+++ applications/editors/josm/plugins/osmarender/src/org/openstreetmap/josm/plugins/osmarender/OsmarenderPlugin.java	(revision 27857)
@@ -34,4 +34,6 @@
 import org.openstreetmap.josm.gui.preferences.PreferenceSetting;
 import org.openstreetmap.josm.gui.preferences.PreferenceTabbedPane;
+import org.openstreetmap.josm.gui.preferences.SubPreferenceSetting;
+import org.openstreetmap.josm.gui.preferences.TabPreferenceSetting;
 import org.openstreetmap.josm.io.OsmWriter;
 import org.openstreetmap.josm.io.OsmWriterFactory;
@@ -142,21 +144,39 @@
 
     @Override public PreferenceSetting getPreferenceSetting() {
-        return new PreferenceSetting(){
-            private JTextField firefox = new JTextField(10);
-            public void addGui(PreferenceTabbedPane gui) {
-                final JPanel panel = new JPanel(new GridBagLayout());
-                panel.setBorder(BorderFactory.createEmptyBorder( 0, 0, 0, 0 ));
-
-                panel.add(new JLabel(tr("Firefox executable")), GBC.std().insets(10,5,5,0));
-                panel.add(firefox, GBC.eol().insets(0,5,0,0).fill(GBC.HORIZONTAL));
-                panel.add(Box.createVerticalGlue(), GBC.eol().fill(GBC.BOTH));
-                firefox.setText(Main.pref.get("osmarender.firefox"));
-                gui.mapcontent.addTab(tr("Osmarender"), panel);
-            }
-            public boolean ok() {
-                Main.pref.put("osmarender.firefox", firefox.getText());
-                return false;
-            }
-        };
+        return new OsmarenderPreferenceSetting();
+    }
+
+    private class OsmarenderPreferenceSetting implements SubPreferenceSetting {
+
+        private JTextField firefox = new JTextField(10);
+
+        @Override
+        public void addGui(PreferenceTabbedPane gui) {
+            final JPanel panel = new JPanel(new GridBagLayout());
+            panel.setBorder(BorderFactory.createEmptyBorder( 0, 0, 0, 0 ));
+
+            panel.add(new JLabel(tr("Firefox executable")), GBC.std().insets(10,5,5,0));
+            panel.add(firefox, GBC.eol().insets(0,5,0,0).fill(GBC.HORIZONTAL));
+            panel.add(Box.createVerticalGlue(), GBC.eol().fill(GBC.BOTH));
+            firefox.setText(Main.pref.get("osmarender.firefox"));
+            gui.getMapPreference().mapcontent.addTab(tr("Osmarender"), panel);
+        }
+
+        @Override
+        public boolean ok() {
+            Main.pref.put("osmarender.firefox", firefox.getText());
+            return false;
+        }
+
+        @Override
+        public boolean isExpert() {
+            return false;
+        }
+
+        @Override
+        public TabPreferenceSetting getTabPreferenceSetting(final PreferenceTabbedPane gui) {
+            return gui.getMapPreference();
+        }
+
     }
 
