Index: /src/org/openstreetmap/josm/Main.java
===================================================================
--- /src/org/openstreetmap/josm/Main.java	(revision 210)
+++ /src/org/openstreetmap/josm/Main.java	(revision 211)
@@ -328,8 +328,12 @@
 			bounds = !args.containsKey("no-fullscreen") ? new Rectangle(0,0,screenDimension.width,screenDimension.height) : new Rectangle(1000,740);
 
-			pleaseWaitDlg = new PleaseWaitDialog();
+			// preinitialize a wait dialog for all early downloads (e.g. via command line)
+			pleaseWaitDlg = new PleaseWaitDialog(null);
 	}
 
 	public void postConstructorProcessCmdLine(Map<String, Collection<String>> args) {
+		// initialize the pleaseWaitDialog with the application as parent to handle focus stuff
+		pleaseWaitDlg = new PleaseWaitDialog(parent);
+
 		if (args.containsKey("download"))
 			for (String s : args.get("download"))
Index: /src/org/openstreetmap/josm/data/osm/visitor/SimplePaintVisitor.java
===================================================================
--- /src/org/openstreetmap/josm/data/osm/visitor/SimplePaintVisitor.java	(revision 210)
+++ /src/org/openstreetmap/josm/data/osm/visitor/SimplePaintVisitor.java	(revision 211)
@@ -98,5 +98,5 @@
 	 * Draw an number of the order of the segment within the parents way
 	 */
-	private void drawOrderNumber(Segment ls, int orderNumber) {
+	protected void drawOrderNumber(Segment ls, int orderNumber) {
 		int strlen = (""+orderNumber).length();
 		Point p1 = nc.getPoint(ls.from.eastNorth);
Index: /src/org/openstreetmap/josm/gui/PleaseWaitDialog.java
===================================================================
--- /src/org/openstreetmap/josm/gui/PleaseWaitDialog.java	(revision 210)
+++ /src/org/openstreetmap/josm/gui/PleaseWaitDialog.java	(revision 211)
@@ -1,4 +1,5 @@
 package org.openstreetmap.josm.gui;
 
+import java.awt.Component;
 import java.awt.GridBagLayout;
 
@@ -24,6 +25,6 @@
 	public final JButton cancel = new JButton(I18n.tr("Cancel"));
 
-	public PleaseWaitDialog() {
-		super(JOptionPane.getFrameForComponent(Main.parent), true);
+	public PleaseWaitDialog(Component parent) {
+		super(JOptionPane.getFrameForComponent(parent), true);
 		setLayout(new GridBagLayout());
 		JPanel pane = new JPanel(new GridBagLayout());
Index: /test/org/openstreetmap/josm/io/IncompleteDownloaderTest.java
===================================================================
--- /test/org/openstreetmap/josm/io/IncompleteDownloaderTest.java	(revision 210)
+++ /test/org/openstreetmap/josm/io/IncompleteDownloaderTest.java	(revision 211)
@@ -30,5 +30,5 @@
 		};
 
-		Main.pleaseWaitDlg = new PleaseWaitDialog();
+		Main.pleaseWaitDlg = new PleaseWaitDialog(null);
 
 		downloader.parse();
