Index: trunk/src/org/openstreetmap/josm/gui/mappaint/ElemStyles.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/mappaint/ElemStyles.java	(revision 4054)
+++ trunk/src/org/openstreetmap/josm/gui/mappaint/ElemStyles.java	(revision 4055)
@@ -73,5 +73,5 @@
             if (!hasProperLineStyle) {
                 AreaElemStyle area = Utils.find(p.a, AreaElemStyle.class);
-                LineElemStyle line = (area == null ? LineElemStyle.UNTAGGED_WAY : LineElemStyle.createSimpleLineStyle(area.color));
+                LineElemStyle line = (area == null ? LineElemStyle.UNTAGGED_WAY : LineElemStyle.createSimpleLineStyle(area.color, true));
                 p.a = new StyleList(p.a, line);
             }
@@ -152,5 +152,5 @@
                 }
                 if (!hasLineStyle) {
-                    p.a = new StyleList(p.a, LineElemStyle.createSimpleLineStyle(wayColor));
+                    p.a = new StyleList(p.a, LineElemStyle.createSimpleLineStyle(wayColor, true));
                 }
                 return p;
@@ -183,5 +183,5 @@
                             }
                         }
-                        p.a = new StyleList(p.a, LineElemStyle.createSimpleLineStyle(mpColor));
+                        p.a = new StyleList(p.a, LineElemStyle.createSimpleLineStyle(mpColor, true));
                     }
                     return p;
Index: trunk/src/org/openstreetmap/josm/gui/mappaint/LineElemStyle.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/mappaint/LineElemStyle.java	(revision 4054)
+++ trunk/src/org/openstreetmap/josm/gui/mappaint/LineElemStyle.java	(revision 4055)
@@ -18,12 +18,15 @@
 public class LineElemStyle extends ElemStyle {
 
-    public static LineElemStyle createSimpleLineStyle(Color color) {
+    public static LineElemStyle createSimpleLineStyle(Color color, boolean isAreaEdge) {
         MultiCascade mc = new MultiCascade();
         Cascade c = mc.getOrCreateCascade("default");
         c.put("width", Keyword.DEFAULT);
         c.put("color", color != null ? color : PaintColors.UNTAGGED.get());
+        if (isAreaEdge) {
+            c.put("z-index", -3f);
+        }
         return createLine(new Environment(null, mc, "default", null));
     }
-    public static final LineElemStyle UNTAGGED_WAY = createSimpleLineStyle(null);
+    public static final LineElemStyle UNTAGGED_WAY = createSimpleLineStyle(null, false);
 
     private BasicStroke line;
