Index: /applications/editors/josm/plugins/sds/build.xml
===================================================================
--- /applications/editors/josm/plugins/sds/build.xml	(revision 33588)
+++ /applications/editors/josm/plugins/sds/build.xml	(revision 33589)
@@ -5,5 +5,5 @@
     <property name="commit.message" value=""/>
     <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
-    <property name="plugin.main.version" value="11851"/>
+    <property name="plugin.main.version" value="12810"/>
 
     <!--
Index: /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/ReadPostprocessor.java
===================================================================
--- /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/ReadPostprocessor.java	(revision 33588)
+++ /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/ReadPostprocessor.java	(revision 33589)
@@ -11,5 +11,4 @@
 import javax.xml.parsers.SAXParserFactory;
 
-import org.openstreetmap.josm.data.osm.Changeset;
 import org.openstreetmap.josm.data.osm.DataSet;
 import org.openstreetmap.josm.data.osm.Node;
@@ -17,5 +16,5 @@
 import org.openstreetmap.josm.data.osm.Relation;
 import org.openstreetmap.josm.data.osm.Way;
-import org.openstreetmap.josm.data.osm.visitor.Visitor;
+import org.openstreetmap.josm.data.osm.visitor.OsmPrimitiveVisitor;
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
 import org.openstreetmap.josm.io.OsmServerReadPostprocessor;
@@ -42,5 +41,5 @@
         relationList = new ArrayList<>();
 
-        Visitor adder = new Visitor() {
+        OsmPrimitiveVisitor adder = new OsmPrimitiveVisitor() {
             @Override
             public void visit(Node n) {
@@ -60,7 +59,4 @@
                 plugin.originalNodes.put(e.getId(), e.save());
             }
-
-            @Override
-            public void visit(Changeset cs) {}
         };
 
Index: /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsApi.java
===================================================================
--- /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsApi.java	(revision 33588)
+++ /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsApi.java	(revision 33589)
@@ -30,4 +30,5 @@
 import org.openstreetmap.josm.io.ProgressInputStream;
 import org.openstreetmap.josm.tools.CheckParameterUtil;
+import org.openstreetmap.josm.tools.Logging;
 
 /**
@@ -283,5 +284,5 @@
                 Thread.sleep(1000);
             } catch (InterruptedException ex) {
-                Main.trace(ex);
+                Logging.trace(ex);
             }
         }
Index: /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsConnection.java
===================================================================
--- /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsConnection.java	(revision 33588)
+++ /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsConnection.java	(revision 33589)
@@ -7,7 +7,7 @@
 import java.util.Base64;
 
-import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.io.auth.CredentialsAgentException;
 import org.openstreetmap.josm.io.auth.CredentialsAgentResponse;
+import org.openstreetmap.josm.tools.Logging;
 
 /**
@@ -45,5 +45,5 @@
             Thread.sleep(100);
         } catch (InterruptedException ex) {
-            Main.trace(ex);
+            Logging.trace(ex);
         }
 
Index: /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsCredentialAgent.java
===================================================================
--- /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsCredentialAgent.java	(revision 33588)
+++ /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsCredentialAgent.java	(revision 33589)
@@ -15,6 +15,6 @@
 import org.openstreetmap.josm.data.oauth.OAuthToken;
 import org.openstreetmap.josm.gui.io.CredentialDialog;
-import org.openstreetmap.josm.gui.preferences.server.ProxyPreferencesPanel;
 import org.openstreetmap.josm.gui.widgets.HtmlPanel;
+import org.openstreetmap.josm.io.DefaultProxySelector;
 import org.openstreetmap.josm.io.auth.AbstractCredentialsAgent;
 import org.openstreetmap.josm.io.auth.CredentialsAgent;
@@ -46,6 +46,6 @@
             return new PasswordAuthentication(user, password == null ? new char[0] : password.toCharArray());
         case PROXY:
-            user = Main.pref.get(ProxyPreferencesPanel.PROXY_USER, null);
-            password = Main.pref.get(ProxyPreferencesPanel.PROXY_PASS, null);
+            user = Main.pref.get(DefaultProxySelector.PROXY_USER, null);
+            password = Main.pref.get(DefaultProxySelector.PROXY_PASS, null);
             if (user == null)
                 return null;
@@ -72,9 +72,9 @@
             break;
         case PROXY:
-            Main.pref.put(ProxyPreferencesPanel.PROXY_USER, credentials.getUserName());
+            Main.pref.put(DefaultProxySelector.PROXY_USER, credentials.getUserName());
             if (credentials.getPassword() == null) {
-                Main.pref.put(ProxyPreferencesPanel.PROXY_PASS, null);
+                Main.pref.put(DefaultProxySelector.PROXY_PASS, null);
             } else {
-                Main.pref.put(ProxyPreferencesPanel.PROXY_PASS, String.valueOf(credentials.getPassword()));
+                Main.pref.put(DefaultProxySelector.PROXY_PASS, String.valueOf(credentials.getPassword()));
             }
             break;
Index: /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsLoadAction.java
===================================================================
--- /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsLoadAction.java	(revision 33588)
+++ /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsLoadAction.java	(revision 33589)
@@ -17,5 +17,5 @@
 import javax.xml.parsers.SAXParserFactory;
 
-import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.gui.MainApplication;
 import org.openstreetmap.josm.gui.PleaseWaitRunnable;
 import org.openstreetmap.josm.gui.widgets.SwingFileChooser;
@@ -45,5 +45,5 @@
     public void openFiles(List<File> fileList) {
         OpenFileTask task = new OpenFileTask(fileList, plugin);
-        Main.worker.submit(task);
+        MainApplication.worker.submit(task);
     }
 
Index: /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsMenu.java
===================================================================
--- /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsMenu.java	(revision 33588)
+++ /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsMenu.java	(revision 33589)
@@ -20,4 +20,5 @@
 import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.actions.JosmAction;
+import org.openstreetmap.josm.gui.MainApplication;
 import org.openstreetmap.josm.gui.MainMenu;
 import org.openstreetmap.josm.gui.layer.LayerManager.LayerAddEvent;
@@ -29,4 +30,5 @@
 import org.openstreetmap.josm.gui.layer.OsmDataLayer;
 import org.openstreetmap.josm.gui.preferences.PreferenceDialog;
+import org.openstreetmap.josm.tools.Logging;
 
 @SuppressWarnings("serial")
@@ -40,5 +42,5 @@
 
     public SdsMenu(final SeparateDataStorePlugin thePlugin) {
-        MainMenu mm = Main.main.menu;
+        MainMenu mm = MainApplication.getMenu();
         menu = mm.addMenu("SDS", tr("SDS"), KeyEvent.VK_S, mm.getDefaultMenuPos(), null);
         saveItem = new JMenuItem(new SdsSaveAction());
@@ -53,11 +55,11 @@
         menu.add(aboutItem);
 
-        Main.getLayerManager().addLayerChangeListener(this);
-        Main.getLayerManager().addActiveLayerChangeListener(this);
+        MainApplication.getLayerManager().addLayerChangeListener(this);
+        MainApplication.getLayerManager().addActiveLayerChangeListener(this);
         setEnabledState();
     }
 
     void setEnabledState() {
-        boolean en = Main.getLayerManager().getActiveLayer() instanceof OsmDataLayer;
+        boolean en = MainApplication.getLayerManager().getActiveLayer() instanceof OsmDataLayer;
         loadItem.setEnabled(en);
         saveItem.setEnabled(en);
@@ -148,5 +150,5 @@
                 sptbn.invoke(pd, "sds");
             } catch (Exception ex) {
-                Main.trace(ex);
+                Logging.trace(ex);
             }
             pd.setVisible(true);
Index: /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsSaveAction.java
===================================================================
--- /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsSaveAction.java	(revision 33588)
+++ /applications/editors/josm/plugins/sds/src/org/openstreetmap/hot/sds/SdsSaveAction.java	(revision 33589)
@@ -19,4 +19,5 @@
 import org.openstreetmap.josm.gui.layer.Layer;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer;
+import org.openstreetmap.josm.tools.Logging;
 import org.openstreetmap.josm.tools.Utils;
 
@@ -37,6 +38,6 @@
     public boolean doSave() {
         Layer layer = null;
-        if (Main.getLayerManager().getActiveLayer() instanceof OsmDataLayer)
-            layer = Main.getLayerManager().getActiveLayer();
+        if (getLayerManager().getActiveLayer() instanceof OsmDataLayer)
+            layer = getLayerManager().getActiveLayer();
 
         if (layer == null)
@@ -84,5 +85,5 @@
             }
         } catch (IOException e) {
-            Main.error(e);
+            Logging.error(e);
             JOptionPane.showMessageDialog(
                     Main.parent,
@@ -99,5 +100,5 @@
                 }
             } catch (IOException e2) {
-                Main.error(e2);
+                Logging.error(e2);
                 JOptionPane.showMessageDialog(
                         Main.parent,
