Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(110)

Side by Side Diff: chrome/browser/content_settings/content_settings_policy_provider.cc

Issue 7623006: Add preference for managed notifications setting. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: " Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/content_settings/content_settings_policy_provider.h" 5 #include "chrome/browser/content_settings/content_settings_policy_provider.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 18 matching lines...) Expand all
29 "profile.managed_default_content_settings"; 29 "profile.managed_default_content_settings";
30 30
31 // The preferences used to manage ContentSettingsTypes. 31 // The preferences used to manage ContentSettingsTypes.
32 const char* kPrefToManageType[CONTENT_SETTINGS_NUM_TYPES] = { 32 const char* kPrefToManageType[CONTENT_SETTINGS_NUM_TYPES] = {
33 prefs::kManagedDefaultCookiesSetting, 33 prefs::kManagedDefaultCookiesSetting,
34 prefs::kManagedDefaultImagesSetting, 34 prefs::kManagedDefaultImagesSetting,
35 prefs::kManagedDefaultJavaScriptSetting, 35 prefs::kManagedDefaultJavaScriptSetting,
36 prefs::kManagedDefaultPluginsSetting, 36 prefs::kManagedDefaultPluginsSetting,
37 prefs::kManagedDefaultPopupsSetting, 37 prefs::kManagedDefaultPopupsSetting,
38 prefs::kManagedDefaultGeolocationSetting, 38 prefs::kManagedDefaultGeolocationSetting,
39 NULL, // Not used for Notifications 39 prefs::kManagedDefaultNotificationsSetting,
40 }; 40 };
41 41
42 struct PrefsForManagedContentSettingsMapEntry { 42 struct PrefsForManagedContentSettingsMapEntry {
43 const char* pref_name; 43 const char* pref_name;
44 ContentSettingsType content_type; 44 ContentSettingsType content_type;
45 ContentSetting setting; 45 ContentSetting setting;
46 }; 46 };
47 47
48 const PrefsForManagedContentSettingsMapEntry 48 const PrefsForManagedContentSettingsMapEntry
49 kPrefsForManagedContentSettingsMap[] = { 49 kPrefsForManagedContentSettingsMap[] = {
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
112 // corresponding default-content-setting is managed. These preferences exist 112 // corresponding default-content-setting is managed. These preferences exist
113 // in parallel to the preference default-content-settings. If a 113 // in parallel to the preference default-content-settings. If a
114 // default-content-settings-type is managed any user defined excpetions 114 // default-content-settings-type is managed any user defined excpetions
115 // (patterns) for this type are ignored. 115 // (patterns) for this type are ignored.
116 pref_change_registrar_.Add(prefs::kManagedDefaultCookiesSetting, this); 116 pref_change_registrar_.Add(prefs::kManagedDefaultCookiesSetting, this);
117 pref_change_registrar_.Add(prefs::kManagedDefaultImagesSetting, this); 117 pref_change_registrar_.Add(prefs::kManagedDefaultImagesSetting, this);
118 pref_change_registrar_.Add(prefs::kManagedDefaultJavaScriptSetting, this); 118 pref_change_registrar_.Add(prefs::kManagedDefaultJavaScriptSetting, this);
119 pref_change_registrar_.Add(prefs::kManagedDefaultPluginsSetting, this); 119 pref_change_registrar_.Add(prefs::kManagedDefaultPluginsSetting, this);
120 pref_change_registrar_.Add(prefs::kManagedDefaultPopupsSetting, this); 120 pref_change_registrar_.Add(prefs::kManagedDefaultPopupsSetting, this);
121 pref_change_registrar_.Add(prefs::kManagedDefaultGeolocationSetting, this); 121 pref_change_registrar_.Add(prefs::kManagedDefaultGeolocationSetting, this);
122 pref_change_registrar_.Add(prefs::kManagedDefaultNotificationsSetting, this);
122 } 123 }
123 124
124 PolicyDefaultProvider::~PolicyDefaultProvider() { 125 PolicyDefaultProvider::~PolicyDefaultProvider() {
125 DCHECK(!prefs_); 126 DCHECK(!prefs_);
126 } 127 }
127 128
128 ContentSetting PolicyDefaultProvider::ProvideDefaultSetting( 129 ContentSetting PolicyDefaultProvider::ProvideDefaultSetting(
129 ContentSettingsType content_type) const { 130 ContentSettingsType content_type) const {
130 base::AutoLock auto_lock(lock_); 131 base::AutoLock auto_lock(lock_);
131 return managed_default_content_settings_.settings[content_type]; 132 return managed_default_content_settings_.settings[content_type];
(...skipping 28 matching lines...) Expand all
160 } else if (*name == prefs::kManagedDefaultImagesSetting) { 161 } else if (*name == prefs::kManagedDefaultImagesSetting) {
161 UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_IMAGES); 162 UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_IMAGES);
162 } else if (*name == prefs::kManagedDefaultJavaScriptSetting) { 163 } else if (*name == prefs::kManagedDefaultJavaScriptSetting) {
163 UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_JAVASCRIPT); 164 UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_JAVASCRIPT);
164 } else if (*name == prefs::kManagedDefaultPluginsSetting) { 165 } else if (*name == prefs::kManagedDefaultPluginsSetting) {
165 UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_PLUGINS); 166 UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_PLUGINS);
166 } else if (*name == prefs::kManagedDefaultPopupsSetting) { 167 } else if (*name == prefs::kManagedDefaultPopupsSetting) {
167 UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_POPUPS); 168 UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_POPUPS);
168 } else if (*name == prefs::kManagedDefaultGeolocationSetting) { 169 } else if (*name == prefs::kManagedDefaultGeolocationSetting) {
169 UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_GEOLOCATION); 170 UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_GEOLOCATION);
171 } else if (*name == prefs::kManagedDefaultNotificationsSetting) {
172 UpdateManagedDefaultSetting(CONTENT_SETTINGS_TYPE_NOTIFICATIONS);
170 } else { 173 } else {
171 NOTREACHED() << "Unexpected preference observed"; 174 NOTREACHED() << "Unexpected preference observed";
172 return; 175 return;
173 } 176 }
174 177
175 NotifyObservers(ContentSettingsPattern(), 178 NotifyObservers(ContentSettingsPattern(),
176 ContentSettingsPattern(), 179 ContentSettingsPattern(),
177 CONTENT_SETTINGS_TYPE_DEFAULT, 180 CONTENT_SETTINGS_TYPE_DEFAULT,
178 std::string()); 181 std::string());
179 } else { 182 } else {
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
228 PrefService::UNSYNCABLE_PREF); 231 PrefService::UNSYNCABLE_PREF);
229 prefs->RegisterIntegerPref(prefs::kManagedDefaultPluginsSetting, 232 prefs->RegisterIntegerPref(prefs::kManagedDefaultPluginsSetting,
230 CONTENT_SETTING_DEFAULT, 233 CONTENT_SETTING_DEFAULT,
231 PrefService::UNSYNCABLE_PREF); 234 PrefService::UNSYNCABLE_PREF);
232 prefs->RegisterIntegerPref(prefs::kManagedDefaultPopupsSetting, 235 prefs->RegisterIntegerPref(prefs::kManagedDefaultPopupsSetting,
233 CONTENT_SETTING_DEFAULT, 236 CONTENT_SETTING_DEFAULT,
234 PrefService::UNSYNCABLE_PREF); 237 PrefService::UNSYNCABLE_PREF);
235 prefs->RegisterIntegerPref(prefs::kManagedDefaultGeolocationSetting, 238 prefs->RegisterIntegerPref(prefs::kManagedDefaultGeolocationSetting,
236 CONTENT_SETTING_DEFAULT, 239 CONTENT_SETTING_DEFAULT,
237 PrefService::UNSYNCABLE_PREF); 240 PrefService::UNSYNCABLE_PREF);
241 prefs->RegisterIntegerPref(prefs::kManagedDefaultNotificationsSetting,
242 CONTENT_SETTING_DEFAULT,
243 PrefService::UNSYNCABLE_PREF);
238 } 244 }
239 245
240 // //////////////////////////////////////////////////////////////////////////// 246 // ////////////////////////////////////////////////////////////////////////////
241 // PolicyProvider 247 // PolicyProvider
242 248
243 // static 249 // static
244 void PolicyProvider::RegisterUserPrefs(PrefService* prefs) { 250 void PolicyProvider::RegisterUserPrefs(PrefService* prefs) {
245 prefs->RegisterListPref(prefs::kManagedCookiesAllowedForUrls, 251 prefs->RegisterListPref(prefs::kManagedCookiesAllowedForUrls,
246 PrefService::UNSYNCABLE_PREF); 252 PrefService::UNSYNCABLE_PREF);
247 prefs->RegisterListPref(prefs::kManagedCookiesBlockedForUrls, 253 prefs->RegisterListPref(prefs::kManagedCookiesBlockedForUrls,
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
446 ContentSettingsPattern(), 452 ContentSettingsPattern(),
447 CONTENT_SETTINGS_TYPE_DEFAULT, 453 CONTENT_SETTINGS_TYPE_DEFAULT,
448 std::string()); 454 std::string());
449 } 455 }
450 } else { 456 } else {
451 NOTREACHED() << "Unexpected notification"; 457 NOTREACHED() << "Unexpected notification";
452 } 458 }
453 } 459 }
454 460
455 } // namespace content_settings 461 } // namespace content_settings
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698