From 972cefb074b2406ec91467e35404a3aed7cdcaca Mon Sep 17 00:00:00 2001 From: Alexander Borsuk Date: Sun, 6 Jul 2025 01:38:28 +0200 Subject: [PATCH] Open in another app generates geo: URI with a q= query compatible with Google Maps Signed-off-by: Alexander Borsuk --- ge0/ge0_tests/url_generator_tests.cpp | 2 +- ge0/url_generator.cpp | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/ge0/ge0_tests/url_generator_tests.cpp b/ge0/ge0_tests/url_generator_tests.cpp index b9ce0fb8c..a758ece15 100644 --- a/ge0/ge0_tests/url_generator_tests.cpp +++ b/ge0/ge0_tests/url_generator_tests.cpp @@ -345,7 +345,7 @@ UNIT_TEST(GenerateShortShowMapUrl_UnicodeMixedWithOtherChars) UNIT_TEST(GenerateGeoUri_SmokeTest) { string res = GenerateGeoUri(33.8904075, 35.5066454, 16.5, "Falafel M. Sahyoun"); - TEST_EQUAL("geo:33.8904075,35.5066454?z=16.5(Falafel%20M.%20Sahyoun)", res, ()); + TEST_EQUAL("geo:33.8904075,35.5066454?z=16.5&q=33.8904075,35.5066454(Falafel%20M.%20Sahyoun)", res, ()); // geo:33.8904075,35.5066454?z=16.5(Falafel%20M.%20Sahyoun) // geo:33.890408,35.506645?z=16.5(Falafel%20M.%20Sahyoun) diff --git a/ge0/url_generator.cpp b/ge0/url_generator.cpp index 5c57181a1..673a09169 100644 --- a/ge0/url_generator.cpp +++ b/ge0/url_generator.cpp @@ -107,6 +107,8 @@ std::string GenerateGeoUri(double lat, double lon, double zoom, std::string cons { std::ostringstream oss; oss << "geo:" << std::fixed << std::setprecision(7) << lat << ',' << lon << "?z=" << std::setprecision(1) << zoom; + // For Google Maps compatibility, otherwise it doesn't select the point on the map, only shows the area. + oss << "&q=" << std::setprecision(7) << lat << ',' << lon; if (!name.empty()) oss << '(' << url::UrlEncode(name) << ')';