diff options
Diffstat (limited to 'WebKit/qt/WebCoreSupport/InspectorClientQt.cpp')
-rw-r--r-- | WebKit/qt/WebCoreSupport/InspectorClientQt.cpp | 22 |
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); |