Title: [264920] trunk/Source/WebKit
Revision
264920
Author
ape...@igalia.com
Date
2020-07-27 08:05:01 -0700 (Mon, 27 Jul 2020)

Log Message

[GTK] GeoclueGeolocationProvider uses very low accuracy setting (city) as default geolocation API
https://bugs.webkit.org/show_bug.cgi?id=214566

Reviewed by Carlos Garcia Campos.

No new tests needed.

* UIProcess/geoclue/GeoclueGeolocationProvider.cpp:
(WebKit::GeoclueGeolocationProvider::requestAccuracyLevel): Use
GeoclueAccuracySteetLevel when high accuracy was not requested.

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (264919 => 264920)


--- trunk/Source/WebKit/ChangeLog	2020-07-27 13:16:14 UTC (rev 264919)
+++ trunk/Source/WebKit/ChangeLog	2020-07-27 15:05:01 UTC (rev 264920)
@@ -1,3 +1,16 @@
+2020-07-27  Adrian Perez de Castro  <ape...@igalia.com>
+
+        [GTK] GeoclueGeolocationProvider uses very low accuracy setting (city) as default geolocation API
+        https://bugs.webkit.org/show_bug.cgi?id=214566
+
+        Reviewed by Carlos Garcia Campos.
+
+        No new tests needed.
+
+        * UIProcess/geoclue/GeoclueGeolocationProvider.cpp:
+        (WebKit::GeoclueGeolocationProvider::requestAccuracyLevel): Use
+        GeoclueAccuracySteetLevel when high accuracy was not requested.
+
 2020-07-27  Carlos Garcia Campos  <cgar...@igalia.com>
 
         [WPE][GTK] Add API to support "Privacy Report"

Modified: trunk/Source/WebKit/UIProcess/geoclue/GeoclueGeolocationProvider.cpp (264919 => 264920)


--- trunk/Source/WebKit/UIProcess/geoclue/GeoclueGeolocationProvider.cpp	2020-07-27 13:16:14 UTC (rev 264919)
+++ trunk/Source/WebKit/UIProcess/geoclue/GeoclueGeolocationProvider.cpp	2020-07-27 15:05:01 UTC (rev 264920)
@@ -232,8 +232,16 @@
     if (!m_client)
         return;
 
-    // GeoclueAccuracyLevelCity = 4, GeoclueAccuracyLevelExact = 8.
-    unsigned accuracy = m_isHighAccuracyEnabled ? 8 : 4;
+    // From https://bugs.webkit.org/show_bug.cgi?id=214566:
+    //
+    //   "Websites like OpenStreetMap or Google Maps do not use the
+    //    enableHighAccuracy position options for simple location, which
+    //    not very useful with only a city level of accuracy. They appear
+    //    to assume that at least a street level of accuracy could be given
+    //    without enabling a GPS on the device."
+    //
+    // GeoclueAccuracyLevelStreetLevel = 6, GeoclueAccuracyLevelExact = 8.
+    unsigned accuracy = m_isHighAccuracyEnabled ? 8 : 6;
     g_dbus_proxy_call(m_client.get(), "org.freedesktop.DBus.Properties.Set",
         g_variant_new("(ssv)", "org.freedesktop.GeoClue2.Client", "RequestedAccuracyLevel", g_variant_new_uint32(accuracy)),
         G_DBUS_CALL_FLAGS_NONE, -1, nullptr, nullptr, nullptr);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to