| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/message_loop.h" | 10 #include "base/message_loop.h" |
| (...skipping 12 matching lines...) Expand all Loading... |
| 23 #include "chrome/common/render_messages.h" | 23 #include "chrome/common/render_messages.h" |
| 24 #include "chrome/common/url_constants.h" | 24 #include "chrome/common/url_constants.h" |
| 25 #include "chrome/renderer/autofill/autofill_agent.h" | 25 #include "chrome/renderer/autofill/autofill_agent.h" |
| 26 #include "chrome/renderer/autofill/form_manager.h" | 26 #include "chrome/renderer/autofill/form_manager.h" |
| 27 #include "chrome/renderer/autofill/password_autofill_manager.h" | 27 #include "chrome/renderer/autofill/password_autofill_manager.h" |
| 28 #include "chrome/renderer/automation/automation_renderer_helper.h" | 28 #include "chrome/renderer/automation/automation_renderer_helper.h" |
| 29 #include "chrome/renderer/automation/dom_automation_v8_extension.h" | 29 #include "chrome/renderer/automation/dom_automation_v8_extension.h" |
| 30 #include "chrome/renderer/blocked_plugin.h" | 30 #include "chrome/renderer/blocked_plugin.h" |
| 31 #include "chrome/renderer/chrome_render_process_observer.h" | 31 #include "chrome/renderer/chrome_render_process_observer.h" |
| 32 #include "chrome/renderer/chrome_render_view_observer.h" | 32 #include "chrome/renderer/chrome_render_view_observer.h" |
| 33 #include "chrome/renderer/content_settings_observer.h" |
| 33 #include "chrome/renderer/devtools_agent.h" | 34 #include "chrome/renderer/devtools_agent.h" |
| 34 #include "chrome/renderer/devtools_agent_filter.h" | 35 #include "chrome/renderer/devtools_agent_filter.h" |
| 35 #include "chrome/renderer/extensions/bindings_utils.h" | 36 #include "chrome/renderer/extensions/bindings_utils.h" |
| 36 #include "chrome/renderer/extensions/event_bindings.h" | 37 #include "chrome/renderer/extensions/event_bindings.h" |
| 37 #include "chrome/renderer/extensions/extension_dispatcher.h" | 38 #include "chrome/renderer/extensions/extension_dispatcher.h" |
| 38 #include "chrome/renderer/extensions/extension_helper.h" | 39 #include "chrome/renderer/extensions/extension_helper.h" |
| 39 #include "chrome/renderer/extensions/extension_process_bindings.h" | 40 #include "chrome/renderer/extensions/extension_process_bindings.h" |
| 40 #include "chrome/renderer/extensions/extension_resource_request_policy.h" | 41 #include "chrome/renderer/extensions/extension_resource_request_policy.h" |
| 41 #include "chrome/renderer/extensions/renderer_extension_bindings.h" | 42 #include "chrome/renderer/extensions/renderer_extension_bindings.h" |
| 42 #include "chrome/renderer/external_extension.h" | 43 #include "chrome/renderer/external_extension.h" |
| (...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 272 void ChromeContentRendererClient::RenderViewCreated(RenderView* render_view) { | 273 void ChromeContentRendererClient::RenderViewCreated(RenderView* render_view) { |
| 273 safe_browsing::PhishingClassifierDelegate* phishing_classifier = NULL; | 274 safe_browsing::PhishingClassifierDelegate* phishing_classifier = NULL; |
| 274 #ifndef OS_CHROMEOS | 275 #ifndef OS_CHROMEOS |
| 275 if (!CommandLine::ForCurrentProcess()->HasSwitch( | 276 if (!CommandLine::ForCurrentProcess()->HasSwitch( |
| 276 switches::kDisableClientSidePhishingDetection)) { | 277 switches::kDisableClientSidePhishingDetection)) { |
| 277 phishing_classifier = | 278 phishing_classifier = |
| 278 new safe_browsing::PhishingClassifierDelegate(render_view, NULL); | 279 new safe_browsing::PhishingClassifierDelegate(render_view, NULL); |
| 279 } | 280 } |
| 280 #endif | 281 #endif |
| 281 | 282 |
| 283 new ContentSettingsObserver(render_view); |
| 282 new DevToolsAgent(render_view); | 284 new DevToolsAgent(render_view); |
| 283 new ExtensionHelper(render_view, extension_dispatcher_.get()); | 285 new ExtensionHelper(render_view, extension_dispatcher_.get()); |
| 284 new PageLoadHistograms(render_view, histogram_snapshots_.get()); | 286 new PageLoadHistograms(render_view, histogram_snapshots_.get()); |
| 285 new PrintWebViewHelper(render_view); | 287 new PrintWebViewHelper(render_view); |
| 286 new SearchBox(render_view); | 288 new SearchBox(render_view); |
| 287 new SpellCheckProvider(render_view, spellcheck_.get()); | 289 new SpellCheckProvider(render_view, spellcheck_.get()); |
| 288 new safe_browsing::MalwareDOMDetails(render_view); | 290 new safe_browsing::MalwareDOMDetails(render_view); |
| 289 | 291 |
| 290 PasswordAutofillManager* password_autofill_manager = | 292 PasswordAutofillManager* password_autofill_manager = |
| 291 new PasswordAutofillManager(render_view); | 293 new PasswordAutofillManager(render_view); |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 372 } | 374 } |
| 373 return CreatePluginPlaceholder( | 375 return CreatePluginPlaceholder( |
| 374 render_view, frame, params, *group, IDR_BLOCKED_PLUGIN_HTML, | 376 render_view, frame, params, *group, IDR_BLOCKED_PLUGIN_HTML, |
| 375 IDS_PLUGIN_OUTDATED, false, | 377 IDS_PLUGIN_OUTDATED, false, |
| 376 outdated_plugins_policy == CONTENT_SETTING_ASK); | 378 outdated_plugins_policy == CONTENT_SETTING_ASK); |
| 377 } else { | 379 } else { |
| 378 DCHECK(outdated_plugins_policy == CONTENT_SETTING_ALLOW); | 380 DCHECK(outdated_plugins_policy == CONTENT_SETTING_ALLOW); |
| 379 } | 381 } |
| 380 } | 382 } |
| 381 | 383 |
| 382 ContentSetting host_setting = render_view->current_content_settings_. | 384 ContentSettingsObserver* observer = ContentSettingsObserver::Get(render_view); |
| 383 settings[CONTENT_SETTINGS_TYPE_PLUGINS]; | 385 ContentSetting host_setting = |
| 386 observer->GetContentSetting(CONTENT_SETTINGS_TYPE_PLUGINS); |
| 384 | 387 |
| 385 if (group->RequiresAuthorization() && | 388 if (group->RequiresAuthorization() && |
| 386 !cmd->HasSwitch(switches::kAlwaysAuthorizePlugins) && | 389 !cmd->HasSwitch(switches::kAlwaysAuthorizePlugins) && |
| 387 (plugin_setting == CONTENT_SETTING_ALLOW || | 390 (plugin_setting == CONTENT_SETTING_ALLOW || |
| 388 plugin_setting == CONTENT_SETTING_ASK) && | 391 plugin_setting == CONTENT_SETTING_ASK) && |
| 389 host_setting == CONTENT_SETTING_DEFAULT) { | 392 host_setting == CONTENT_SETTING_DEFAULT) { |
| 390 render_view->Send(new ViewHostMsg_BlockedOutdatedPlugin( | 393 render_view->Send(new ViewHostMsg_BlockedOutdatedPlugin( |
| 391 render_view->routing_id(), group->GetGroupName(), GURL())); | 394 render_view->routing_id(), group->GetGroupName(), GURL())); |
| 392 return CreatePluginPlaceholder( | 395 return CreatePluginPlaceholder( |
| 393 render_view, frame, params, *group, IDR_BLOCKED_PLUGIN_HTML, | 396 render_view, frame, params, *group, IDR_BLOCKED_PLUGIN_HTML, |
| (...skipping 23 matching lines...) Expand all Loading... |
| 417 return NULL; | 420 return NULL; |
| 418 } | 421 } |
| 419 | 422 |
| 420 return render_view->CreateNPAPIPlugin( | 423 return render_view->CreateNPAPIPlugin( |
| 421 frame, params, info.path, actual_mime_type); | 424 frame, params, info.path, actual_mime_type); |
| 422 } | 425 } |
| 423 | 426 |
| 424 std::string resource; | 427 std::string resource; |
| 425 if (cmd->HasSwitch(switches::kEnableResourceContentSettings)) | 428 if (cmd->HasSwitch(switches::kEnableResourceContentSettings)) |
| 426 resource = group->identifier(); | 429 resource = group->identifier(); |
| 427 render_view->DidBlockContentType(CONTENT_SETTINGS_TYPE_PLUGINS, resource); | 430 observer->DidBlockContentType(CONTENT_SETTINGS_TYPE_PLUGINS, resource); |
| 428 if (plugin_setting == CONTENT_SETTING_ASK) { | 431 if (plugin_setting == CONTENT_SETTING_ASK) { |
| 429 return CreatePluginPlaceholder( | 432 return CreatePluginPlaceholder( |
| 430 render_view, frame, params, *group, IDR_CLICK_TO_PLAY_PLUGIN_HTML, | 433 render_view, frame, params, *group, IDR_CLICK_TO_PLAY_PLUGIN_HTML, |
| 431 IDS_PLUGIN_LOAD, false, true); | 434 IDS_PLUGIN_LOAD, false, true); |
| 432 } else { | 435 } else { |
| 433 return CreatePluginPlaceholder( | 436 return CreatePluginPlaceholder( |
| 434 render_view, frame, params, *group, IDR_BLOCKED_PLUGIN_HTML, | 437 render_view, frame, params, *group, IDR_BLOCKED_PLUGIN_HTML, |
| 435 IDS_PLUGIN_BLOCKED, false, true); | 438 IDS_PLUGIN_BLOCKED, false, true); |
| 436 } | 439 } |
| 437 } | 440 } |
| (...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 622 if (old_url.is_empty() && frame->opener()) | 625 if (old_url.is_empty() && frame->opener()) |
| 623 old_url = frame->opener()->url(); | 626 old_url = frame->opener()->url(); |
| 624 | 627 |
| 625 bool old_url_is_hosted_app = extensions->GetByURL(old_url) && | 628 bool old_url_is_hosted_app = extensions->GetByURL(old_url) && |
| 626 !extensions->GetByURL(old_url)->web_extent().is_empty(); | 629 !extensions->GetByURL(old_url)->web_extent().is_empty(); |
| 627 return !extensions->InSameExtent(old_url, new_url) && | 630 return !extensions->InSameExtent(old_url, new_url) && |
| 628 !old_url_is_hosted_app; | 631 !old_url_is_hosted_app; |
| 629 } | 632 } |
| 630 | 633 |
| 631 } // namespace chrome | 634 } // namespace chrome |
| OLD | NEW |