#include "config.h"
#include "core/inspector/InspectorInspectorAgent.h"
-#include "InspectorFrontend.h"
-#include "bindings/v8/DOMWrapperWorld.h"
-#include "bindings/v8/ScriptController.h"
+#include "bindings/core/v8/DOMWrapperWorld.h"
+#include "bindings/core/v8/ScriptController.h"
+#include "core/InspectorFrontend.h"
#include "core/dom/Document.h"
#include "core/frame/LocalFrame.h"
#include "core/inspector/InjectedScriptHost.h"
#include "platform/weborigin/SecurityOrigin.h"
#include "wtf/text/StringBuilder.h"
-namespace WebCore {
+namespace blink {
namespace InspectorAgentState {
static const char inspectorAgentEnabled[] = "inspectorAgentEnabled";
InspectorInspectorAgent::~InspectorInspectorAgent()
{
+#if !ENABLE(OILPAN)
m_instrumentingAgents->setInspectorInspectorAgent(0);
+#endif
}
-void InspectorInspectorAgent::didClearWindowObjectInMainWorld(LocalFrame* frame)
+void InspectorInspectorAgent::trace(Visitor* visitor)
+{
+ visitor->trace(m_inspectedPage);
+ visitor->trace(m_injectedScriptManager);
+ InspectorBaseAgent::trace(visitor);
+}
+
+void InspectorInspectorAgent::didClearDocumentOfWindowObject(LocalFrame* frame)
{
if (m_injectedScriptForOrigin.isEmpty())
return;
String script = m_injectedScriptForOrigin.get(origin);
if (script.isEmpty())
return;
- int injectedScriptId = m_injectedScriptManager->injectedScriptIdFor(mainWorldScriptState(frame));
+ int injectedScriptId = m_injectedScriptManager->injectedScriptIdFor(ScriptState::forMainWorld(frame));
StringBuilder scriptSource;
scriptSource.append(script);
- scriptSource.append("(");
+ scriptSource.append('(');
scriptSource.appendNumber(injectedScriptId);
- scriptSource.append(")");
+ scriptSource.append(')');
frame->script().executeScriptInMainWorld(scriptSource.toString());
}
void InspectorInspectorAgent::setFrontend(InspectorFrontend* inspectorFrontend)
{
- m_frontend = inspectorFrontend;
+ m_frontend = inspectorFrontend->inspector();
}
void InspectorInspectorAgent::clearFrontend()
disable(&error);
}
-void InspectorInspectorAgent::didCommitLoad(LocalFrame* frame, DocumentLoader* loader)
-{
- if (loader->frame() != frame->page()->mainFrame())
- return;
-
- m_injectedScriptManager->discardInjectedScripts();
-}
-
void InspectorInspectorAgent::enable(ErrorString*)
{
m_state->setBoolean(InspectorAgentState::inspectorAgentEnabled, true);
inspect(m_pendingInspectData.first, m_pendingInspectData.second);
for (Vector<pair<long, String> >::iterator it = m_pendingEvaluateTestCommands.begin(); m_frontend && it != m_pendingEvaluateTestCommands.end(); ++it)
- m_frontend->inspector()->evaluateForTestInFrontend(static_cast<int>((*it).first), (*it).second);
+ m_frontend->evaluateForTestInFrontend(static_cast<int>((*it).first), (*it).second);
m_pendingEvaluateTestCommands.clear();
}
void InspectorInspectorAgent::evaluateForTestInFrontend(long callId, const String& script)
{
- if (m_state->getBoolean(InspectorAgentState::inspectorAgentEnabled))
- m_frontend->inspector()->evaluateForTestInFrontend(static_cast<int>(callId), script);
- else
+ if (m_state->getBoolean(InspectorAgentState::inspectorAgentEnabled)) {
+ m_frontend->evaluateForTestInFrontend(static_cast<int>(callId), script);
+ m_frontend->flush();
+ } else {
m_pendingEvaluateTestCommands.append(pair<long, String>(callId, script));
+ }
}
void InspectorInspectorAgent::setInjectedScriptForOrigin(const String& origin, const String& source)
void InspectorInspectorAgent::inspect(PassRefPtr<TypeBuilder::Runtime::RemoteObject> objectToInspect, PassRefPtr<JSONObject> hints)
{
if (m_state->getBoolean(InspectorAgentState::inspectorAgentEnabled) && m_frontend) {
- m_frontend->inspector()->inspect(objectToInspect, hints);
+ m_frontend->inspect(objectToInspect, hints);
m_pendingInspectData.first = nullptr;
m_pendingInspectData.second = nullptr;
return;
m_pendingInspectData.second = hints;
}
-} // namespace WebCore
+} // namespace blink