Index: trunk/src/org/openstreetmap/josm/actions/mapmode/SelectAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/mapmode/SelectAction.java	(revision 3185)
+++ trunk/src/org/openstreetmap/josm/actions/mapmode/SelectAction.java	(revision 3186)
@@ -78,7 +78,6 @@
     private boolean didMove = false;
     private boolean cancelDrawMode = false;
-    Node virtualNode = null;
-    Collection<WaySegment> virtualWays = new ArrayList<WaySegment>();
-    SequenceCommand virtualCmds = null;
+    private Node virtualNode = null;
+    private Collection<WaySegment> virtualWays = new ArrayList<WaySegment>();
 
     /**
@@ -203,5 +202,5 @@
             Collection<Command> virtualCmds = new LinkedList<Command>();
             virtualCmds.add(new AddCommand(virtualNode));
-            for(WaySegment virtualWay : virtualWays) {
+            for (WaySegment virtualWay : virtualWays) {
                 Way w = virtualWay.way;
                 Way wnew = new Way(w);
@@ -213,5 +212,5 @@
                     "Add and move a virtual new node to {0} ways", virtualWays.size(),
                     virtualWays.size());
-
+            System.err.println("Select Action/mouseDragged "+ Thread.currentThread().getName());
             Main.main.undoRedo.add(new SequenceCommand(text, virtualCmds));
             selectPrims(Collections.singleton((OsmPrimitive)virtualNode), false, false, false, false);
@@ -326,4 +325,5 @@
                             virtualWays.add(nearestWS);
                             if(virtualNode == null) {
+                                System.err.println("Select Action/getNearestCollectionVirtual "+ Thread.currentThread().getName());
                                 virtualNode = new Node(Main.map.mapView.getLatLon(pc.x, pc.y));
                             }
Index: trunk/src/org/openstreetmap/josm/command/MoveCommand.java
===================================================================
--- trunk/src/org/openstreetmap/josm/command/MoveCommand.java	(revision 3185)
+++ trunk/src/org/openstreetmap/josm/command/MoveCommand.java	(revision 3186)
@@ -91,9 +91,10 @@
     @Override public boolean executeCommand() {
         for (Node n : nodes) {
+            System.err.println("MoveCommand "+ Thread.currentThread().getName());
             // in case #3892 happens again
             if (n == null)
                 throw new AssertionError("null detected in node list");
             if (n.getEastNorth() == null)
-                throw new AssertionError("unexpected null value for n.getEastNorth(). id of n is" + n.getUniqueId());
+                throw new AssertionError("unexpected null value for n.getEastNorth(). id of n is " + n.getUniqueId());
 
             n.setEastNorth(n.getEastNorth().add(x, y));
Index: trunk/src/org/openstreetmap/josm/data/osm/DataSet.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/DataSet.java	(revision 3185)
+++ trunk/src/org/openstreetmap/josm/data/osm/DataSet.java	(revision 3186)
@@ -768,4 +768,5 @@
         nodes.remove(node);
         node.setCoorInternal(newCoor);
+//        System.err.println("DataSet/reindexNode "+ Thread.currentThread().getName());
         nodes.add(node);
         for (OsmPrimitive primitive: node.getReferrers()) {
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/ToggleDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/ToggleDialog.java	(revision 3185)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/ToggleDialog.java	(revision 3186)
@@ -44,5 +44,4 @@
  * This class is a toggle dialog that can be turned on and off.
  *
- *
  */
 public class ToggleDialog extends JPanel implements Helpful {
@@ -147,5 +146,4 @@
                 hideDialog();
                 dialogsPanel.reconstruct(Action.ELEMENT_SHRINKS, null);
-                hideNotify();
             } else {
                 showDialog();
@@ -156,5 +154,4 @@
                     dialogsPanel.reconstruct(Action.INVISIBLE_TO_DEFAULT, ToggleDialog.this);
                 }
-                showNotify();
             }
         }
@@ -181,4 +178,5 @@
         toggleAction.putValue("selected", false);
         toggleAction.putValue("selected", true);
+        showNotify();
     }
 
@@ -213,4 +211,5 @@
         setIsShowing(false);
         toggleAction.putValue("selected", false);
+        hideNotify();
     }
 
@@ -394,5 +393,4 @@
                             hideDialog();
                             dialogsPanel.reconstruct(Action.ELEMENT_SHRINKS, null);
-                            hideNotify();
                         }
                     }
@@ -434,5 +432,4 @@
                     } else {
                         hideDialog();
-                        hideNotify();
                     }
                 }
