Index: trunk/src/org/openstreetmap/josm/gui/dialogs/ConflictDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/ConflictDialog.java	(revision 2879)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/ConflictDialog.java	(revision 2880)
@@ -46,5 +46,4 @@
 import org.openstreetmap.josm.gui.OsmPrimitivRenderer;
 import org.openstreetmap.josm.gui.SideButton;
-import org.openstreetmap.josm.gui.layer.Layer;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer;
 import org.openstreetmap.josm.tools.ImageProvider;
@@ -56,5 +55,5 @@
  *
  */
-public final class ConflictDialog extends ToggleDialog implements MapView.LayerChangeListener, IConflictListener, SelectionChangedListener{
+public final class ConflictDialog extends ToggleDialog implements MapView.EditLayerChangeListener, IConflictListener, SelectionChangedListener{
 
     static public Color getColor() {
@@ -72,6 +71,4 @@
     private ResolveAction actResolve;
     private SelectAction actSelect;
-
-    private OsmDataLayer layer = null;
 
     /**
@@ -125,10 +122,11 @@
     public void showNotify() {
         DataSet.selListeners.add(this);
-        MapView.addLayerChangeListener(this);
+        MapView.addEditLayerChangeListener(this);
+        refreshView();
     }
 
     @Override
     public void hideNotify() {
-        MapView.removeLayerChangeListener(this);
+        MapView.removeEditLayerChangeListener(this);
         DataSet.selListeners.remove(this);
     }
@@ -164,4 +162,6 @@
      */
     public final void refreshView() {
+        OsmDataLayer editLayer =  Main.main.getEditLayer();
+        conflicts = editLayer == null?new ConflictCollection():editLayer.getConflicts();
         model.fireContentChanged();
     }
@@ -210,4 +210,15 @@
     }
 
+    public void editLayerChanged(OsmDataLayer oldLayer, OsmDataLayer newLayer) {
+        if (oldLayer != null) {
+            oldLayer.getConflicts().removeConflictListener(this);
+        }
+        if (newLayer != null) {
+            newLayer.getConflicts().addConflictListener(this);
+        }
+        refreshView();
+    }
+
+
     /**
      * replies the conflict collection currently held by this dialog; may be null
@@ -217,32 +228,4 @@
     public ConflictCollection getConflicts() {
         return conflicts;
-    }
-
-    /**
-     * invoked if the active {@see Layer} changes
-     */
-    public void activeLayerChange(Layer oldLayer, Layer newLayer) {
-        if (oldLayer instanceof OsmDataLayer) {
-            this.layer = (OsmDataLayer)oldLayer;
-            this.layer.getConflicts().removeConflictListener(this);
-        }
-        this.layer = null;
-        if (newLayer instanceof OsmDataLayer) {
-            this.layer = (OsmDataLayer)newLayer;
-            layer.getConflicts().addConflictListener(this);
-            this.conflicts = layer.getConflicts();
-        }
-        refreshView();
-    }
-
-    public void layerAdded(Layer newLayer) {
-        // ignore
-    }
-
-    public void layerRemoved(Layer oldLayer) {
-        if (this.layer == oldLayer) {
-            this.layer = null;
-            refreshView();
-        }
     }
 
@@ -376,3 +359,4 @@
         }
     }
+
 }
