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

Side by Side Diff: components/page_load_metrics/common/page_load_timing.cc

Issue 1312213010: PageLoadMetrics renderer and browser implementation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: nits Created 5 years, 3 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 unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "components/page_load_metrics/common/page_load_timing.h"
6 #include "third_party/WebKit/public/web/WebPerformance.h"
jochen (gone - plz use gerrit) 2015/09/18 08:30:47 it's not safe to include this header in common/ o
7
8 namespace page_load_metrics {
9
10 namespace {
11
12 base::TimeDelta ClampDelta(double event_ms, double start_ms) {
13 double delta = event_ms - start_ms;
14 return base::TimeDelta::FromMillisecondsD(delta < 0 ? 0 : delta);
15 }
16
17 } // namespace
18
19 PageLoadTiming::PageLoadTiming() {}
20
21 PageLoadTiming::PageLoadTiming(const blink::WebPerformance& perf) {
22 double start = perf.navigationStart();
23 navigation_start = base::Time::FromDoubleT(start);
24 response_start = ClampDelta(perf.responseStart(), start);
25 dom_content_loaded_event_start =
26 ClampDelta(perf.domContentLoadedEventStart(), start);
27 load_event_start = ClampDelta(perf.loadEventStart(), start);
28 first_layout = ClampDelta(perf.firstLayout(), start);
29 }
30
31 PageLoadTiming::~PageLoadTiming() {}
32
33 bool PageLoadTiming::operator==(const PageLoadTiming& other) const {
34 return navigation_start == other.navigation_start &&
35 response_start == other.response_start &&
36 dom_content_loaded_event_start ==
37 other.dom_content_loaded_event_start &&
38 load_event_start == other.load_event_start &&
39 first_layout == other.first_layout;
40 }
41
42 bool PageLoadTiming::IsEmpty() const {
43 return navigation_start.is_null() && response_start.is_zero() &&
44 dom_content_loaded_event_start.is_zero() &&
45 load_event_start.is_zero() && first_layout.is_zero();
46 }
47
48 } // namespace page_load_metrics
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698