diff options
author | jochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-01 08:32:43 +0000 |
---|---|---|
committer | jochen@chromium.org <jochen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-01 08:32:43 +0000 |
commit | d95eb17ad28fdc10b5952b7fcc2b6d5f7ef62b88 (patch) | |
tree | 381ed55e2bedeb11babd759b9f6a94183b533d08 /chrome/browser/dom_ui | |
parent | a16a421b3959938bd40e9101b2bc86f4ad46e454 (diff) | |
download | chromium_src-d95eb17ad28fdc10b5952b7fcc2b6d5f7ef62b88.zip chromium_src-d95eb17ad28fdc10b5952b7fcc2b6d5f7ef62b88.tar.gz chromium_src-d95eb17ad28fdc10b5952b7fcc2b6d5f7ef62b88.tar.bz2 |
Show option to block non-sandboxed plugins. (Gtk/Views/tabbed part)
BUG=53812
TEST=none
Review URL: http://codereview.chromium.org/3231008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58148 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/dom_ui')
-rw-r--r-- | chrome/browser/dom_ui/content_settings_handler.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/chrome/browser/dom_ui/content_settings_handler.cc b/chrome/browser/dom_ui/content_settings_handler.cc index 2bdb915..4c28834 100644 --- a/chrome/browser/dom_ui/content_settings_handler.cc +++ b/chrome/browser/dom_ui/content_settings_handler.cc @@ -175,6 +175,8 @@ void ContentSettingsHandler::GetLocalizedValues( l10n_util::GetStringUTF16(IDS_PLUGIN_TAB_LABEL)); localized_strings->SetString("plugins_setting", l10n_util::GetStringUTF16(IDS_PLUGIN_SETTING_LABEL)); + localized_strings->SetString("plugins_allow_sandboxed", + l10n_util::GetStringUTF16(IDS_PLUGIN_LOAD_SANDBOXED_RADIO)); localized_strings->SetString("plugins_allow", l10n_util::GetStringUTF16(IDS_PLUGIN_LOAD_RADIO)); localized_strings->SetString("plugins_block", @@ -235,6 +237,12 @@ void ContentSettingsHandler::Initialize() { ContentSettingToString(default_setting)); } + if (settings_map->GetBlockNonsandboxedPlugins()) { + filter_settings.SetString( + ContentSettingsTypeToGroupName(CONTENT_SETTINGS_TYPE_PLUGINS), + ContentSettingToString(CONTENT_SETTING_ASK)); + } + dom_ui_->CallJavascriptFunction( L"ContentSettings.setInitialContentFilterSettingsValue", filter_settings); @@ -326,6 +334,17 @@ void ContentSettingsHandler::SetContentFilter(const ListValue* args) { return; } + if (ContentSettingsTypeFromGroupName(group) == + CONTENT_SETTINGS_TYPE_PLUGINS) { + bool block_nonsandboxed_plugins = false; + if (ContentSettingFromString(setting) == CONTENT_SETTING_ASK) { + setting = ContentSettingToString(CONTENT_SETTING_ALLOW); + block_nonsandboxed_plugins = true; + } + dom_ui_->GetProfile()->GetHostContentSettingsMap()-> + SetBlockNonsandboxedPlugins(block_nonsandboxed_plugins); + } + dom_ui_->GetProfile()->GetHostContentSettingsMap()->SetDefaultContentSetting( ContentSettingsTypeFromGroupName(group), ContentSettingFromString(setting)); |