| Index: chrome/browser/renderer_host/chrome_render_message_filter.cc
|
| diff --git a/chrome/browser/renderer_host/chrome_render_message_filter.cc b/chrome/browser/renderer_host/chrome_render_message_filter.cc
|
| index 50844e2db77e669046cbdcf8fbf1bf002ca6230f..9554980ccf3094f77739f39bc51f0f2d456e1947 100644
|
| --- a/chrome/browser/renderer_host/chrome_render_message_filter.cc
|
| +++ b/chrome/browser/renderer_host/chrome_render_message_filter.cc
|
| @@ -52,6 +52,7 @@
|
| using content::BrowserThread;
|
| using extensions::APIPermission;
|
| using WebKit::WebCache;
|
| +using chrome_browser_net::UrlInfo;
|
|
|
| namespace {
|
|
|
| @@ -121,6 +122,23 @@ void AddDOMActionToExtensionActivityLog(
|
| }
|
| }
|
|
|
| +UrlInfo::ResolutionMotivation convertWebToUrlInfoMotivation(
|
| + WebKit::WebPreconnectMotivation webMotivation) {
|
| + switch (webMotivation) {
|
| + case WebKit::WebPreconnectMotivationLinkMouseOver:
|
| + return UrlInfo::MOUSE_OVER_MOTIVATED;
|
| + case WebKit::WebPreconnectMotivationLinkMouseDown:
|
| + return UrlInfo::MOUSE_DOWN_MOTIVATED;
|
| + case WebKit::WebPreconnectMotivationLinkTapUnconfirmed:
|
| + return UrlInfo::TAP_UNCONFIRMED_MOTIVATED;
|
| + case WebKit::WebPreconnectMotivationLinkTapDown:
|
| + return UrlInfo::TAP_DOWN_MOTIVATED;
|
| + default:
|
| + NOTREACHED();
|
| + return UrlInfo::MOUSE_OVER_MOTIVATED;
|
| + }
|
| +}
|
| +
|
| } // namespace
|
|
|
| ChromeRenderMessageFilter::ChromeRenderMessageFilter(
|
| @@ -155,6 +173,7 @@ bool ChromeRenderMessageFilter::OnMessageReceived(const IPC::Message& message,
|
| OnOpenNaClExecutable)
|
| #endif
|
| IPC_MESSAGE_HANDLER(ChromeViewHostMsg_DnsPrefetch, OnDnsPrefetch)
|
| + IPC_MESSAGE_HANDLER(ChromeViewHostMsg_Preconnect, OnPreconnect)
|
| IPC_MESSAGE_HANDLER(ChromeViewHostMsg_ResourceTypeStats,
|
| OnResourceTypeStats)
|
| IPC_MESSAGE_HANDLER(ChromeViewHostMsg_UpdatedCacheStats,
|
| @@ -298,6 +317,15 @@ void ChromeRenderMessageFilter::OnDnsPrefetch(
|
| profile_->GetNetworkPredictor()->DnsPrefetchList(hostnames);
|
| }
|
|
|
| +void ChromeRenderMessageFilter::OnPreconnect(
|
| + const GURL& url,
|
| + WebKit::WebPreconnectMotivation motivation) {
|
| + if (profile_->GetNetworkPredictor())
|
| + profile_->GetNetworkPredictor()->PreconnectUrlAndSubresources(
|
| + url,
|
| + convertWebToUrlInfoMotivation(motivation));
|
| +}
|
| +
|
| void ChromeRenderMessageFilter::OnResourceTypeStats(
|
| const WebCache::ResourceTypeStats& stats) {
|
| HISTOGRAM_COUNTS("WebCoreCache.ImagesSizeKB",
|
|
|