summaryrefslogtreecommitdiffstats
path: root/WebCore/inspector/Inspector.idl
blob: 155bfcd6a4802b0ed68e18abddf6ea5b773ff8f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
/*
 * Copyright (C) 2007, 2008 Apple Inc. All rights reserved.
 * Copyright (C) 2008 Matt Lilek <webkit@mattlilek.com>
 * Copyright (C) 2009, 2010 Google Inc. All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are
 * met:
 *
 *     * Redistributions of source code must retain the above copyright
 * notice, this list of conditions and the following disclaimer.
 *     * Redistributions in binary form must reproduce the above
 * copyright notice, this list of conditions and the following disclaimer
 * in the documentation and/or other materials provided with the
 * distribution.
 *     * Neither the name of Google Inc. nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

module core {
    interface [Conditional=INSPECTOR] Inspector {
        [notify] void addConsoleMessage(out Object messageObj);
        [notify] void addRecordToTimeline(out Object record);
        [notify] void addNodesToSearchResult(out Array nodeIds);
        [notify] void attributesUpdated(out long id, out Array attributes);
        [notify] void childNodeCountUpdated(out long id, out int newValue);
        [notify] void childNodeInserted(out long parentId, out long prevId, out Object node);
        [notify] void childNodeRemoved(out long parentId, out long id);
        [notify] void setChildNodes(out long parentId, out Array nodes);
        [notify] void setDetachedRoot(out Object root);
        [notify] void setDocument(out Value root);
        [notify] void updateConsoleMessageExpiredCount(out unsigned long count);
        [notify] void updateConsoleMessageRepeatCount(out unsigned long count);

        void storeLastActivePanel(in String panelName);

        void saveApplicationSettings(in String settings);
        void saveSessionSettings(in String settings);

        void enableSearchingForNode();
        void disableSearchingForNode();

        void enableMonitoringXHR();
        void disableMonitoringXHR();

        void enableResourceTracking(in boolean always);
        void disableResourceTracking(in boolean always);
        void getResourceContent(in long callId, in unsigned long identifier);
        void reloadPage();

        void startTimelineProfiler();
        void stopTimelineProfiler();

#if defined(ENABLE_JAVASCRIPT_DEBUGGER) && ENABLE_JAVASCRIPT_DEBUGGER
        void enableDebugger(in boolean always);
        void disableDebugger(in boolean always);

        void setBreakpoint(in long callId, in String sourceID, in unsigned long lineNumber, in boolean enabled, in String condition);
        void removeBreakpoint(in String sourceID, in unsigned long lineNumber);
        void activateBreakpoints();
        void deactivateBreakpoints();

        void pause();
        void resume();

        void stepOverStatement();
        void stepIntoStatement();
        void stepOutOfFunction();

        void setPauseOnExceptionsState(in long pauseOnExceptionsState);

        void editScriptSource(in long callId, in String sourceID, in String newContent);
        void getScriptSource(in long callId, in String sourceID);

        void enableProfiler(in boolean always);
        void disableProfiler(in boolean always);

        void startProfiling();
        void stopProfiling();

        void getProfileHeaders(in long callId);
        void getProfile(in long callId, in unsigned long uid);

        void removeProfile(in unsigned long uid);
        void clearProfiles();

        void takeHeapSnapshot();
#endif
        void setInjectedScriptSource(in String scriptSource);
        void dispatchOnInjectedScript(in long callId, in long injectedScriptId, in String methodName, in String arguments, in boolean async);

        void addScriptToEvaluateOnLoad(in String scriptSource);
        void removeAllScriptsToEvaluateOnLoad();

        void getChildNodes(in long callId, in long nodeId);
        [customResponse=didApplyDomChange] void setAttribute(in long callId, in long elementId, in String name, in String value, out boolean success);
        [customResponse=didApplyDomChange] void removeAttribute(in long callId, in long elementId, in String name, out boolean success);
        void setTextNodeValue(in long callId, in long nodeId, in String value);
        void getEventListenersForNode(in long callId, in long nodeId, out long nodeId, out Array listenersArray);
        void copyNode(in long nodeId);
        void removeNode(in long callId, in long nodeId, out long nodeId);
        void changeTagName(in long callId, in long nodeId, in String newTagName, out long nodeId);
        void getOuterHTML(in long callId, in long nodeId, out String outerHTML);
        void setOuterHTML(in long callId, in long nodeId, in String outerHTML, out long nodeId);
        void addInspectedNode(in long nodeId);
        void performSearch(in String query, in boolean runSynchronously);
        void searchCanceled();
        void pushNodeByPathToFrontend(in long callId, in String path, out long nodeId);

        void clearConsoleMessages(in long callId);

        void highlightDOMNode(in long nodeId);
        void hideDOMNodeHighlight();

        void getStyles(in long callId, in long nodeId, in boolean authOnly, out Value styles);
        void getAllStyles(in long callId, out Array styles);
        void getInlineStyle(in long callId, in long nodeId, out Value style);
        void getComputedStyle(in long callId, in long nodeId, out Value style);
        void getStyleSheet(in long callId, in long styleSheetId, out Value styleSheet);
        void getRuleRanges(in long callId, in long styleSheetId, out Value ranges);
        void applyStyleText(in long callId, in long styleId, in String styleText, in String propertyName, out boolean success, out Value style, out Array changedProperties);
        void setStyleText(in long callId, in long styleId, in String styleText, out boolean success);
        void setStyleProperty(in long callId, in long styleId, in String name, in String value, out boolean success);
        void toggleStyleEnabled(in long callId, in long styleId, in String propertyName, in boolean disabled, out Value style);
        void setRuleSelector(in long callId, in long ruleId, in String selector, in long selectedNodeId, out Value rule, out boolean selectorAffectsNode);
        void addRule(in long callId, in String selector, in long selectedNodeId, out Value rule, out boolean selectorAffectsNode);

        void getCookies(in long callId);
        void deleteCookie(in String cookieName, in String domain);

#if defined(ENABLE_OFFLINE_WEB_APPLICATIONS) && ENABLE_OFFLINE_WEB_APPLICATIONS
        void getApplicationCaches(in long callId);
#endif

        void releaseWrapperObjectGroup(in long injectedScriptId, in String objectGroup);
        void didEvaluateForTestInFrontend(in long callId, in String jsonResult);

#if defined(ENABLE_DATABASE) && ENABLE_DATABASE
        void getDatabaseTableNames(in long callId, in long databaseId);
#endif

#if defined(ENABLE_DOM_STORAGE) && ENABLE_DOM_STORAGE
        void getDOMStorageEntries(in long callId, in long storageId);
        void setDOMStorageItem(in long callId, in long storageId, in String key, in String value);
        void removeDOMStorageItem(in long callId, in long storageId, in String key);
#endif
    };
}