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

Unified Diff: third_party/WebKit/Source/core/timing/PerformanceBase.h

Issue 2647643004: Report nav timing 2 instance as soon as it's requested. (Closed)
Patch Set: addressed comments 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/timing/PerformanceBase.h
diff --git a/third_party/WebKit/Source/core/timing/PerformanceBase.h b/third_party/WebKit/Source/core/timing/PerformanceBase.h
index 882a008281bcf5d309b7c80a0247cbfeb22701ff..373944c79cc5c11c2f7b4c6dba76edd59208d5b8 100644
--- a/third_party/WebKit/Source/core/timing/PerformanceBase.h
+++ b/third_party/WebKit/Source/core/timing/PerformanceBase.h
@@ -49,7 +49,6 @@
namespace blink {
class ExceptionState;
-class LocalFrame;
class PerformanceObserver;
class PerformanceTiming;
class ResourceResponse;
@@ -88,7 +87,7 @@ class CORE_EXPORT PerformanceBase : public EventTargetWithInlineData {
double timeOrigin() const { return m_timeOrigin; }
- PerformanceEntryVector getEntries() const;
+ PerformanceEntryVector getEntries();
PerformanceEntryVector getEntriesByType(const String& entryType);
PerformanceEntryVector getEntriesByName(const String& name,
const String& entryType);
@@ -112,7 +111,7 @@ class CORE_EXPORT PerformanceBase : public EventTargetWithInlineData {
void addResourceTiming(const ResourceTimingInfo&);
- void addNavigationTiming(LocalFrame*);
+ void notifyNavigationTimingToObservers();
void addFirstPaintTiming(double startTime);
@@ -133,18 +132,14 @@ class CORE_EXPORT PerformanceBase : public EventTargetWithInlineData {
void activateObserver(PerformanceObserver&);
void resumeSuspendedObservers();
- DECLARE_VIRTUAL_TRACE();
-
- private:
- static PerformanceNavigationTiming::NavigationType getNavigationType(
- NavigationType,
- const Document*);
-
static bool allowsTimingRedirect(const Vector<ResourceResponse>&,
const ResourceResponse&,
const SecurityOrigin&,
ExecutionContext*);
+ DECLARE_VIRTUAL_TRACE();
+
+ private:
static bool passesTimingAllowCheck(const ResourceResponse&,
const SecurityOrigin&,
const AtomicString&,
@@ -155,6 +150,12 @@ class CORE_EXPORT PerformanceBase : public EventTargetWithInlineData {
protected:
explicit PerformanceBase(double timeOrigin, RefPtr<WebTaskRunner>);
+ // Expect Performance to override this method,
+ // WorkerPerformance doesn't have to override this.
+ virtual PerformanceNavigationTiming* createNavigationTimingInstance() {
+ return nullptr;
+ }
+
bool isResourceTimingBufferFull();
void addResourceTimingBuffer(PerformanceEntry&);

Powered by Google App Engine
This is Rietveld 408576698