summaryrefslogtreecommitdiffstats
path: root/chrome/common
diff options
context:
space:
mode:
authordanno@chromium.org <danno@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-28 22:32:00 +0000
committerdanno@chromium.org <danno@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-28 22:32:00 +0000
commit03f87edd740a7141ec3ffe0298be0743d4d135c7 (patch)
tree60309e52a4aa23321150b486b0b4ff6a730d6683 /chrome/common
parentb37306ce4946243abd22453f40851236fe6990a2 (diff)
downloadchromium_src-03f87edd740a7141ec3ffe0298be0743d4d135c7.zip
chromium_src-03f87edd740a7141ec3ffe0298be0743d4d135c7.tar.gz
chromium_src-03f87edd740a7141ec3ffe0298be0743d4d135c7.tar.bz2
Modify the policy to disable plugins to support TYPE_LIST values
BUG=51897 TEST=ConfigurationPolicyProviderWinTest.* Review URL: http://codereview.chromium.org/3133012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57794 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common')
-rw-r--r--chrome/common/plugin_group.cc14
-rw-r--r--chrome/common/policy_constants.cc2
-rw-r--r--chrome/common/policy_constants.h2
3 files changed, 10 insertions, 8 deletions
diff --git a/chrome/common/plugin_group.cc b/chrome/common/plugin_group.cc
index 5d3a933..daf1247 100644
--- a/chrome/common/plugin_group.cc
+++ b/chrome/common/plugin_group.cc
@@ -284,13 +284,8 @@ DictionaryValue* PluginGroup::GetDataForUI() const {
result->SetBoolean("critical", IsVulnerable());
bool group_disabled_by_policy = IsPluginNameDisabledByPolicy(group_name_);
- if (group_disabled_by_policy) {
- result->SetString("enabledMode", "disabledByPolicy");
- } else {
- result->SetString("enabledMode", enabled_ ? "enabled" : "disabledByUser");
- }
-
ListValue* plugin_files = new ListValue();
+ bool all_plugins_disabled_by_policy = true;
for (size_t i = 0; i < web_plugin_infos_.size(); ++i) {
const WebPluginInfo& web_plugin = web_plugin_infos_[i];
int priority = web_plugin_positions_[i];
@@ -304,6 +299,7 @@ DictionaryValue* PluginGroup::GetDataForUI() const {
if (plugin_disabled_by_policy) {
plugin_file->SetString("enabledMode", "disabledByPolicy");
} else {
+ all_plugins_disabled_by_policy = false;
plugin_file->SetString("enabledMode",
web_plugin.enabled ? "enabled" : "disabledByUser");
}
@@ -333,6 +329,12 @@ DictionaryValue* PluginGroup::GetDataForUI() const {
plugin_files->Append(plugin_file);
}
+
+ if (group_disabled_by_policy || all_plugins_disabled_by_policy) {
+ result->SetString("enabledMode", "disabledByPolicy");
+ } else {
+ result->SetString("enabledMode", enabled_ ? "enabled" : "disabledByUser");
+ }
result->Set("plugin_files", plugin_files);
return result;
diff --git a/chrome/common/policy_constants.cc b/chrome/common/policy_constants.cc
index 2a03f2e..f3d4714 100644
--- a/chrome/common/policy_constants.cc
+++ b/chrome/common/policy_constants.cc
@@ -30,8 +30,8 @@ const char kDnsPrefetchingEnabled[] = "DnsPrefetchingEnabled";
const char kSafeBrowsingEnabled[] = "SafeBrowsingEnabled";
const char kMetricsReportingEnabled[] = "MetricsReportingEnabled";
const char kPasswordManagerEnabled[] = "PasswordManagerEnabled";
+const char kDisabledPlugins[] = "DisabledPlugins";
const char kAutoFillEnabled[] = "AutoFillEnabled";
-const char kDisabledPluginsList[] = "DisabledPluginsList";
const char kApplicationLocaleValue[] = "ApplicationLocaleValue";
const char kSyncDisabled[] = "SyncDisabled";
const char kExtensionInstallAllowList[] = "ExtensionInstallWhitelist";
diff --git a/chrome/common/policy_constants.h b/chrome/common/policy_constants.h
index ce30b59..79a205b 100644
--- a/chrome/common/policy_constants.h
+++ b/chrome/common/policy_constants.h
@@ -32,8 +32,8 @@ extern const char kDnsPrefetchingEnabled[];
extern const char kSafeBrowsingEnabled[];
extern const char kMetricsReportingEnabled[];
extern const char kPasswordManagerEnabled[];
+extern const char kDisabledPlugins[];
extern const char kAutoFillEnabled[];
-extern const char kDisabledPluginsList[];
extern const char kApplicationLocaleValue[];
extern const char kSyncDisabled[];
extern const char kExtensionInstallAllowList[];