Index: Source/core/inspector/InspectorDebuggerAgent.h |
diff --git a/Source/core/inspector/InspectorDebuggerAgent.h b/Source/core/inspector/InspectorDebuggerAgent.h |
index 5c1febac513706ecde09cb3b206ddcef32ac38ed..a0116d4e61c539729ec9c6a367c43fdab420fa71 100644 |
--- a/Source/core/inspector/InspectorDebuggerAgent.h |
+++ b/Source/core/inspector/InspectorDebuggerAgent.h |
@@ -35,16 +35,40 @@ |
namespace blink { |
-class CORE_EXPORT InspectorDebuggerAgent : public V8DebuggerAgent { |
+class CORE_EXPORT InspectorDebuggerAgent |
+ : public V8DebuggerAgent |
+ , public V8DebuggerAgent::Client { |
public: |
~InspectorDebuggerAgent() override; |
+ DECLARE_VIRTUAL_TRACE(); |
+ |
void enable(ErrorString*) override; |
+ // V8DebuggerAgent::Client implementation. |
+ void startListeningV8Debugger() override; |
+ void stopListeningV8Debugger() override; |
+ bool canPauseOnPromiseEvent() final; |
+ void didCreatePromise() final; |
+ void didResolvePromise() final; |
+ void didRejectPromise() final; |
+ |
+ class CORE_EXPORT Listener : public WillBeGarbageCollectedMixin { |
+ public: |
+ virtual ~Listener() { } |
+ virtual void debuggerWasEnabled() = 0; |
+ virtual void debuggerWasDisabled() = 0; |
+ virtual bool canPauseOnPromiseEvent() = 0; |
dgozman
2015/08/12 02:00:05
canPauseXXX is a strange method for the Listener.
|
+ virtual void didCreatePromise() = 0; |
+ virtual void didResolvePromise() = 0; |
+ virtual void didRejectPromise() = 0; |
+ }; |
+ void setListener(Listener* listener) { m_listener = listener; } |
+ |
protected: |
InspectorDebuggerAgent(InjectedScriptManager*, V8Debugger*); |
- void enable() override; |
- void disable() override; |
+private: |
+ RawPtrWillBeMember<Listener> m_listener; |
}; |
} // namespace blink |