summaryrefslogtreecommitdiffstats
path: root/chrome/browser/android/location_settings.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/android/location_settings.h')
-rw-r--r--chrome/browser/android/location_settings.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/chrome/browser/android/location_settings.h b/chrome/browser/android/location_settings.h
index 810e43f..5d7fa7e 100644
--- a/chrome/browser/android/location_settings.h
+++ b/chrome/browser/android/location_settings.h
@@ -7,14 +7,22 @@
#include "base/macros.h"
+namespace content {
+class WebContents;
+}
+
// This class determines whether Chrome can access the device's location,
// i.e. whether location is enabled system-wide on the device.
class LocationSettings {
public:
virtual ~LocationSettings() {}
- // Returns true if location is enabled system-wide (in Android settings).
- virtual bool IsLocationEnabled() = 0;
+ // Returns true if:
+ // - Location is enabled system-wide (in Android settings)
+ // - The necessary location permission are granted to Chrome, or if Chrome
+ // still has the ability to request the permissions to be granted.
+ virtual bool CanSitesRequestLocationPermission(
+ content::WebContents* web_contents) = 0;
};
#endif // CHROME_BROWSER_ANDROID_LOCATION_SETTINGS_H_