Index: trunk/src/org/openstreetmap/josm/gui/MapFrame.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/MapFrame.java	(revision 5447)
+++ trunk/src/org/openstreetmap/josm/gui/MapFrame.java	(revision 5448)
@@ -627,11 +627,14 @@
             }
         }
-        if (!modeChanged && mapMode != null) {
-            // Let mapmodes know about new active layer
-            mapMode.exitMode();
-            mapMode.enterMode();
-        }
-        // invalidate repaint cache
-        Main.map.mapView.preferenceChanged(null);
+        // if this is really a change (and not the first active layer)
+        if (oldLayer != null) {
+            if (!modeChanged && mapMode != null) {
+                // Let mapmodes know about new active layer
+                mapMode.exitMode();
+                mapMode.enterMode();
+            }
+            // invalidate repaint cache
+            Main.map.mapView.preferenceChanged(null);
+        }
 
         // After all listeners notice new layer, some buttons will be disabled/enabled
Index: trunk/src/org/openstreetmap/josm/gui/MapView.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/MapView.java	(revision 5447)
+++ trunk/src/org/openstreetmap/josm/gui/MapView.java	(revision 5448)
@@ -319,12 +319,15 @@
         }
         fireLayerAdded(layer);
-        if (layer instanceof OsmDataLayer || activeLayer == null) {
+        boolean callSetActiveLayer = layer instanceof OsmDataLayer || activeLayer == null;
+        if (callSetActiveLayer) {
             // autoselect the new layer
-            setActiveLayer(layer);
+            setActiveLayer(layer); // also repaints this MapView
         }
         layer.addPropertyChangeListener(this);
         Main.addProjectionChangeListener(layer);
         AudioPlayer.reset();
-        repaint();
+        if (!callSetActiveLayer) {
+            repaint();
+        }
     }
 
