Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(301)

Side by Side Diff: chrome/renderer/chrome_content_renderer_client.cc

Issue 14749005: Implement WebPrescientNetworking to trigger preconnect from Blink (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: remove UrlInfo decl Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/metrics/histogram.h" 9 #include "base/metrics/histogram.h"
10 #include "base/path_service.h" 10 #include "base/path_service.h"
(...skipping 22 matching lines...) Expand all
33 #include "chrome/renderer/content_settings_observer.h" 33 #include "chrome/renderer/content_settings_observer.h"
34 #include "chrome/renderer/extensions/chrome_v8_context.h" 34 #include "chrome/renderer/extensions/chrome_v8_context.h"
35 #include "chrome/renderer/extensions/chrome_v8_extension.h" 35 #include "chrome/renderer/extensions/chrome_v8_extension.h"
36 #include "chrome/renderer/extensions/dispatcher.h" 36 #include "chrome/renderer/extensions/dispatcher.h"
37 #include "chrome/renderer/extensions/extension_helper.h" 37 #include "chrome/renderer/extensions/extension_helper.h"
38 #include "chrome/renderer/extensions/miscellaneous_bindings.h" 38 #include "chrome/renderer/extensions/miscellaneous_bindings.h"
39 #include "chrome/renderer/extensions/resource_request_policy.h" 39 #include "chrome/renderer/extensions/resource_request_policy.h"
40 #include "chrome/renderer/external_extension.h" 40 #include "chrome/renderer/external_extension.h"
41 #include "chrome/renderer/loadtimes_extension_bindings.h" 41 #include "chrome/renderer/loadtimes_extension_bindings.h"
42 #include "chrome/renderer/net/net_error_helper.h" 42 #include "chrome/renderer/net/net_error_helper.h"
43 #include "chrome/renderer/net/prescient_networking_dispatcher.h"
43 #include "chrome/renderer/net/renderer_net_predictor.h" 44 #include "chrome/renderer/net/renderer_net_predictor.h"
44 #include "chrome/renderer/net_benchmarking_extension.h" 45 #include "chrome/renderer/net_benchmarking_extension.h"
45 #include "chrome/renderer/one_click_signin_agent.h" 46 #include "chrome/renderer/one_click_signin_agent.h"
46 #include "chrome/renderer/page_load_histograms.h" 47 #include "chrome/renderer/page_load_histograms.h"
47 #include "chrome/renderer/pepper/chrome_ppapi_interfaces.h" 48 #include "chrome/renderer/pepper/chrome_ppapi_interfaces.h"
48 #include "chrome/renderer/pepper/pepper_helper.h" 49 #include "chrome/renderer/pepper/pepper_helper.h"
49 #include "chrome/renderer/playback_extension.h" 50 #include "chrome/renderer/playback_extension.h"
50 #include "chrome/renderer/plugins/plugin_placeholder.h" 51 #include "chrome/renderer/plugins/plugin_placeholder.h"
51 #include "chrome/renderer/plugins/plugin_uma.h" 52 #include "chrome/renderer/plugins/plugin_uma.h"
52 #include "chrome/renderer/prerender/prerender_dispatcher.h" 53 #include "chrome/renderer/prerender/prerender_dispatcher.h"
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after
207 g_current_client = this; 208 g_current_client = this;
208 } 209 }
209 210
210 ChromeContentRendererClient::~ChromeContentRendererClient() { 211 ChromeContentRendererClient::~ChromeContentRendererClient() {
211 g_current_client = NULL; 212 g_current_client = NULL;
212 } 213 }
213 214
214 void ChromeContentRendererClient::RenderThreadStarted() { 215 void ChromeContentRendererClient::RenderThreadStarted() {
215 chrome_observer_.reset(new ChromeRenderProcessObserver(this)); 216 chrome_observer_.reset(new ChromeRenderProcessObserver(this));
216 extension_dispatcher_.reset(new extensions::Dispatcher()); 217 extension_dispatcher_.reset(new extensions::Dispatcher());
218 prescient_networking_dispatcher_.reset(new PrescientNetworkingDispatcher());
217 net_predictor_.reset(new RendererNetPredictor()); 219 net_predictor_.reset(new RendererNetPredictor());
218 spellcheck_.reset(new SpellCheck()); 220 spellcheck_.reset(new SpellCheck());
219 visited_link_slave_.reset(new components::VisitedLinkSlave()); 221 visited_link_slave_.reset(new components::VisitedLinkSlave());
220 #if defined(FULL_SAFE_BROWSING) 222 #if defined(FULL_SAFE_BROWSING)
221 phishing_classifier_.reset(safe_browsing::PhishingClassifierFilter::Create()); 223 phishing_classifier_.reset(safe_browsing::PhishingClassifierFilter::Create());
222 #endif 224 #endif
223 prerender_dispatcher_.reset(new prerender::PrerenderDispatcher()); 225 prerender_dispatcher_.reset(new prerender::PrerenderDispatcher());
224 226
225 RenderThread* thread = RenderThread::Get(); 227 RenderThread* thread = RenderThread::Get();
226 228
(...skipping 784 matching lines...) Expand 10 before | Expand all | Expand 10 after
1011 1013
1012 bool ChromeContentRendererClient::IsLinkVisited(unsigned long long link_hash) { 1014 bool ChromeContentRendererClient::IsLinkVisited(unsigned long long link_hash) {
1013 return visited_link_slave_->IsVisited(link_hash); 1015 return visited_link_slave_->IsVisited(link_hash);
1014 } 1016 }
1015 1017
1016 void ChromeContentRendererClient::PrefetchHostName(const char* hostname, 1018 void ChromeContentRendererClient::PrefetchHostName(const char* hostname,
1017 size_t length) { 1019 size_t length) {
1018 net_predictor_->Resolve(hostname, length); 1020 net_predictor_->Resolve(hostname, length);
1019 } 1021 }
1020 1022
1023 WebKit::WebPrescientNetworking*
1024 ChromeContentRendererClient::PrescientNetworking() {
1025 return prescient_networking_dispatcher_.get();
1026 }
1027
1021 bool ChromeContentRendererClient::ShouldOverridePageVisibilityState( 1028 bool ChromeContentRendererClient::ShouldOverridePageVisibilityState(
1022 const content::RenderView* render_view, 1029 const content::RenderView* render_view,
1023 WebKit::WebPageVisibilityState* override_state) const { 1030 WebKit::WebPageVisibilityState* override_state) const {
1024 if (!prerender::PrerenderHelper::IsPrerendering(render_view)) 1031 if (!prerender::PrerenderHelper::IsPrerendering(render_view))
1025 return false; 1032 return false;
1026 1033
1027 *override_state = WebKit::WebPageVisibilityStatePrerender; 1034 *override_state = WebKit::WebPageVisibilityStatePrerender;
1028 return true; 1035 return true;
1029 } 1036 }
1030 1037
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
1176 1183
1177 if (container->element().shadowHost().isNull()) 1184 if (container->element().shadowHost().isNull())
1178 return false; 1185 return false;
1179 1186
1180 WebString tag_name = container->element().shadowHost().tagName(); 1187 WebString tag_name = container->element().shadowHost().tagName();
1181 return tag_name.equals(WebString::fromUTF8(kWebViewTagName)) || 1188 return tag_name.equals(WebString::fromUTF8(kWebViewTagName)) ||
1182 tag_name.equals(WebString::fromUTF8(kAdViewTagName)); 1189 tag_name.equals(WebString::fromUTF8(kAdViewTagName));
1183 } 1190 }
1184 1191
1185 } // namespace chrome 1192 } // namespace chrome
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698