Chromium Code Reviews| Index: chrome/common/page_load_metrics/page_load_metrics.mojom |
| diff --git a/chrome/common/page_load_metrics/page_load_metrics.mojom b/chrome/common/page_load_metrics/page_load_metrics.mojom |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..13b8d18db582c5b6e6d474702310ffb4c8b4b8af |
| --- /dev/null |
| +++ b/chrome/common/page_load_metrics/page_load_metrics.mojom |
| @@ -0,0 +1,56 @@ |
| +// Copyright 2017 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +module page_load_metrics.mojom; |
| + |
| +import "mojo/common/time.mojom"; |
| + |
| +// See comments in page_load_timing.h for details on each field. |
| + |
| +struct DocumentTiming { |
| + mojo.common.mojom.TimeDelta? dom_content_loaded_event_start; |
| + mojo.common.mojom.TimeDelta? load_event_start; |
| + mojo.common.mojom.TimeDelta? first_layout; |
| +}; |
| + |
| +struct PaintTiming { |
| + mojo.common.mojom.TimeDelta? first_paint; |
| + mojo.common.mojom.TimeDelta? first_text_paint; |
| + mojo.common.mojom.TimeDelta? first_image_paint; |
| + mojo.common.mojom.TimeDelta? first_contentful_paint; |
| + mojo.common.mojom.TimeDelta? first_meaningful_paint; |
| +}; |
| + |
| +struct ParseTiming { |
| + mojo.common.mojom.TimeDelta? parse_start; |
| + mojo.common.mojom.TimeDelta? parse_stop; |
| + mojo.common.mojom.TimeDelta? parse_blocked_on_script_load_duration; |
| + mojo.common.mojom.TimeDelta? parse_blocked_on_script_load_from_document_write_duration; |
| + mojo.common.mojom.TimeDelta? parse_blocked_on_script_execution_duration; |
| + mojo.common.mojom.TimeDelta? parse_blocked_on_script_execution_from_document_write_duration; |
| +}; |
| + |
| +struct StyleSheetTiming { |
| + mojo.common.mojom.TimeDelta? author_style_sheet_parse_duration_before_fcp; |
| + mojo.common.mojom.TimeDelta? update_style_duration_before_fcp; |
| +}; |
| + |
| +struct PageLoadTiming { |
| + mojo.common.mojom.Time navigation_start; |
| + mojo.common.mojom.TimeDelta? response_start; |
| + DocumentTiming document_timing; |
|
Bryan McQuade
2017/04/26 15:24:22
In looking at the generated code for this struct i
Ken Rockot(use gerrit already)
2017/04/26 15:28:45
Yes, this is the point of typemapping. You typemap
Bryan McQuade
2017/04/26 20:41:51
Based on other discussions on the thread, I'm incl
lpy
2017/04/27 10:58:35
I prefer not to do it. I don't see clear benefit e
Bryan McQuade
2017/04/27 15:42:32
Ok. Just so I better understand, if we were writin
lpy
2017/05/05 17:49:30
Acknowledged.
|
| + PaintTiming paint_timing; |
| + ParseTiming parse_timing; |
| + StyleSheetTiming style_sheet_timing; |
| +}; |
| + |
| +struct PageLoadMetadata { |
| + int32 behavior_flags; |
| +}; |
| + |
| +// Sent from renderer to browser process when the PageLoadTiming for the |
| +// associated frame changed. |
| +interface PageLoadMetrics { |
| + UpdateTiming(PageLoadTiming page_load_timing, PageLoadMetadata page_load_metadata); |
|
Bryan McQuade
2017/04/26 15:24:22
similarly, the generated code appears to be using
lpy
2017/05/05 17:49:30
Acknowledged.
|
| +}; |