Index: third_party/WebKit/Source/core/paint/PaintTiming.h |
diff --git a/third_party/WebKit/Source/core/paint/PaintTiming.h b/third_party/WebKit/Source/core/paint/PaintTiming.h |
index 488a2a3b68c5134ae9d75721e8d26f1fdc33b356..336e8cacad5cd3c060bae413375f939ce0029660 100644 |
--- a/third_party/WebKit/Source/core/paint/PaintTiming.h |
+++ b/third_party/WebKit/Source/core/paint/PaintTiming.h |
@@ -43,6 +43,7 @@ class CORE_EXPORT PaintTiming final |
void markFirstTextPaint(); |
void markFirstImagePaint(); |
+ void markFirstMeaningfulPaintCandidate(); |
void setFirstMeaningfulPaint(double stamp); |
void notifyPaint(bool isFirstPaint, bool textPainted, bool imagePainted); |
@@ -69,6 +70,14 @@ class CORE_EXPORT PaintTiming final |
// was painted. |
double firstMeaningfulPaint() const { return m_firstMeaningfulPaint; } |
+ // firstMeaningfulPaintCandidate indicates the first time we considered a |
+ // paint to qualify as the potentially first meaningful paint. Unlike |
+ // firstMeaningfulPaint, this signal is available in real time, but it may be |
+ // an optimistic (i.e., too early) estimate. |
+ double firstMeaningfulPaintCandidate() const { |
+ return m_firstMeaningfulPaintCandidate; |
+ } |
+ |
Document* document() { return m_document.get(); } |
FirstMeaningfulPaintDetector& firstMeaningfulPaintDetector() { |
return *m_fmpDetector; |
@@ -98,6 +107,7 @@ class CORE_EXPORT PaintTiming final |
double m_firstImagePaint = 0.0; |
double m_firstContentfulPaint = 0.0; |
double m_firstMeaningfulPaint = 0.0; |
+ double m_firstMeaningfulPaintCandidate = 0.0; |
Member<Document> m_document; |
Member<FirstMeaningfulPaintDetector> m_fmpDetector; |