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); |
+}; |