Index: chrome/android/java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationHeader.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationHeader.java b/chrome/android/java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationHeader.java |
index 92cf5214c004de00de1b3144d8e11195dbc46a9c..6b5a33fc471a50cd720ce9c6177ac0d6419e3bb0 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationHeader.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omnibox/geo/GeolocationHeader.java |
@@ -22,8 +22,10 @@ import org.chromium.base.Log; |
import org.chromium.base.annotations.CalledByNative; |
import org.chromium.base.annotations.SuppressFBWarnings; |
import org.chromium.base.metrics.RecordHistogram; |
+import org.chromium.chrome.browser.ChromeFeatureList; |
import org.chromium.chrome.browser.preferences.website.ContentSetting; |
import org.chromium.chrome.browser.preferences.website.GeolocationInfo; |
+import org.chromium.chrome.browser.preferences.website.WebsitePreferenceBridge; |
import org.chromium.chrome.browser.tab.Tab; |
import org.chromium.chrome.browser.util.UrlUtilities; |
@@ -354,7 +356,14 @@ public class GeolocationHeader { |
* scheme, this considers the user's preference for url with the http scheme instead. |
*/ |
static boolean isLocationDisabledForUrl(Uri uri, boolean isIncognito) { |
- return locationContentSettingForUrl(uri, isIncognito) == ContentSetting.BLOCK; |
+ if (ChromeFeatureList.isEnabled(ChromeFeatureList.CONSISTENT_OMNIBOX_GEOLOCATION)) { |
+ boolean disabled = !WebsitePreferenceBridge.nativeShouldUseDSEGeolocationSetting( |
+ uri.toString(), isIncognito) |
+ || !WebsitePreferenceBridge.nativeGetDSEGeolocationSetting(); |
+ return disabled; |
raymes
2017/01/09 05:47:26
Hmm, the intended logic here is a little unclear.
benwells
2017/01/09 21:02:21
Done.
|
+ } else { |
+ return locationContentSettingForUrl(uri, isIncognito) == ContentSetting.BLOCK; |
+ } |
} |
/** |