From: srowen Date: Mon, 17 Mar 2008 16:50:03 +0000 (+0000) Subject: Nope, disable link from geo: URL to Google Maps. Does not quite work in the browser... X-Git-Url: http://git.rot13.org/?a=commitdiff_plain;h=96b9f5c5b984867358d1ba7af8a8f8ab3d716f10;p=zxing.git Nope, disable link from geo: URL to Google Maps. Does not quite work in the browser yet. git-svn-id: http://zxing.googlecode.com/svn/trunk@287 59b500cc-1b3d-0410-9834-0bbf25fbcc57 --- diff --git a/android/src/com/google/zxing/client/android/ResultHandler.java b/android/src/com/google/zxing/client/android/ResultHandler.java index b1bde8bc..06643756 100755 --- a/android/src/com/google/zxing/client/android/ResultHandler.java +++ b/android/src/com/google/zxing/client/android/ResultHandler.java @@ -26,7 +26,6 @@ import com.google.zxing.client.result.AddressBookDoCoMoResult; import com.google.zxing.client.result.BookmarkDoCoMoResult; import com.google.zxing.client.result.EmailAddressResult; import com.google.zxing.client.result.EmailDoCoMoResult; -import com.google.zxing.client.result.GeoParsedResult; import com.google.zxing.client.result.ParsedReaderResult; import com.google.zxing.client.result.ParsedReaderResultType; import com.google.zxing.client.result.UPCParsedResult; @@ -104,13 +103,15 @@ final class ResultHandler extends Handler { } catch (URISyntaxException e) { return; } - } else if (type.equals(ParsedReaderResultType.GEO)) { - GeoParsedResult geoResult = (GeoParsedResult) result; - try { - intent = new Intent(Intent.SENDTO_ACTION, new ContentURI(geoResult.getGoogleMapsURI())); - } catch (URISyntaxException e) { - return; - } + //} else if (type.equals(ParsedReaderResultType.GEO)) { + // GeoParsedResult geoResult = (GeoParsedResult) result; + // try { + // intent = new Intent(Intent.VIEW_ACTION, new ContentURI(geoResult.getGoogleMapsURI())); + // // or can we send the raw geo: URI to Android? maybe it'll open Maps? + // // or just open a MapView + // } catch (URISyntaxException e) { + // return; + // } } else if (type.equals(ParsedReaderResultType.UPC)) { UPCParsedResult upcResult = (UPCParsedResult) result; try { diff --git a/core/src/com/google/zxing/client/result/GeoParsedResult.java b/core/src/com/google/zxing/client/result/GeoParsedResult.java index 1f68835a..297c2d79 100644 --- a/core/src/com/google/zxing/client/result/GeoParsedResult.java +++ b/core/src/com/google/zxing/client/result/GeoParsedResult.java @@ -28,12 +28,14 @@ import com.google.zxing.Result; */ public final class GeoParsedResult extends ParsedReaderResult { + private final String geoURI; private final float latitude; private final float longitude; private final float altitude; - private GeoParsedResult(float latitude, float longitude, float altitude) { + private GeoParsedResult(String geoURI, float latitude, float longitude, float altitude) { super(ParsedReaderResultType.GEO); + this.geoURI = geoURI; this.latitude = latitude; this.longitude = longitude; this.altitude = altitude; @@ -66,7 +68,11 @@ public final class GeoParsedResult extends ParsedReaderResult { longitude = Float.parseFloat(rawText.substring(latitudeEnd + 1, longitudeEnd)); altitude = Float.parseFloat(rawText.substring(longitudeEnd + 1)); } - return new GeoParsedResult(latitude, longitude, altitude); + return new GeoParsedResult(rawText, latitude, longitude, altitude); + } + + public String getGeoURI() { + return geoURI; } /** @@ -93,9 +99,9 @@ public final class GeoParsedResult extends ParsedReaderResult { public String getDisplayResult() { StringBuffer result = new StringBuffer(50); result.append(latitude); - result.append("deg N, "); + result.append(" deg N, "); result.append(longitude); - result.append("deg E"); + result.append(" deg E"); if (altitude > 0.0f) { result.append(", "); result.append(altitude); diff --git a/javame/src/com/google/zxing/client/j2me/ZXingMIDlet.java b/javame/src/com/google/zxing/client/j2me/ZXingMIDlet.java index 1073547e..0d074483 100644 --- a/javame/src/com/google/zxing/client/j2me/ZXingMIDlet.java +++ b/javame/src/com/google/zxing/client/j2me/ZXingMIDlet.java @@ -20,7 +20,6 @@ import com.google.zxing.Result; import com.google.zxing.client.result.BookmarkDoCoMoResult; import com.google.zxing.client.result.EmailAddressResult; import com.google.zxing.client.result.EmailDoCoMoResult; -import com.google.zxing.client.result.GeoParsedResult; import com.google.zxing.client.result.ParsedReaderResult; import com.google.zxing.client.result.ParsedReaderResultType; import com.google.zxing.client.result.UPCParsedResult; @@ -208,9 +207,9 @@ public final class ZXingMIDlet extends MIDlet { } else if (type.equals(ParsedReaderResultType.EMAIL_ADDRESS)) { String email = ((EmailAddressResult) result).getEmailAddress(); showOpenURL("Compose E-mail?", email, "mailto:" + email); - } else if (type.equals(ParsedReaderResultType.GEO)) { - GeoParsedResult geoResult = (GeoParsedResult) result; - showOpenURL("Open In Google Maps?", geoResult.getDisplayResult(), geoResult.getGoogleMapsURI()); + //} else if (type.equals(ParsedReaderResultType.GEO)) { + // GeoParsedResult geoResult = (GeoParsedResult) result; + // showOpenURL("Open In Google Maps?", geoResult.getDisplayResult(), geoResult.getGoogleMapsURI()); } else if (type.equals(ParsedReaderResultType.UPC)) { String upc = ((UPCParsedResult) result).getUPC(); String uri = "http://www.upcdatabase.com/item.asp?upc=" + upc;