Index: components/page_load_metrics/browser/page_load_metrics_util.cc |
diff --git a/components/page_load_metrics/browser/page_load_metrics_util.cc b/components/page_load_metrics/browser/page_load_metrics_util.cc |
index dbfa35ebad04390d702be6642f8a546ce3715e76..e7e26a17f4bc5156d8d18395eabbf2ce58f3b77d 100644 |
--- a/components/page_load_metrics/browser/page_load_metrics_util.cc |
+++ b/components/page_load_metrics/browser/page_load_metrics_util.cc |
@@ -11,11 +11,24 @@ |
namespace page_load_metrics { |
-bool WasStartedInForegroundEventInForeground(base::TimeDelta event, |
+bool WasStartedInForegroundEventInForeground(const base::TimeDelta& event, |
const PageLoadExtraInfo& info) { |
return info.started_in_foreground && !event.is_zero() && |
(info.first_background_time.is_zero() || |
event < info.first_background_time); |
} |
+bool WasParseInForeground(const base::TimeDelta& parse_start, |
+ const base::TimeDelta& parse_stop, |
+ const PageLoadExtraInfo& info) { |
+ if (parse_start.is_zero()) { |
+ return false; |
+ } |
+ const bool incomplete_parse_in_foreground = |
+ parse_stop.is_zero() && info.started_in_foreground && |
+ info.first_background_time.is_zero(); |
+ |
+ return incomplete_parse_in_foreground || |
+ WasStartedInForegroundEventInForeground(parse_stop, info); |
+} |
} // namespace page_load_metrics |