aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/webidls/Performance.webidl
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/dom/webidls/Performance.webidl')
-rw-r--r--components/script/dom/webidls/Performance.webidl46
1 files changed, 40 insertions, 6 deletions
diff --git a/components/script/dom/webidls/Performance.webidl b/components/script/dom/webidls/Performance.webidl
index 6aeaa6d11aa..5db6551ff96 100644
--- a/components/script/dom/webidls/Performance.webidl
+++ b/components/script/dom/webidls/Performance.webidl
@@ -1,19 +1,53 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
/*
* The origin of this IDL file is
- * https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/NavigationTiming/Overview.html#sec-window.performance-attribute
+ * https://w3c.github.io/hr-time/#sec-performance
*/
typedef double DOMHighResTimeStamp;
+typedef sequence<PerformanceEntry> PerformanceEntryList;
+[Exposed=(Window, Worker)]
+interface Performance : EventTarget {
+ DOMHighResTimeStamp now();
+ readonly attribute DOMHighResTimeStamp timeOrigin;
+ [Default] object toJSON();
+};
+
+// https://w3c.github.io/performance-timeline/#extensions-to-the-performance-interface
+[Exposed=(Window, Worker)]
+partial interface Performance {
+ PerformanceEntryList getEntries();
+ PerformanceEntryList getEntriesByType(DOMString type);
+ PerformanceEntryList getEntriesByName(DOMString name,
+ optional DOMString type);
+};
+
+// https://w3c.github.io/user-timing/#extensions-performance-interface
[Exposed=(Window,Worker)]
-interface Performance {
- readonly attribute PerformanceTiming timing;
- /* readonly attribute PerformanceNavigation navigation; */
+partial interface Performance {
+ [Throws]
+ void mark(DOMString markName);
+ void clearMarks(optional DOMString markName);
+ [Throws]
+ void measure(DOMString measureName, optional DOMString startMark, optional DOMString endMark);
+ void clearMeasures(optional DOMString measureName);
};
+//https://w3c.github.io/resource-timing/#sec-extensions-performance-interface
partial interface Performance {
- DOMHighResTimeStamp now();
+ void clearResourceTimings ();
+ void setResourceTimingBufferSize (unsigned long maxSize);
+ attribute EventHandler onresourcetimingbufferfull;
+};
+
+// https://w3c.github.io/navigation-timing/#extensions-to-the-performance-interface
+[Exposed=Window]
+partial interface Performance {
+ [SameObject]
+ readonly attribute PerformanceNavigationTiming timing;
+ [SameObject]
+ readonly attribute PerformanceNavigation navigation;
};