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

Side by Side Diff: Source/core/inspector/InspectorDebuggerAgent.h

Issue 114033002: DevTools: Capture async stacks for event listeners. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: addressed Created 7 years 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2010 Apple Inc. All rights reserved.
3 * Copyright (C) 2010-2011 Google Inc. All rights reserved. 3 * Copyright (C) 2010-2011 Google Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 8 *
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 14 matching lines...) Expand all
25 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 */ 28 */
29 29
30 #ifndef InspectorDebuggerAgent_h 30 #ifndef InspectorDebuggerAgent_h
31 #define InspectorDebuggerAgent_h 31 #define InspectorDebuggerAgent_h
32 32
33 #include "InspectorFrontend.h" 33 #include "InspectorFrontend.h"
34 #include "bindings/v8/ScriptState.h" 34 #include "bindings/v8/ScriptState.h"
35 #include "core/frame/ConsoleTypes.h"
35 #include "core/inspector/AsyncCallStackTracker.h" 36 #include "core/inspector/AsyncCallStackTracker.h"
36 #include "core/inspector/ConsoleAPITypes.h" 37 #include "core/inspector/ConsoleAPITypes.h"
37 #include "core/inspector/InjectedScript.h" 38 #include "core/inspector/InjectedScript.h"
38 #include "core/inspector/InspectorBaseAgent.h" 39 #include "core/inspector/InspectorBaseAgent.h"
39 #include "core/inspector/ScriptBreakpoint.h" 40 #include "core/inspector/ScriptBreakpoint.h"
40 #include "core/inspector/ScriptDebugListener.h" 41 #include "core/inspector/ScriptDebugListener.h"
41 #include "core/frame/ConsoleTypes.h"
42 #include "wtf/Forward.h" 42 #include "wtf/Forward.h"
43 #include "wtf/HashMap.h" 43 #include "wtf/HashMap.h"
44 #include "wtf/PassRefPtr.h" 44 #include "wtf/PassRefPtr.h"
45 #include "wtf/Vector.h" 45 #include "wtf/Vector.h"
46 #include "wtf/text/StringHash.h" 46 #include "wtf/text/StringHash.h"
47 47
48 namespace WebCore { 48 namespace WebCore {
49 49
50 class Document; 50 class Document;
51 class EventListener;
52 class EventTarget;
51 class InjectedScriptManager; 53 class InjectedScriptManager;
52 class InspectorFrontend; 54 class InspectorFrontend;
53 class InstrumentingAgents; 55 class InstrumentingAgents;
54 class JSONObject; 56 class JSONObject;
55 class ScriptArguments; 57 class ScriptArguments;
56 class ScriptCallStack; 58 class ScriptCallStack;
57 class ScriptDebugServer; 59 class ScriptDebugServer;
60 class ScriptRegexp;
58 class ScriptSourceCode; 61 class ScriptSourceCode;
59 class ScriptValue; 62 class ScriptValue;
60 class ScriptRegexp;
61 63
62 typedef String ErrorString; 64 typedef String ErrorString;
63 65
64 class InspectorDebuggerAgent : public InspectorBaseAgent<InspectorDebuggerAgent> , public ScriptDebugListener, public InspectorBackendDispatcher::DebuggerCommand Handler { 66 class InspectorDebuggerAgent : public InspectorBaseAgent<InspectorDebuggerAgent> , public ScriptDebugListener, public InspectorBackendDispatcher::DebuggerCommand Handler {
65 WTF_MAKE_NONCOPYABLE(InspectorDebuggerAgent); WTF_MAKE_FAST_ALLOCATED; 67 WTF_MAKE_NONCOPYABLE(InspectorDebuggerAgent); WTF_MAKE_FAST_ALLOCATED;
66 public: 68 public:
67 enum BreakpointSource { 69 enum BreakpointSource {
68 UserBreakpointSource, 70 UserBreakpointSource,
69 DebugCommandBreakpointSource, 71 DebugCommandBreakpointSource,
70 MonitorCommandBreakpointSource 72 MonitorCommandBreakpointSource
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 133
132 void schedulePauseOnNextStatement(InspectorFrontend::Debugger::Reason::Enum breakReason, PassRefPtr<JSONObject> data); 134 void schedulePauseOnNextStatement(InspectorFrontend::Debugger::Reason::Enum breakReason, PassRefPtr<JSONObject> data);
133 void didInstallTimer(ExecutionContext*, int timerId, int timeout, bool singl eShot); 135 void didInstallTimer(ExecutionContext*, int timerId, int timeout, bool singl eShot);
134 void didRemoveTimer(ExecutionContext*, int timerId); 136 void didRemoveTimer(ExecutionContext*, int timerId);
135 bool willFireTimer(ExecutionContext*, int timerId); 137 bool willFireTimer(ExecutionContext*, int timerId);
136 void didFireTimer(); 138 void didFireTimer();
137 void didRequestAnimationFrame(Document*, int callbackId); 139 void didRequestAnimationFrame(Document*, int callbackId);
138 void didCancelAnimationFrame(Document*, int callbackId); 140 void didCancelAnimationFrame(Document*, int callbackId);
139 bool willFireAnimationFrame(Document*, int callbackId); 141 bool willFireAnimationFrame(Document*, int callbackId);
140 void didFireAnimationFrame(); 142 void didFireAnimationFrame();
143 void didAddEventListener(EventTarget*, const AtomicString& eventType, EventL istener*, bool useCapture);
144 void didRemoveEventListener(EventTarget*, const AtomicString& eventType, Eve ntListener*, bool useCapture);
145 void didRemoveAllEventListeners(EventTarget*);
146 void willHandleEvent(EventTarget*, const AtomicString& eventType, EventListe ner*, bool useCapture);
141 void didHandleEvent(); 147 void didHandleEvent();
142 bool canBreakProgram(); 148 bool canBreakProgram();
143 void breakProgram(InspectorFrontend::Debugger::Reason::Enum breakReason, Pas sRefPtr<JSONObject> data); 149 void breakProgram(InspectorFrontend::Debugger::Reason::Enum breakReason, Pas sRefPtr<JSONObject> data);
144 virtual void scriptExecutionBlockedByCSP(const String& directiveText); 150 virtual void scriptExecutionBlockedByCSP(const String& directiveText);
145 151
146 class Listener { 152 class Listener {
147 public: 153 public:
148 virtual ~Listener() { } 154 virtual ~Listener() { }
149 virtual void debuggerWasEnabled() = 0; 155 virtual void debuggerWasEnabled() = 0;
150 virtual void debuggerWasDisabled() = 0; 156 virtual void debuggerWasDisabled() = 0;
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 int m_skipStepInCount; 231 int m_skipStepInCount;
226 bool m_skipAllPauses; 232 bool m_skipAllPauses;
227 OwnPtr<ScriptRegexp> m_cachedSkipStackRegExp; 233 OwnPtr<ScriptRegexp> m_cachedSkipStackRegExp;
228 AsyncCallStackTracker m_asyncCallStackTracker; 234 AsyncCallStackTracker m_asyncCallStackTracker;
229 }; 235 };
230 236
231 } // namespace WebCore 237 } // namespace WebCore
232 238
233 239
234 #endif // !defined(InspectorDebuggerAgent_h) 240 #endif // !defined(InspectorDebuggerAgent_h)
OLDNEW
« no previous file with comments | « Source/core/inspector/InspectorDOMDebuggerAgent.cpp ('k') | Source/core/inspector/InspectorDebuggerAgent.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698