Index: trunk/src/org/openstreetmap/josm/actions/UpdateDataAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/UpdateDataAction.java	(revision 6040)
+++ trunk/src/org/openstreetmap/josm/actions/UpdateDataAction.java	(revision 6046)
@@ -44,4 +44,5 @@
     }
 
+    @Override
     public void actionPerformed(ActionEvent e) {
         if (! isEnabled())
@@ -83,5 +84,5 @@
             // using a series of multi fetch requests
             //
-            new UpdateSelectionAction().updatePrimitives(getEditLayer().data.allPrimitives());
+            UpdateSelectionAction.updatePrimitives(getEditLayer().data.allPrimitives());
         } else {
             // bounds defined? => use the bbox downloader
@@ -91,4 +92,5 @@
             Main.worker.submit(
                     new Runnable() {
+                        @Override
                         public void run() {
                             try {
Index: trunk/src/org/openstreetmap/josm/actions/UpdateSelectionAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/UpdateSelectionAction.java	(revision 6040)
+++ trunk/src/org/openstreetmap/josm/actions/UpdateSelectionAction.java	(revision 6046)
@@ -35,5 +35,5 @@
      * @param id the primitive id
      */
-    public void handlePrimitiveGoneException(long id, OsmPrimitiveType type) {
+    public static void handlePrimitiveGoneException(long id, OsmPrimitiveType type) {
         MultiFetchServerObjectReader reader = new MultiFetchServerObjectReader();
         reader.append(getCurrentDataSet(),id, type);
@@ -53,5 +53,5 @@
      *
      */
-    public void updatePrimitives(final Collection<OsmPrimitive> selection) {
+    public static void updatePrimitives(final Collection<OsmPrimitive> selection) {
         UpdatePrimitivesTask task = new UpdatePrimitivesTask(Main.main.getEditLayer(),selection);
         Main.worker.submit(task);
@@ -69,5 +69,5 @@
      *
      */
-    public void updatePrimitive(PrimitiveId id) throws IllegalStateException, IllegalArgumentException{
+    public static void updatePrimitive(PrimitiveId id) throws IllegalStateException, IllegalArgumentException{
         ensureParameterNotNull(id, "id");
         if (getEditLayer() == null)
@@ -114,9 +114,10 @@
      * action handler
      */
+    @Override
     public void actionPerformed(ActionEvent e) {
         if (! isEnabled())
             return;
         Collection<OsmPrimitive> toUpdate =getData();
-        if (toUpdate.size() == 0) {
+        if (toUpdate.isEmpty()) {
             JOptionPane.showMessageDialog(
                     Main.parent,
Index: trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmTaskList.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmTaskList.java	(revision 6040)
+++ trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmTaskList.java	(revision 6046)
@@ -19,5 +19,4 @@
 
 import javax.swing.JOptionPane;
-import javax.swing.SwingUtilities;
 
 import org.openstreetmap.josm.Main;
@@ -32,4 +31,5 @@
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
 import org.openstreetmap.josm.gui.progress.ProgressMonitor.CancelListener;
+import org.openstreetmap.josm.gui.util.GuiHelper;
 import org.openstreetmap.josm.tools.ExceptionUtil;
 import org.openstreetmap.josm.tools.ImageProvider;
@@ -74,4 +74,5 @@
         }
         progressMonitor.addCancelListener(new CancelListener() {
+            @Override
             public void operationCanceled() {
                 for (DownloadTask dt : osmTasks) {
@@ -134,6 +135,6 @@
         }
         EventQueue.invokeLater(new Runnable() {
-            public void run() {
-                new UpdateSelectionAction().updatePrimitives(toSelect);
+            @Override public void run() {
+                UpdateSelectionAction.updatePrimitives(toSelect);
             }
         });
@@ -217,4 +218,5 @@
          * Grabs and displays the error messages after all download threads have finished.
          */
+        @Override
         public void run() {
             progressMonitor.finishTask();
@@ -247,5 +249,5 @@
                 sb.append("</ul>");
 
-                SwingUtilities.invokeLater(new Runnable() {
+                GuiHelper.runInEDT(new Runnable() {
                     @Override
                     public void run() {
@@ -272,5 +274,5 @@
             final OsmDataLayer editLayer = Main.map.mapView.getEditLayer();
             if (editLayer != null) {
-                Set<OsmPrimitive> myPrimitives = getCompletePrimitives(editLayer.data);
+                final Set<OsmPrimitive> myPrimitives = getCompletePrimitives(editLayer.data);
                 for (DownloadTask task : osmTasks) {
                     if (task instanceof DownloadOsmTask) {
@@ -285,5 +287,9 @@
                 }
                 if (!myPrimitives.isEmpty()) {
-                    handlePotentiallyDeletedPrimitives(myPrimitives);
+                    GuiHelper.runInEDT(new Runnable() {
+                        @Override public void run() {
+                            handlePotentiallyDeletedPrimitives(myPrimitives);
+                        }
+                    });
                 }
             }
