Index: components/page_load_metrics/renderer/metrics_render_frame_observer.h |
diff --git a/components/page_load_metrics/renderer/metrics_render_frame_observer.h b/components/page_load_metrics/renderer/metrics_render_frame_observer.h |
index 3648c805c8fde1560bd4b078a23563f76e0aabc4..ebfbf6de04fe494136e85aa4d199663d90780f62 100644 |
--- a/components/page_load_metrics/renderer/metrics_render_frame_observer.h |
+++ b/components/page_load_metrics/renderer/metrics_render_frame_observer.h |
@@ -8,6 +8,7 @@ |
#include <memory> |
#include "base/macros.h" |
+#include "components/page_load_metrics/common/page_load_metrics.mojom.h" |
#include "components/page_load_metrics/common/page_load_timing.h" |
#include "content/public/renderer/render_frame_observer.h" |
#include "third_party/WebKit/public/platform/WebLoadingBehaviorFlag.h" |
@@ -25,6 +26,10 @@ class PageTimingMetricsSender; |
class MetricsRenderFrameObserver : public content::RenderFrameObserver { |
public: |
explicit MetricsRenderFrameObserver(content::RenderFrame* render_frame); |
+ // For testing only. |
+ MetricsRenderFrameObserver( |
+ content::RenderFrame* render_frame, |
+ page_load_metrics::mojom::PageLoadMetricsPtr page_load_metrics); |
~MetricsRenderFrameObserver() override; |
// RenderFrameObserver implementation |
@@ -36,6 +41,9 @@ class MetricsRenderFrameObserver : public content::RenderFrameObserver { |
void OnDestruct() override; |
private: |
+ // Must be destroyed after |page_timing_metrics_sender_|. |
+ page_load_metrics::mojom::PageLoadMetricsPtr page_load_metrics_; |
+ |
// Will be null when we're not actively sending metrics. |
std::unique_ptr<PageTimingMetricsSender> page_timing_metrics_sender_; |