Index: chrome/browser/page_load_metrics/page_load_metrics_update_dispatcher.h |
diff --git a/chrome/browser/page_load_metrics/page_load_metrics_update_dispatcher.h b/chrome/browser/page_load_metrics/page_load_metrics_update_dispatcher.h |
index 47f6e4f5171e0534183f852a14dad6a3af9cfc08..32c1a152452c11ea2ebd5c7d2f34adfd8c0f9ff4 100644 |
--- a/chrome/browser/page_load_metrics/page_load_metrics_update_dispatcher.h |
+++ b/chrome/browser/page_load_metrics/page_load_metrics_update_dispatcher.h |
@@ -9,6 +9,7 @@ |
#include "base/macros.h" |
#include "base/time/time.h" |
+#include "base/timer/timer.h" |
#include "chrome/common/page_load_metrics/page_load_metrics.mojom.h" |
namespace content { |
@@ -65,6 +66,8 @@ enum PageLoadTimingStatus { |
}; |
extern const char kPageLoadTimingStatus[]; |
+extern const char kHistogramOutOfOrderTiming[]; |
+extern const char kHistogramOutOfOrderTimingBuffered[]; |
} // namespace internal |
@@ -101,6 +104,8 @@ class PageLoadMetricsUpdateDispatcher { |
void DidFinishSubFrameNavigation( |
content::NavigationHandle* navigation_handle); |
+ void ShutDown(); |
+ |
const mojom::PageLoadTiming& timing() const { |
return *(current_merged_page_timing_.get()); |
} |
@@ -122,12 +127,7 @@ class PageLoadMetricsUpdateDispatcher { |
void UpdateMainFrameMetadata(const mojom::PageLoadMetadata& new_metadata); |
void UpdateSubFrameMetadata(const mojom::PageLoadMetadata& subframe_metadata); |
- // Merge values from |new_paint_timing| into |pending_merged_page_timing_|, |
- // offsetting any new timings by the |navigation_start_offset|. |
- void MergePaintTiming(base::TimeDelta navigation_start_offset, |
- const mojom::PaintTiming& new_paint_timing, |
- bool is_main_frame); |
- |
+ void MaybeDispatchTimingUpdates(bool did_merge_new_timing_value); |
void DispatchTimingUpdates(); |
// The client is guaranteed to outlive this object. |
@@ -136,6 +136,8 @@ class PageLoadMetricsUpdateDispatcher { |
// Interface to chrome features. Must outlive the class. |
PageLoadMetricsEmbedderInterface* const embedder_interface_; |
+ std::unique_ptr<base::Timer> timer_; |
Charlie Harrison
2017/05/30 14:49:07
#include <memory>
Bryan McQuade
2017/05/30 15:30:23
done
|
+ |
// Time the navigation for this page load was initiated. |
const base::TimeTicks navigation_start_; |