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

Unified Diff: components/page_load_metrics/browser/page_load_metrics_util.cc

Issue 1686643002: Add metric with time between background tab being foregrounded and the first paint (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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: 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 e28a4a3ce7d34e8e40a66a782573224431da5357..140e33994f6c261f5199ff669193f6955fb35697 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,35 @@
namespace page_load_metrics {
-bool EventOccurredInForeground(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);
+namespace {
+
+// Returns true if:
+// - We have timing information for the event.
+// - The event occurred prior to the page being moved to the background.
+bool InForeground(base::TimeDelta event, const PageLoadExtraInfo& info) {
Charlie Harrison 2016/02/22 23:25:56 nit: Why not "EventInForeground" for symmetry? I l
+ if (event.is_zero())
+ return false;
+
+ if (!info.started_in_foreground &&
+ (info.first_foreground_time.is_zero() ||
+ event < info.first_foreground_time)) {
+ return false;
+ }
+
+ return info.first_background_time.is_zero() ||
+ event < info.first_background_time;
+}
+
+} // namespace
+
+bool StartInForegroundEventInForeground(base::TimeDelta event,
+ const PageLoadExtraInfo& info) {
+ return info.started_in_foreground && InForeground(event, info);
+}
+
+bool StartInBackgroundEventInForeground(base::TimeDelta event,
+ const PageLoadExtraInfo& info) {
+ return !info.started_in_foreground && InForeground(event, info);
}
} // namespace page_load_metrics

Powered by Google App Engine
This is Rietveld 408576698