Index: /trunk/src/org/openstreetmap/josm/gui/layer/TMSLayer.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/TMSLayer.java	(revision 5016)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/TMSLayer.java	(revision 5017)
@@ -66,6 +66,4 @@
 import org.openstreetmap.josm.data.preferences.IntegerProperty;
 import org.openstreetmap.josm.data.preferences.StringProperty;
-import org.openstreetmap.josm.data.projection.Epsg4326;
-import org.openstreetmap.josm.data.projection.Mercator;
 import org.openstreetmap.josm.data.projection.Projection;
 import org.openstreetmap.josm.gui.MapView;
@@ -1447,5 +1445,5 @@
     @Override
     public boolean isProjectionSupported(Projection proj) {
-        return proj instanceof Mercator || proj instanceof Epsg4326;
+        return "EPSG:3857".equals(proj.toCode()) || "EPSG:4326".equals(proj.toCode());
     }
 
Index: /trunk/src/org/openstreetmap/josm/gui/layer/WMSLayer.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/WMSLayer.java	(revision 5016)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/WMSLayer.java	(revision 5017)
@@ -57,5 +57,4 @@
 import org.openstreetmap.josm.data.preferences.BooleanProperty;
 import org.openstreetmap.josm.data.preferences.IntegerProperty;
-import org.openstreetmap.josm.data.projection.Mercator;
 import org.openstreetmap.josm.data.projection.Projection;
 import org.openstreetmap.josm.gui.MapView;
@@ -1030,5 +1029,6 @@
         List<String> serverProjections = info.getServerProjections();
         return serverProjections.contains(proj.toCode().toUpperCase())
-                || (proj instanceof Mercator && serverProjections.contains("EPSG:4326"));
+                || ("EPSG:3857".equals(proj.toCode()) && (serverProjections.contains("EPSG:4326") || serverProjections.contains("CRS:84")))
+                || ("EPSG:4326".equals(proj.toCode()) && serverProjections.contains("CRS:84"));
     }
 
Index: /trunk/src/org/openstreetmap/josm/io/imagery/WMSGrabber.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/io/imagery/WMSGrabber.java	(revision 5016)
+++ /trunk/src/org/openstreetmap/josm/io/imagery/WMSGrabber.java	(revision 5017)
@@ -31,5 +31,4 @@
 import org.openstreetmap.josm.data.imagery.GeorefImage.State;
 import org.openstreetmap.josm.data.imagery.ImageryInfo;
-import org.openstreetmap.josm.data.projection.Mercator;
 import org.openstreetmap.josm.gui.MapView;
 import org.openstreetmap.josm.gui.layer.WMSLayer;
@@ -86,5 +85,5 @@
             int wi, int ht) throws MalformedURLException {
         String myProj = Main.getProjection().toCode();
-        if (!info.getServerProjections().contains(myProj) && (Main.getProjection() instanceof Mercator)) {
+        if (!info.getServerProjections().contains(myProj) && "EPSG:3857".equals(Main.getProjection().toCode())) {
             LatLon sw = Main.getProjection().eastNorth2latlon(new EastNorth(w, s));
             LatLon ne = Main.getProjection().eastNorth2latlon(new EastNorth(e, n));
@@ -99,5 +98,5 @@
         }
 
-        // Bounding box coordinats have to be switched for WMS 1.3.0 EPSG:4326.
+        // Bounding box coordinates have to be switched for WMS 1.3.0 EPSG:4326.
         //
         // Background:
