| Index: chrome/renderer/render_view.cc
|
| diff --git a/chrome/renderer/render_view.cc b/chrome/renderer/render_view.cc
|
| index a1147ddb45f58569e7deaecc7c2dbe3a31d32790..817437cfeabcfad91c531f340f1e88b505543b54 100644
|
| --- a/chrome/renderer/render_view.cc
|
| +++ b/chrome/renderer/render_view.cc
|
| @@ -2196,10 +2196,13 @@ WebPlugin* RenderView::createPlugin(WebFrame* frame,
|
| if (path.value().empty())
|
| return NULL;
|
|
|
| - if (!AllowContentType(CONTENT_SETTINGS_TYPE_PLUGINS) &&
|
| - path.value() != kDefaultPluginLibraryName) {
|
| - didNotAllowPlugins(frame);
|
| - return CreatePluginPlaceholder(frame, params);
|
| + if (CommandLine::ForCurrentProcess()->HasSwitch(
|
| + switches::kEnableClickToPlay)) {
|
| + if (!AllowContentType(CONTENT_SETTINGS_TYPE_PLUGINS) &&
|
| + path.value() != kDefaultPluginLibraryName) {
|
| + didNotAllowPlugins(frame);
|
| + return CreatePluginPlaceholder(frame, params);
|
| + }
|
| }
|
| return CreatePluginInternal(frame, params, actual_mime_type, path);
|
| }
|
| @@ -2331,6 +2334,16 @@ bool RenderView::allowImages(WebFrame* frame, bool enabled_per_settings) {
|
| return false; // Other protocols fall through here.
|
| }
|
|
|
| +bool RenderView::allowPlugins(WebFrame* frame, bool enabled_per_settings) {
|
| + if (CommandLine::ForCurrentProcess()->HasSwitch(
|
| + switches::kEnableClickToPlay)) {
|
| + return WebFrameClient::allowPlugins(frame, enabled_per_settings);
|
| + }
|
| + return (enabled_per_settings &&
|
| + AllowContentType(CONTENT_SETTINGS_TYPE_PLUGINS));
|
| +}
|
| +
|
| +
|
| void RenderView::loadURLExternally(
|
| WebFrame* frame, const WebURLRequest& request,
|
| WebNavigationPolicy policy) {
|
|
|