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

Unified Diff: chrome/common/page_load_metrics/page_load_metrics.mojom

Issue 2823523003: [Page Load Metrics] PageLoadMetrics Mojofication. (Closed)
Patch Set: Add browser test for mojofication. Created 3 years, 8 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 side-by-side diff with in-line comments
Download patch
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);
+};

Powered by Google App Engine
This is Rietveld 408576698