diff options
author | danno@chromium.org <danno@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-28 22:32:00 +0000 |
---|---|---|
committer | danno@chromium.org <danno@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-08-28 22:32:00 +0000 |
commit | 03f87edd740a7141ec3ffe0298be0743d4d135c7 (patch) | |
tree | 60309e52a4aa23321150b486b0b4ff6a730d6683 /chrome/common | |
parent | b37306ce4946243abd22453f40851236fe6990a2 (diff) | |
download | chromium_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.cc | 14 | ||||
-rw-r--r-- | chrome/common/policy_constants.cc | 2 | ||||
-rw-r--r-- | chrome/common/policy_constants.h | 2 |
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[]; |