Index: chrome/browser/subresource_filter/chrome_subresource_filter_client.h |
diff --git a/chrome/browser/subresource_filter/chrome_subresource_filter_client.h b/chrome/browser/subresource_filter/chrome_subresource_filter_client.h |
index e706577dff44b7d68c78d3330bb3144748e32cd8..beceb23d265d3f8aaec442ae8c3580a4b8933032 100644 |
--- a/chrome/browser/subresource_filter/chrome_subresource_filter_client.h |
+++ b/chrome/browser/subresource_filter/chrome_subresource_filter_client.h |
@@ -10,6 +10,7 @@ |
#include "components/subresource_filter/content/browser/subresource_filter_client.h" |
class GURL; |
+class SubresourceFilterContentSettingsManager; |
namespace content { |
class WebContents; |
@@ -53,6 +54,16 @@ enum SubresourceFilterAction { |
// flexible. |
kActionContentSettingsWildcardUpdate, |
+ // The UI was suppressed due to "smart" logic which tries not to spam the UI |
+ // on navigations on the same origin within a certain time. |
+ kActionUISuppressed, |
+ |
+ // The feature was blocked via content setting manually while smart UI was |
+ // suppressing the UI. Potentially indicates that the smart UI is too |
+ // aggressive if this happens frequently. This is a reported alongside |
+ // kActionContentSettingsBlocked if the UI is currently in suppressed mode. |
+ kActionContentSettingsBlockedWhileUISuppressed, |
+ |
kActionLastEntry |
}; |
@@ -65,15 +76,22 @@ class ChromeSubresourceFilterClient |
// SubresourceFilterClient: |
void ToggleNotificationVisibility(bool visibility) override; |
- bool IsWhitelistedByContentSettings(const GURL& url) override; |
- void WhitelistByContentSettings(const GURL& url) override; |
+ bool IsWhitelistedByContentSettings(const GURL& top_level_url) override; |
+ void WhitelistByContentSettings(const GURL& top_level_url) override; |
subresource_filter::VerifiedRulesetDealer::Handle* GetRulesetDealer() |
override; |
+ void OnActivationComputed( |
+ const GURL& top_level_url, |
+ const subresource_filter::ActivationState& state) override; |
static void LogAction(SubresourceFilterAction action); |
+ bool shown_for_navigation() const { return shown_for_navigation_; } |
+ |
private: |
- ContentSetting GetContentSettingForUrl(const GURL& url); |
+ // Owned by the profile. |
+ SubresourceFilterContentSettingsManager* settings_manager_; |
+ |
content::WebContents* web_contents_; |
bool shown_for_navigation_; |