Index: /trunk/src/org/openstreetmap/josm/gui/MapView.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/MapView.java	(revision 988)
+++ /trunk/src/org/openstreetmap/josm/gui/MapView.java	(revision 989)
@@ -164,6 +164,8 @@
 		if (layer instanceof MarkerLayer && playHeadMarker == null)
 			playHeadMarker = PlayHeadMarker.create();
-		
-		layers.add(layers.size(), layer);
+		int pos = layers.size();
+		while(pos > 0 && layers.get(pos-1).background)
+			--pos;
+		layers.add(pos, layer);
 
 		// TODO: Deprecated
Index: /trunk/src/org/openstreetmap/josm/gui/layer/Layer.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/Layer.java	(revision 988)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/Layer.java	(revision 989)
@@ -52,4 +52,10 @@
 	 */
 	public boolean visible = true;
+
+	/**
+	 * The layer should be handled as a background layer in automatic handling
+	 */
+	public boolean background = false;
+
 	/**
 	 * The name of this layer.
