#include "InspectorAgentBase.h"
#include "InspectorFrontendChannel.h"
#include "JSGlobalObject.h"
+#include "JSLock.h"
#include "RemoteInspector.h"
using namespace Inspector;
return name.isEmpty() ? ASCIILiteral("JSContext") : name;
}
-void JSGlobalObjectDebuggable::connect(InspectorFrontendChannel* frontendChannel)
+void JSGlobalObjectDebuggable::connect(FrontendChannel* frontendChannel, bool automaticInspection)
{
JSLockHolder locker(&m_globalObject.vm());
- m_globalObject.inspectorController().connectFrontend(frontendChannel);
+ m_globalObject.inspectorController().connectFrontend(frontendChannel, automaticInspection);
}
void JSGlobalObjectDebuggable::disconnect()
{
JSLockHolder locker(&m_globalObject.vm());
- m_globalObject.inspectorController().disconnectFrontend(InspectorDisconnectReason::InspectorDestroyed);
+ m_globalObject.inspectorController().disconnectFrontend(DisconnectReason::InspectorDestroyed);
+}
+
+void JSGlobalObjectDebuggable::pause()
+{
+ JSLockHolder locker(&m_globalObject.vm());
+
+ m_globalObject.inspectorController().pause();
}
void JSGlobalObjectDebuggable::dispatchMessageFromRemoteFrontend(const String& message)
m_globalObject.inspectorController().dispatchMessageFromFrontend(message);
}
+void JSGlobalObjectDebuggable::pauseWaitingForAutomaticInspection()
+{
+ JSC::JSLock::DropAllLocks dropAllLocks(&m_globalObject.vm());
+ RemoteInspectorDebuggable::pauseWaitingForAutomaticInspection();
+}
+
} // namespace JSC
#endif // ENABLE(REMOTE_INSPECTOR)