Index: trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java (revision 11326)
+++ 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: trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadGeoUrlTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadGeoUrlTask.java (revision 11326)
+++ (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 RFC 5870).
- */
-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 11326)
+++ 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 11326)
+++ trunk/src/org/openstreetmap/josm/tools/GeoUrlToBounds.java (revision 11329)
@@ -12,4 +12,6 @@
/**
* Parses a Geo URL (as specified in RFC 5870) 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 11326)
+++ 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).