diff --git a/HouseNumberTaggingTool/src/org/openstreetmap/josm/plugins/housenumbertool/LaunchAction.java b/HouseNumberTaggingTool/src/org/openstreetmap/josm/plugins/housenumbertool/LaunchAction.java
index 400aa9ffe..44b091941 100644
--- a/HouseNumberTaggingTool/src/org/openstreetmap/josm/plugins/housenumbertool/LaunchAction.java
+++ b/HouseNumberTaggingTool/src/org/openstreetmap/josm/plugins/housenumbertool/LaunchAction.java
@@ -8,10 +8,13 @@ import java.awt.event.KeyEvent;
 import java.io.File;
 import java.util.Set;
 
+import javax.swing.JFrame;
+
 import org.openstreetmap.josm.actions.JosmAction;
 import org.openstreetmap.josm.data.osm.DataSelectionListener;
 import org.openstreetmap.josm.data.osm.OsmPrimitive;
 import org.openstreetmap.josm.data.osm.event.SelectionEventManager;
+import org.openstreetmap.josm.gui.MainApplication;
 import org.openstreetmap.josm.tools.Shortcut;
 
 /**
@@ -66,6 +69,16 @@ public class LaunchAction extends JosmAction implements DataSelectionListener {
       
         TagDialog dialog = new TagDialog(pluginDir, selection, switchIncrement);
         dialog.showDialog();
+
+        // give the focus back to JOSM
+        JFrame mainFrame = MainApplication.getMainFrame();
+        if (mainFrame != null) {
+            mainFrame.toFront();
+            mainFrame.requestFocus();
+        }
+        if (MainApplication.isDisplayingMapView()) {
+            MainApplication.getMap().mapView.requestFocusInWindow();
+        }
     }
 
     @Override
diff --git a/HouseNumberTaggingTool/src/org/openstreetmap/josm/plugins/housenumbertool/TagDialog.java b/HouseNumberTaggingTool/src/org/openstreetmap/josm/plugins/housenumbertool/TagDialog.java
index 917a44c58..379432c55 100644
--- a/HouseNumberTaggingTool/src/org/openstreetmap/josm/plugins/housenumbertool/TagDialog.java
+++ b/HouseNumberTaggingTool/src/org/openstreetmap/josm/plugins/housenumbertool/TagDialog.java
@@ -147,8 +147,8 @@ public class TagDialog extends ExtendedDialog {
         setupDialog();
         getRootPane().setDefaultButton(defaultButton);
 
-        // middle of the screen
-        setLocationRelativeTo(null);
+        // center on the JOSM main window
+        setLocationRelativeTo(MainApplication.getMainFrame());
 
         SwingUtilities.invokeLater(() -> {
             housenumber.requestFocus();
