Bug 1526591 - Remove devtools.inspector.shapesHighlighter.enabled pref. r=rcaliman
[gecko.git] / dom / webidl / ProfileTimelineMarker.webidl
blob24f3f9e0089d5145cb06b6d7d75e19d38832e5ee
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
4  * You can obtain one at http://mozilla.org/MPL/2.0/.
5  */
7 // For Javascript markers, the |stack| of a ProfileTimelineMarker
8 // holds an object of this type.  It intentionally looks like a
9 // SavedStack object and is a representation of the frame that is
10 // about to be constructed at the entry point.
11 dictionary ProfileTimelineStackFrame {
12   long line;
13   long column = 0;
14   DOMString source;
15   DOMString functionDisplayName;
16   object? parent = null;
17   object? asyncParent = null;
18   DOMString asyncCause;
21 dictionary ProfileTimelineLayerRect {
22   long x = 0;
23   long y = 0;
24   long width = 0;
25   long height = 0;
28 enum ProfileTimelineMessagePortOperationType {
29   "serializeData",
30   "deserializeData",
33 enum ProfileTimelineWorkerOperationType {
34   "serializeDataOffMainThread",
35   "serializeDataOnMainThread",
36   "deserializeDataOffMainThread",
37   "deserializeDataOnMainThread",
40 dictionary ProfileTimelineMarker {
41   DOMString name = "";
42   DOMHighResTimeStamp start = 0;
43   DOMHighResTimeStamp end = 0;
44   object? stack = null;
46   unsigned short processType;
47   boolean isOffMainThread;
49   /* For ConsoleTime, Timestamp and Javascript markers.  */
50   DOMString causeName;
52   /* For ConsoleTime markers.  */
53   object? endStack = null;
55   /* For DOMEvent markers.  */
56   DOMString type;
57   unsigned short eventPhase;
59   /* For document::DOMContentLoaded and document::Load markers. Using this
60    * instead of the `start` and `end` timestamps is strongly discouraged. */
61   unsigned long long unixTime; // in microseconds
63   /* For Paint markers.  */
64   sequence<ProfileTimelineLayerRect> rectangles;
66   /* For Style markers. */
67   boolean isAnimationOnly;
69   /* For MessagePort markers. */
70   ProfileTimelineMessagePortOperationType messagePortOperation;
72   /* For Worker markers. */
73   ProfileTimelineWorkerOperationType workerOperation;