Index: /trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java	(revision 11328)
+++ /trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java	(revision 11329)
@@ -25,5 +25,4 @@
 
 import org.openstreetmap.josm.Main;
-import org.openstreetmap.josm.actions.downloadtasks.DownloadGeoUrlTask;
 import org.openstreetmap.josm.actions.downloadtasks.DownloadGpsTask;
 import org.openstreetmap.josm.actions.downloadtasks.DownloadNotesTask;
@@ -75,5 +74,4 @@
         addDownloadTaskClass(DownloadOsmChangeTask.class);
         addDownloadTaskClass(DownloadOsmUrlTask.class);
-        addDownloadTaskClass(DownloadGeoUrlTask.class);
         addDownloadTaskClass(DownloadOsmIdTask.class);
         addDownloadTaskClass(DownloadOsmCompressedTask.class);
Index: unk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadGeoUrlTask.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadGeoUrlTask.java	(revision 11328)
+++ 	(revision )
@@ -1,30 +1,0 @@
-// License: GPL. For details, see LICENSE file.
-package org.openstreetmap.josm.actions.downloadtasks;
-
-import org.openstreetmap.josm.gui.progress.ProgressMonitor;
-import org.openstreetmap.josm.tools.GeoUrlToBounds;
-
-import java.util.concurrent.Future;
-
-import static org.openstreetmap.josm.tools.I18n.tr;
-
-/**
- * Task allowing to download a Geo URL (as specified in <a href="https://tools.ietf.org/html/rfc5870">RFC 5870</a>).
- */
-public class DownloadGeoUrlTask extends DownloadOsmTask {
-
-    @Override
-    public Future<?> loadUrl(boolean newLayer, String url, ProgressMonitor progressMonitor) {
-        return download(newLayer, GeoUrlToBounds.parse(url), null);
-    }
-
-    @Override
-    public String[] getPatterns() {
-        return new String[]{GeoUrlToBounds.PATTERN.toString()};
-    }
-
-    @Override
-    public String getTitle() {
-        return tr("Download Geo URL");
-    }
-}
Index: /trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmUrlTask.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmUrlTask.java	(revision 11328)
+++ /trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmUrlTask.java	(revision 11329)
@@ -7,4 +7,5 @@
 
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
+import org.openstreetmap.josm.tools.GeoUrlToBounds;
 import org.openstreetmap.josm.tools.OsmUrlToBounds;
 
@@ -24,5 +25,7 @@
         return new String[]{
                 "https?://www\\.(osm|openstreetmap)\\.org/\\?lat=.*&lon=.*",
-                "https?://www\\.(osm|openstreetmap)\\.org/(.*)?#map=\\p{Digit}+/.*/.*"};
+                "https?://www\\.(osm|openstreetmap)\\.org/(.*)?#map=\\p{Digit}+/.*/.*",
+                GeoUrlToBounds.PATTERN.toString(),
+        };
     }
 
Index: /trunk/src/org/openstreetmap/josm/tools/GeoUrlToBounds.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/GeoUrlToBounds.java	(revision 11328)
+++ /trunk/src/org/openstreetmap/josm/tools/GeoUrlToBounds.java	(revision 11329)
@@ -12,4 +12,6 @@
 /**
  * Parses a Geo URL (as specified in <a href="https://tools.ietf.org/html/rfc5870">RFC 5870</a>) into {@link Bounds}.
+ *
+ * Note that Geo URLs are also handled by {@link OsmUrlToBounds}.
  */
 public final class GeoUrlToBounds {
Index: /trunk/src/org/openstreetmap/josm/tools/OsmUrlToBounds.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/OsmUrlToBounds.java	(revision 11328)
+++ /trunk/src/org/openstreetmap/josm/tools/OsmUrlToBounds.java	(revision 11329)
@@ -17,4 +17,7 @@
 import org.openstreetmap.josm.gui.util.GuiHelper;
 
+/**
+ * Parses various URL used in OpenStreetMap projects into {@link Bounds}.
+ */
 public final class OsmUrlToBounds {
     private static final String SHORTLINK_PREFIX = "http://osm.org/go/";
@@ -24,5 +27,13 @@
     }
 
+    /**
+     * Parses an URL into {@link Bounds}
+     * @param url the URL to be parsed
+     * @return the parsed {@link Bounds}, or {@code null}
+     */
     public static Bounds parse(String url) {
+        if (url.startsWith("geo:")) {
+            return GeoUrlToBounds.parse(url);
+        }
         try {
             // a percent sign indicates an encoded URL (RFC 1738).
Index: /trunk/test/unit/org/openstreetmap/josm/tools/OsmUrlToBoundsTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/tools/OsmUrlToBoundsTest.java	(revision 11328)
+++ /trunk/test/unit/org/openstreetmap/josm/tools/OsmUrlToBoundsTest.java	(revision 11329)
@@ -39,4 +39,6 @@
     private static final ParseTestItem[] parseTestData = {
         new ParseTestItem("https://www.openstreetmap.org", null),
+        new ParseTestItem("geo:12.34,56.78?z=9",
+                OsmUrlToBounds.positionToBounds(12.34, 56.78, 9)),
         new ParseTestItem("https://www.openstreetmap.org/?bbox=-0.489,51.28,0.236,51.686",
                 new Bounds(51.28, -0.489, 51.686, 0.236)),
