Add a global on/off switch for content settings and expose a toggle on the Website Settings options page.
[email protected]
BUG=372607
Review URL: https://codereview.chromium.org/542253003
Cr-Commit-Position: refs/heads/master@{#295572}
diff --git a/chrome/browser/ui/website_settings/website_settings.cc b/chrome/browser/ui/website_settings/website_settings.cc
index a4a54b4..df26aea 100644
--- a/chrome/browser/ui/website_settings/website_settings.cc
+++ b/chrome/browser/ui/website_settings/website_settings.cc
@@ -274,8 +274,9 @@
// This is not a concern for CONTENT_SETTINGS_TYPE_MEDIASTREAM since users
// can not create media settings exceptions by hand.
content_settings::SettingInfo info;
- scoped_ptr<base::Value> v(content_settings_->GetWebsiteSetting(
- site_url_, site_url_, type, std::string(), &info));
+ scoped_ptr<base::Value> v =
+ content_settings_->GetWebsiteSettingWithoutOverride(
+ site_url_, site_url_, type, std::string(), &info);
content_settings_->SetNarrowestWebsiteSetting(
primary_pattern, secondary_pattern, type, std::string(), setting, info);
} else {
@@ -616,21 +617,23 @@
content_settings::SettingInfo info;
if (permission_info.type == CONTENT_SETTINGS_TYPE_MEDIASTREAM) {
- scoped_ptr<base::Value> mic_value(content_settings_->GetWebsiteSetting(
- site_url_,
- site_url_,
- CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC,
- std::string(),
- &info));
+ scoped_ptr<base::Value> mic_value =
+ content_settings_->GetWebsiteSettingWithoutOverride(
+ site_url_,
+ site_url_,
+ CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC,
+ std::string(),
+ &info);
ContentSetting mic_setting =
content_settings::ValueToContentSetting(mic_value.get());
- scoped_ptr<base::Value> camera_value(content_settings_->GetWebsiteSetting(
- site_url_,
- site_url_,
- CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA,
- std::string(),
- &info));
+ scoped_ptr<base::Value> camera_value =
+ content_settings_->GetWebsiteSettingWithoutOverride(
+ site_url_,
+ site_url_,
+ CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA,
+ std::string(),
+ &info);
ContentSetting camera_setting =
content_settings::ValueToContentSetting(camera_value.get());
@@ -639,8 +642,9 @@
else
permission_info.setting = mic_setting;
} else {
- scoped_ptr<base::Value> value(content_settings_->GetWebsiteSetting(
- site_url_, site_url_, permission_info.type, std::string(), &info));
+ scoped_ptr<base::Value> value =
+ content_settings_->GetWebsiteSettingWithoutOverride(
+ site_url_, site_url_, permission_info.type, std::string(), &info);
DCHECK(value.get());
if (value->GetType() == base::Value::TYPE_INTEGER) {
permission_info.setting =