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

Side by Side Diff: third_party/WebKit/Source/core/loader/DocumentLoader.cpp

Issue 2647643004: Report nav timing 2 instance as soon as it's requested. (Closed)
Patch Set: make a copy of navigationTimingInfo for ResourceFetcher Created 3 years, 10 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 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved.
3 * Copyright (C) 2011 Google Inc. All rights reserved. 3 * Copyright (C) 2011 Google Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 8 *
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 #include "platform/HTTPNames.h" 60 #include "platform/HTTPNames.h"
61 #include "platform/UserGestureIndicator.h" 61 #include "platform/UserGestureIndicator.h"
62 #include "platform/loader/fetch/FetchInitiatorTypeNames.h" 62 #include "platform/loader/fetch/FetchInitiatorTypeNames.h"
63 #include "platform/loader/fetch/FetchRequest.h" 63 #include "platform/loader/fetch/FetchRequest.h"
64 #include "platform/loader/fetch/FetchUtils.h" 64 #include "platform/loader/fetch/FetchUtils.h"
65 #include "platform/loader/fetch/MemoryCache.h" 65 #include "platform/loader/fetch/MemoryCache.h"
66 #include "platform/loader/fetch/ResourceFetcher.h" 66 #include "platform/loader/fetch/ResourceFetcher.h"
67 #include "platform/mhtml/ArchiveResource.h" 67 #include "platform/mhtml/ArchiveResource.h"
68 #include "platform/network/ContentSecurityPolicyResponseHeaders.h" 68 #include "platform/network/ContentSecurityPolicyResponseHeaders.h"
69 #include "platform/network/HTTPParsers.h" 69 #include "platform/network/HTTPParsers.h"
70 #include "platform/network/ResourceTimingInfo.h"
70 #include "platform/network/mime/MIMETypeRegistry.h" 71 #include "platform/network/mime/MIMETypeRegistry.h"
71 #include "platform/plugins/PluginData.h" 72 #include "platform/plugins/PluginData.h"
72 #include "platform/weborigin/SchemeRegistry.h" 73 #include "platform/weborigin/SchemeRegistry.h"
73 #include "platform/weborigin/SecurityPolicy.h" 74 #include "platform/weborigin/SecurityPolicy.h"
74 #include "public/platform/Platform.h" 75 #include "public/platform/Platform.h"
75 #include "public/platform/WebDocumentSubresourceFilter.h" 76 #include "public/platform/WebDocumentSubresourceFilter.h"
76 #include "wtf/Assertions.h" 77 #include "wtf/Assertions.h"
77 #include "wtf/AutoReset.h" 78 #include "wtf/AutoReset.h"
78 #include "wtf/text/WTFString.h" 79 #include "wtf/text/WTFString.h"
79 #include <memory> 80 #include <memory>
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 visitor->trace(m_documentLoadTiming); 158 visitor->trace(m_documentLoadTiming);
158 visitor->trace(m_applicationCacheHost); 159 visitor->trace(m_applicationCacheHost);
159 visitor->trace(m_contentSecurityPolicy); 160 visitor->trace(m_contentSecurityPolicy);
160 RawResourceClient::trace(visitor); 161 RawResourceClient::trace(visitor);
161 } 162 }
162 163
163 unsigned long DocumentLoader::mainResourceIdentifier() const { 164 unsigned long DocumentLoader::mainResourceIdentifier() const {
164 return m_mainResource ? m_mainResource->identifier() : 0; 165 return m_mainResource ? m_mainResource->identifier() : 0;
165 } 166 }
166 167
167 ResourceTimingInfo* DocumentLoader::getNavigationTimingInfo() const { 168 std::unique_ptr<ResourceTimingInfo> DocumentLoader::getNavigationTimingInfo()
169 const {
170 DCHECK(fetcher());
168 return fetcher()->getNavigationTimingInfo(); 171 return fetcher()->getNavigationTimingInfo();
169 } 172 }
170 173
171 const ResourceRequest& DocumentLoader::originalRequest() const { 174 const ResourceRequest& DocumentLoader::originalRequest() const {
172 return m_originalRequest; 175 return m_originalRequest;
173 } 176 }
174 177
175 const ResourceRequest& DocumentLoader::getRequest() const { 178 const ResourceRequest& DocumentLoader::getRequest() const {
176 return m_request; 179 return m_request;
177 } 180 }
(...skipping 636 matching lines...) Expand 10 before | Expand all | Expand 10 after
814 m_writer ? m_writer->encoding() : emptyAtom, true, 817 m_writer ? m_writer->encoding() : emptyAtom, true,
815 ForceSynchronousParsing); 818 ForceSynchronousParsing);
816 if (!source.isNull()) 819 if (!source.isNull())
817 m_writer->appendReplacingData(source); 820 m_writer->appendReplacingData(source);
818 endWriting(); 821 endWriting();
819 } 822 }
820 823
821 DEFINE_WEAK_IDENTIFIER_MAP(DocumentLoader); 824 DEFINE_WEAK_IDENTIFIER_MAP(DocumentLoader);
822 825
823 } // namespace blink 826 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698