summaryrefslogtreecommitdiffstats
path: root/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebKit/qt/WebCoreSupport/InspectorClientQt.cpp')
-rw-r--r--WebKit/qt/WebCoreSupport/InspectorClientQt.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp b/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp
index 55aca7f..e6e6fde 100644
--- a/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp
+++ b/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp
@@ -37,12 +37,14 @@
#include "Page.h"
#include "PlatformString.h"
#include "ScriptController.h"
+#include "ScriptDebugServer.h"
#include "qwebinspector.h"
#include "qwebinspector_p.h"
#include "qwebpage.h"
#include "qwebpage_p.h"
#include "qwebview.h"
#include <QtCore/QCoreApplication>
+#include <QtCore/QFile>
#include <QtCore/QSettings>
#include <QtCore/QVariant>
@@ -93,6 +95,22 @@ public slots:
}
};
+#if USE(V8)
+static void ensureDebuggerScriptLoaded()
+{
+ static bool scriptLoaded = false;
+ if (scriptLoaded)
+ return;
+
+ QFile debuggerScriptFile(":/webkit/inspector/DebuggerScript.js");
+ if (debuggerScriptFile.open(QIODevice::ReadOnly)) {
+ QByteArray ba = debuggerScriptFile.readAll();
+ ScriptDebugServer::shared().setDebuggerScriptSource(String(ba.constData(), ba.length()));
+ scriptLoaded = true;
+ }
+}
+#endif
+
InspectorClientQt::InspectorClientQt(QWebPage* page)
: m_inspectedWebPage(page)
, m_frontendWebPage(0)
@@ -109,6 +127,10 @@ void InspectorClientQt::inspectorDestroyed()
void InspectorClientQt::openInspectorFrontend(WebCore::InspectorController*)
{
+#if USE(V8)
+ ensureDebuggerScriptLoaded();
+#endif
+
QWebView* inspectorView = new QWebView;
InspectorClientWebPage* inspectorPage = new InspectorClientWebPage(inspectorView);
inspectorView->setPage(inspectorPage);