Chromium Code Reviews| 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 |