Index: applications/editors/josm/plugins/waydownloader/src/org/openstreetmap/josm/plugins/waydownloader/WayDownloaderPlugin.java
===================================================================
--- applications/editors/josm/plugins/waydownloader/src/org/openstreetmap/josm/plugins/waydownloader/WayDownloaderPlugin.java	(revision 30664)
+++ applications/editors/josm/plugins/waydownloader/src/org/openstreetmap/josm/plugins/waydownloader/WayDownloaderPlugin.java	(revision 30693)
@@ -21,4 +21,5 @@
 import org.openstreetmap.josm.data.Bounds;
 import org.openstreetmap.josm.data.DataSource;
+import org.openstreetmap.josm.data.coor.LatLon;
 import org.openstreetmap.josm.data.osm.DataSet;
 import org.openstreetmap.josm.data.osm.Node;
@@ -27,4 +28,5 @@
 import org.openstreetmap.josm.gui.DefaultNameFormatter;
 import org.openstreetmap.josm.gui.MainMenu;
+import org.openstreetmap.josm.gui.Notification;
 import org.openstreetmap.josm.gui.progress.PleaseWaitProgressMonitor;
 import org.openstreetmap.josm.gui.util.GuiHelper;
@@ -100,11 +102,12 @@
             DownloadOsmTask downloadTask = new DownloadOsmTask();
             final PleaseWaitProgressMonitor monitor = new PleaseWaitProgressMonitor();
+            LatLon ll = selectedNode.getCoor();
             final Future<?> future = downloadTask.download(
                     false /* no new layer */,
                     new Bounds(
-                            selectedNode.getCoor().lat()- latbuffer,
-                            selectedNode.getCoor().lon()- lonbuffer,
-                            selectedNode.getCoor().lat()+ latbuffer,
-                            selectedNode.getCoor().lon()+ lonbuffer
+                            ll.lat()- latbuffer,
+                            ll.lon()- lonbuffer,
+                            ll.lat()+ latbuffer,
+                            ll.lon()+ lonbuffer
                     ),
                     monitor
@@ -119,5 +122,5 @@
                                 future.get();
                             } catch(Exception e) {
-                                e.printStackTrace();
+                                Main.error(e);
                                 return;
                             }
@@ -143,5 +146,4 @@
                                 priorConnectedWay.getDisplayName(DefaultNameFormatter.getInstance())
                         );
-                System.err.println(msg);
                 showErrorMessage(msg);
                 return;
@@ -301,13 +303,11 @@
     private static void showWarningMessage(final String msg) {
         if (msg != null) {
-            GuiHelper.runInEDTAndWait(new Runnable() {
+            Main.warn(msg.replace("<html>", "").replace("</html>", ""));
+            GuiHelper.runInEDT(new Runnable() {
                 @Override
                 public void run() {
-                    JOptionPane.showMessageDialog(
-                            Main.parent,
-                            msg,
-                            tr("Warning"),
-                            JOptionPane.WARNING_MESSAGE
-                        );
+                    new Notification(msg)
+                    .setIcon(JOptionPane.WARNING_MESSAGE)
+                    .show();
                 }
             });
@@ -317,13 +317,11 @@
     private static void showErrorMessage(final String msg) {
         if (msg != null) {
-            GuiHelper.runInEDTAndWait(new Runnable() {
+            Main.error(msg.replace("<html>", "").replace("</html>", ""));
+            GuiHelper.runInEDT(new Runnable() {
                 @Override
                 public void run() {
-                    JOptionPane.showMessageDialog(
-                            Main.parent,
-                            msg,
-                            tr("Error"),
-                            JOptionPane.ERROR_MESSAGE
-                        );
+                    new Notification(msg)
+                    .setIcon(JOptionPane.ERROR_MESSAGE)
+                    .show();
                 }
             });
@@ -333,13 +331,12 @@
     private static void showInfoMessage(final String msg) {
         if (msg != null) {
-            GuiHelper.runInEDTAndWait(new Runnable() {
+            Main.info(msg.replace("<html>", "").replace("</html>", ""));
+            GuiHelper.runInEDT(new Runnable() {
                 @Override
                 public void run() {
-                    JOptionPane.showMessageDialog(
-                            Main.parent,
-                            msg,
-                            tr("Information"),
-                            JOptionPane.INFORMATION_MESSAGE
-                        );
+                    new Notification(msg)
+                    .setIcon(JOptionPane.INFORMATION_MESSAGE)
+                    .setDuration(Notification.TIME_SHORT)
+                    .show();
                 }
             });
