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. |
|
Bryan McQuade
2017/04/24 21:50:55
interesting, do all types sent over mojo have to b
lpy
2017/04/25 09:03:37
I think that's how mojo works since I am following
Ken Rockot(use gerrit already)
2017/04/25 19:31:46
Absolutely yes, everything sent over Mojo has to b
Bryan McQuade
2017/04/26 01:55:42
Ah, ok, thanks! Is it possible to declare the stru
Ken Rockot(use gerrit already)
2017/04/26 03:08:01
No, and we won't be supporting that. I mean, you c
|
| + |
| +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; |
| + 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 { |
|
Bryan McQuade
2017/04/24 21:50:55
though I don't have a better name for this service
Ken Rockot(use gerrit already)
2017/04/25 19:31:46
terminology nit: it's not a service.
All mojo int
Bryan McQuade
2017/04/26 01:55:42
the mojom:: namespace does help to clarify the cla
|
| + UpdateTiming(PageLoadTiming page_load_timing, PageLoadMetadata page_load_metadata); |
| +}; |