| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/renderer/chrome_content_renderer_client.h" | 5 #include "chrome/renderer/chrome_content_renderer_client.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 108 #include "third_party/WebKit/public/web/WebDocument.h" | 108 #include "third_party/WebKit/public/web/WebDocument.h" |
| 109 #include "third_party/WebKit/public/web/WebElement.h" | 109 #include "third_party/WebKit/public/web/WebElement.h" |
| 110 #include "third_party/WebKit/public/web/WebLocalFrame.h" | 110 #include "third_party/WebKit/public/web/WebLocalFrame.h" |
| 111 #include "third_party/WebKit/public/web/WebPluginContainer.h" | 111 #include "third_party/WebKit/public/web/WebPluginContainer.h" |
| 112 #include "third_party/WebKit/public/web/WebPluginParams.h" | 112 #include "third_party/WebKit/public/web/WebPluginParams.h" |
| 113 #include "third_party/WebKit/public/web/WebSecurityPolicy.h" | 113 #include "third_party/WebKit/public/web/WebSecurityPolicy.h" |
| 114 #include "ui/base/l10n/l10n_util.h" | 114 #include "ui/base/l10n/l10n_util.h" |
| 115 #include "ui/base/layout.h" | 115 #include "ui/base/layout.h" |
| 116 #include "ui/base/resource/resource_bundle.h" | 116 #include "ui/base/resource/resource_bundle.h" |
| 117 #include "ui/base/webui/jstemplate_builder.h" | 117 #include "ui/base/webui/jstemplate_builder.h" |
| 118 #include "widevine_cdm_version.h" // In SHARED_INTERMEDIATE_DIR. | |
| 119 | 118 |
| 120 #if !defined(DISABLE_NACL) | 119 #if !defined(DISABLE_NACL) |
| 121 #include "components/nacl/common/nacl_constants.h" | 120 #include "components/nacl/common/nacl_constants.h" |
| 122 #include "components/nacl/renderer/nacl_helper.h" | 121 #include "components/nacl/renderer/nacl_helper.h" |
| 123 #endif | 122 #endif |
| 124 | 123 |
| 125 #if defined(ENABLE_EXTENSIONS) | 124 #if defined(ENABLE_EXTENSIONS) |
| 126 #include "chrome/common/extensions/chrome_extensions_client.h" | 125 #include "chrome/common/extensions/chrome_extensions_client.h" |
| 127 #include "chrome/renderer/extensions/chrome_extensions_renderer_client.h" | 126 #include "chrome/renderer/extensions/chrome_extensions_renderer_client.h" |
| 128 #include "extensions/common/extension_urls.h" | 127 #include "extensions/common/extension_urls.h" |
| 129 #include "extensions/common/switches.h" | 128 #include "extensions/common/switches.h" |
| 130 #include "extensions/renderer/dispatcher.h" | 129 #include "extensions/renderer/dispatcher.h" |
| 131 #include "extensions/renderer/renderer_extension_registry.h" | 130 #include "extensions/renderer/renderer_extension_registry.h" |
| 132 #endif | 131 #endif |
| 133 | 132 |
| 134 #if defined(ENABLE_PLUGINS) | 133 #if defined(ENABLE_PLUGINS) |
| 134 #include "chrome/common/plugin_utils.h" |
| 135 #include "chrome/renderer/plugins/chrome_plugin_placeholder.h" | 135 #include "chrome/renderer/plugins/chrome_plugin_placeholder.h" |
| 136 #include "chrome/renderer/plugins/power_saver_info.h" | 136 #include "chrome/renderer/plugins/power_saver_info.h" |
| 137 #endif | 137 #endif |
| 138 | 138 |
| 139 #if defined(ENABLE_PRINTING) | 139 #if defined(ENABLE_PRINTING) |
| 140 #include "chrome/common/chrome_content_client.h" | 140 #include "chrome/common/chrome_content_client.h" |
| 141 #include "chrome/renderer/printing/chrome_print_web_view_helper_delegate.h" | 141 #include "chrome/renderer/printing/chrome_print_web_view_helper_delegate.h" |
| 142 #include "components/printing/renderer/print_web_view_helper.h" | 142 #include "components/printing/renderer/print_web_view_helper.h" |
| 143 #include "printing/print_settings.h" | 143 #include "printing/print_settings.h" |
| 144 #endif | 144 #endif |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 228 } | 228 } |
| 229 | 229 |
| 230 for (size_t i = 0; i < additional_names.size(); ++i) { | 230 for (size_t i = 0; i < additional_names.size(); ++i) { |
| 231 names[existing_size + i] = additional_names[i]; | 231 names[existing_size + i] = additional_names[i]; |
| 232 values[existing_size + i] = additional_values[i]; | 232 values[existing_size + i] = additional_values[i]; |
| 233 } | 233 } |
| 234 | 234 |
| 235 existing_names->swap(names); | 235 existing_names->swap(names); |
| 236 existing_values->swap(values); | 236 existing_values->swap(values); |
| 237 } | 237 } |
| 238 | |
| 239 // For certain sandboxed Pepper plugins, use the JavaScript Content Settings. | |
| 240 bool ShouldUseJavaScriptSettingForPlugin(const WebPluginInfo& plugin) { | |
| 241 if (plugin.type != WebPluginInfo::PLUGIN_TYPE_PEPPER_IN_PROCESS && | |
| 242 plugin.type != WebPluginInfo::PLUGIN_TYPE_PEPPER_OUT_OF_PROCESS) { | |
| 243 return false; | |
| 244 } | |
| 245 | |
| 246 #if !defined(DISABLE_NACL) | |
| 247 // Treat Native Client invocations like JavaScript. | |
| 248 if (plugin.name == ASCIIToUTF16(nacl::kNaClPluginName)) | |
| 249 return true; | |
| 250 #endif | |
| 251 | |
| 252 #if defined(WIDEVINE_CDM_AVAILABLE) && defined(ENABLE_PEPPER_CDMS) | |
| 253 // Treat CDM invocations like JavaScript. | |
| 254 if (plugin.name == ASCIIToUTF16(kWidevineCdmDisplayName)) { | |
| 255 DCHECK(plugin.type == WebPluginInfo::PLUGIN_TYPE_PEPPER_OUT_OF_PROCESS); | |
| 256 return true; | |
| 257 } | |
| 258 #endif // defined(WIDEVINE_CDM_AVAILABLE) && defined(ENABLE_PEPPER_CDMS) | |
| 259 | |
| 260 return false; | |
| 261 } | |
| 262 #endif // defined(ENABLE_PLUGINS) | 238 #endif // defined(ENABLE_PLUGINS) |
| 263 | 239 |
| 264 #if defined(ENABLE_SPELLCHECK) | 240 #if defined(ENABLE_SPELLCHECK) |
| 265 class SpellCheckReplacer : public content::RenderViewVisitor { | 241 class SpellCheckReplacer : public content::RenderViewVisitor { |
| 266 public: | 242 public: |
| 267 explicit SpellCheckReplacer(SpellCheck* spellcheck) | 243 explicit SpellCheckReplacer(SpellCheck* spellcheck) |
| 268 : spellcheck_(spellcheck) {} | 244 : spellcheck_(spellcheck) {} |
| 269 bool Visit(content::RenderView* render_view) override; | 245 bool Visit(content::RenderView* render_view) override; |
| 270 | 246 |
| 271 private: | 247 private: |
| (...skipping 1207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1479 | 1455 |
| 1480 url::Replacements<char> r; | 1456 url::Replacements<char> r; |
| 1481 r.SetPath(path.c_str(), url::Component(0, path.length())); | 1457 r.SetPath(path.c_str(), url::Component(0, path.length())); |
| 1482 | 1458 |
| 1483 if (result == internal::NUM_PLUGIN_ERROR) | 1459 if (result == internal::NUM_PLUGIN_ERROR) |
| 1484 result = invalid_url ? internal::SUCCESS_PARAMS_REWRITE : internal::SUCCESS; | 1460 result = invalid_url ? internal::SUCCESS_PARAMS_REWRITE : internal::SUCCESS; |
| 1485 | 1461 |
| 1486 RecordYouTubeRewriteUMA(result); | 1462 RecordYouTubeRewriteUMA(result); |
| 1487 return corrected_url.ReplaceComponents(r); | 1463 return corrected_url.ReplaceComponents(r); |
| 1488 } | 1464 } |
| OLD | NEW |