Index: chrome/browser/ui/content_settings/content_setting_bubble_model.h |
diff --git a/chrome/browser/ui/content_settings/content_setting_bubble_model.h b/chrome/browser/ui/content_settings/content_setting_bubble_model.h |
index a7b5aaf11800c3bc6620f9563d729eedf7563689..897ac77b012efe11f7e98a78baf006ded8ae63f3 100644 |
--- a/chrome/browser/ui/content_settings/content_setting_bubble_model.h |
+++ b/chrome/browser/ui/content_settings/content_setting_bubble_model.h |
@@ -45,10 +45,12 @@ class WebContents; |
// ContentSettingCookiesBubbleModel - cookies |
// ContentSettingPluginBubbleModel - plugins |
// ContentSettingPopupBubbleModel - popups |
+// ContentSettingSubresourceFilterBubbleModel - filtered subresources |
// Forward declaration necessary for downcasts. |
-class ContentSettingSimpleBubbleModel; |
class ContentSettingMediaStreamBubbleModel; |
+class ContentSettingSimpleBubbleModel; |
+class ContentSettingSubresourceFilterBubbleModel; |
// This model provides data for ContentSettingBubble, and also controls |
// the action triggered when the allow / block radio buttons are triggered. |
@@ -162,6 +164,11 @@ class ContentSettingBubbleModel : public content::NotificationObserver { |
// Cast this bubble into ContentSettingMediaStreamBubbleModel if possible. |
virtual ContentSettingMediaStreamBubbleModel* AsMediaStreamBubbleModel(); |
+ // Cast this bubble into ContentSettingSubresourceFilterBubbleModel |
+ // if possible. |
+ virtual ContentSettingSubresourceFilterBubbleModel* |
+ AsSubresourceFilterBubbleModel(); |
+ |
protected: |
ContentSettingBubbleModel( |
Delegate* delegate, |
@@ -282,6 +289,28 @@ class ContentSettingRPHBubbleModel : public ContentSettingSimpleBubbleModel { |
DISALLOW_COPY_AND_ASSIGN(ContentSettingRPHBubbleModel); |
}; |
+// The model for the deceptive content bubble. |
+class ContentSettingSubresourceFilterBubbleModel |
+ : public ContentSettingBubbleModel { |
+ public: |
+ ContentSettingSubresourceFilterBubbleModel(Delegate* delegate, |
+ content::WebContents* web_contents, |
+ Profile* profile); |
+ |
+ ~ContentSettingSubresourceFilterBubbleModel() override; |
+ |
+ void OnManageLinkClicked() override; |
+ ContentSettingSubresourceFilterBubbleModel* AsSubresourceFilterBubbleModel() |
+ override; |
+ |
+ private: |
+ // ContentSettingBubbleModel: |
+ void SetTitle() override; |
+ void SetManageLink() override; |
+ |
+ DISALLOW_COPY_AND_ASSIGN(ContentSettingSubresourceFilterBubbleModel); |
+}; |
+ |
// The model of the content settings bubble for media settings. |
class ContentSettingMediaStreamBubbleModel : public ContentSettingBubbleModel { |
public: |