summaryrefslogtreecommitdiff
path: root/chromium/components/permissions/permissions_client.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/components/permissions/permissions_client.h')
-rw-r--r--chromium/components/permissions/permissions_client.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/chromium/components/permissions/permissions_client.h b/chromium/components/permissions/permissions_client.h
index 1becc45542a..96744c3f5a0 100644
--- a/chromium/components/permissions/permissions_client.h
+++ b/chromium/components/permissions/permissions_client.h
@@ -23,6 +23,10 @@ class BrowserContext;
class WebContents;
} // namespace content
+namespace content_settings {
+class CookieSettings;
+}
+
namespace infobars {
class InfoBar;
class InfoBarManager;
@@ -53,6 +57,10 @@ class PermissionsClient {
virtual HostContentSettingsMap* GetSettingsMap(
content::BrowserContext* browser_context) = 0;
+ // Retrieves the CookieSettings for this context.
+ virtual scoped_refptr<content_settings::CookieSettings> GetCookieSettings(
+ content::BrowserContext* browser_context) = 0;
+
// Retrieves the PermissionDecisionAutoBlocker for this context. The returned
// pointer has the same lifetime as |browser_context|.
virtual PermissionDecisionAutoBlocker* GetPermissionDecisionAutoBlocker(
@@ -120,6 +128,13 @@ class PermissionsClient {
PermissionRequestType request_type,
PermissionAction action);
+ // Returns true if user has 3 consecutive notifications permission denies,
+ // returns false otherwise.
+ // Returns base::nullopt if the user is not in the adoptive activation quiet
+ // ui dry run experiment group.
+ virtual base::Optional<bool> HadThreeConsecutiveNotificationPermissionDenies(
+ content::BrowserContext* browser_context);
+
// If the embedder returns an origin here, any requests matching that origin
// will be approved. Requests that do not match the returned origin will
// immediately be finished without granting/denying the permission.