diff options
author | mmenke@chromium.org <mmenke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-30 00:41:44 +0000 |
---|---|---|
committer | mmenke@chromium.org <mmenke@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-04-30 00:41:44 +0000 |
commit | 16e923d415597f97b567c5d3870ad4d489c3e31b (patch) | |
tree | 4daa203932464fb01cf4bdb116d6fd596eacdd96 /chrome/renderer/blocked_plugin.cc | |
parent | bcf09fc7ff33c6bd4058f515baa5ab3133f355ec (diff) | |
download | chromium_src-16e923d415597f97b567c5d3870ad4d489c3e31b.zip chromium_src-16e923d415597f97b567c5d3870ad4d489c3e31b.tar.gz chromium_src-16e923d415597f97b567c5d3870ad4d489c3e31b.tar.bz2 |
Remove most prerendering code/references from content.
The only place where prerendering code remains in content
is in ResourceDispatcherHost.
As NavigationState can no longer be used to track
prerendering histogram information, the prerendering
renderer-side histograms have been reworked (And
renamed) as well.
The histogram intended to track use of
prerendering RenderViews has been removed, as
histograms are not recorded when a RenderView is
destroyed.
BUG=77090
TEST=Compiles, existing PrerenderBrowserTests, grep
Review URL: http://codereview.chromium.org/6900026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83642 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/blocked_plugin.cc')
-rw-r--r-- | chrome/renderer/blocked_plugin.cc | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/chrome/renderer/blocked_plugin.cc b/chrome/renderer/blocked_plugin.cc index 6917f21..a1a1897 100644 --- a/chrome/renderer/blocked_plugin.cc +++ b/chrome/renderer/blocked_plugin.cc @@ -150,11 +150,11 @@ bool BlockedPlugin::OnMessageReceived(const IPC::Message& message) { gLastActiveMenu == this) { ViewMsg_CustomContextMenuAction::Dispatch( &message, this, this, &BlockedPlugin::OnMenuItemSelected); - } else if (message.type() == ViewMsg_LoadBlockedPlugins::ID) { - LoadPlugin(); - } else if (message.type() == ViewMsg_DisplayPrerenderedPage::ID) { - if (is_blocked_for_prerendering_) - LoadPlugin(); + } else { + IPC_BEGIN_MESSAGE_MAP(BlockedPlugin, message) + IPC_MESSAGE_HANDLER(ViewMsg_LoadBlockedPlugins, OnLoadBlockedPlugins) + IPC_MESSAGE_HANDLER(ViewMsg_SetIsPrerendering, OnSetIsPrerendering) + IPC_END_MESSAGE_MAP() } return false; @@ -170,6 +170,18 @@ void BlockedPlugin::OnMenuItemSelected( } } +void BlockedPlugin::OnLoadBlockedPlugins() { + LoadPlugin(); +} + +void BlockedPlugin::OnSetIsPrerendering(bool is_prerendering) { + // Prerendering can only be enabled prior to a RenderView's first navigation, + // so no BlockedPlugin should see the notification that enables prerendering. + DCHECK(!is_prerendering); + if (!is_prerendering) + LoadPlugin(); +} + void BlockedPlugin::LoadPlugin() { CHECK(plugin_); // This is not strictly necessary but is an important defense in case the |