Diff
Modified: trunk/Source/WebCore/ChangeLog (101502 => 101503)
--- trunk/Source/WebCore/ChangeLog 2011-11-30 14:07:28 UTC (rev 101502)
+++ trunk/Source/WebCore/ChangeLog 2011-11-30 14:08:15 UTC (rev 101503)
@@ -1,3 +1,21 @@
+2011-11-30 Pavel Feldman <[email protected]>
+
+ Web Inspector: get rid of deferred backend->front-end commands processing.
+ https://bugs.webkit.org/show_bug.cgi?id=73439
+
+ We should issue tests upon InspectorAgent::enable and should not do any deferred command processing.
+
+ Reviewed by Yury Semikhatsky.
+
+ * inspector/InspectorAgent.cpp:
+ (WebCore::InspectorAgent::InspectorAgent):
+ (WebCore::InspectorAgent::setFrontend):
+ (WebCore::InspectorAgent::clearFrontend):
+ (WebCore::InspectorAgent::enable):
+ (WebCore::InspectorAgent::evaluateForTestInFrontend):
+ * inspector/InspectorAgent.h:
+ * inspector/front-end/inspector.js:
+
2011-11-30 Andreas Kling <[email protected]>
REGRESSION(r101172): It made fast/dom/clone-node-style.html assert.
Modified: trunk/Source/WebCore/inspector/InspectorAgent.cpp (101502 => 101503)
--- trunk/Source/WebCore/inspector/InspectorAgent.cpp 2011-11-30 14:07:28 UTC (rev 101502)
+++ trunk/Source/WebCore/inspector/InspectorAgent.cpp 2011-11-30 14:08:15 UTC (rev 101503)
@@ -67,7 +67,6 @@
, m_inspectedPage(page)
, m_frontend(0)
, m_injectedScriptManager(injectedScriptManager)
- , m_canIssueEvaluateForTestInFrontend(false)
, m_didCommitLoadFired(false)
{
ASSERT_ARG(page, page);
@@ -97,14 +96,10 @@
void InspectorAgent::setFrontend(InspectorFrontend* inspectorFrontend)
{
m_frontend = inspectorFrontend;
-
- // Dispatch pending frontend commands
- issueEvaluateForTestCommands();
}
void InspectorAgent::clearFrontend()
{
- m_canIssueEvaluateForTestInFrontend = false;
m_pendingEvaluateTestCommands.clear();
m_frontend = 0;
m_didCommitLoadFired = false;
@@ -133,6 +128,10 @@
m_frontend->inspector()->didCreateWorker(worker->id(), worker->url(), worker->isSharedWorker());
}
#endif
+
+ for (Vector<pair<long, String> >::iterator it = m_pendingEvaluateTestCommands.begin(); m_frontend && it != m_pendingEvaluateTestCommands.end(); ++it)
+ m_frontend->inspector()->evaluateForTestInFrontend((*it).first, (*it).second);
+ m_pendingEvaluateTestCommands.clear();
}
void InspectorAgent::disable(ErrorString*)
@@ -222,9 +221,10 @@
void InspectorAgent::evaluateForTestInFrontend(long callId, const String& script)
{
- m_pendingEvaluateTestCommands.append(pair<long, String>(callId, script));
- if (m_canIssueEvaluateForTestInFrontend)
- issueEvaluateForTestCommands();
+ if (m_state->getBoolean(InspectorAgentState::inspectorAgentEnabled))
+ m_frontend->inspector()->evaluateForTestInFrontend(callId, script);
+ else
+ m_pendingEvaluateTestCommands.append(pair<long, String>(callId, script));
}
void InspectorAgent::setInspectorExtensionAPI(const String& source)
@@ -251,17 +251,6 @@
return m_inspectedPage->settings()->developerExtrasEnabled();
}
-void InspectorAgent::issueEvaluateForTestCommands()
-{
- if (m_frontend) {
- Vector<pair<long, String> > copy = m_pendingEvaluateTestCommands;
- m_pendingEvaluateTestCommands.clear();
- for (Vector<pair<long, String> >::iterator it = copy.begin(); m_frontend && it != copy.end(); ++it)
- m_frontend->inspector()->evaluateForTestInFrontend((*it).first, (*it).second);
- m_canIssueEvaluateForTestInFrontend = true;
- }
-}
-
} // namespace WebCore
#endif // ENABLE(INSPECTOR)
Modified: trunk/Source/WebCore/inspector/InspectorAgent.h (101502 => 101503)
--- trunk/Source/WebCore/inspector/InspectorAgent.h 2011-11-30 14:07:28 UTC (rev 101502)
+++ trunk/Source/WebCore/inspector/InspectorAgent.h 2011-11-30 14:08:15 UTC (rev 101503)
@@ -107,7 +107,6 @@
#endif
bool isMainResourceLoader(DocumentLoader*, const KURL& requestUrl);
- void issueEvaluateForTestCommands();
Page* m_inspectedPage;
InspectorFrontend* m_frontend;
@@ -119,7 +118,6 @@
typedef HashMap<intptr_t, RefPtr<InspectorWorkerResource> > WorkersMap;
WorkersMap m_workers;
#endif
- bool m_canIssueEvaluateForTestInFrontend;
bool m_didCommitLoadFired;
};
Modified: trunk/Source/WebCore/inspector/front-end/inspector.js (101502 => 101503)
--- trunk/Source/WebCore/inspector/front-end/inspector.js 2011-11-30 14:07:28 UTC (rev 101502)
+++ trunk/Source/WebCore/inspector/front-end/inspector.js 2011-11-30 14:08:15 UTC (rev 101503)
@@ -317,6 +317,8 @@
WebInspector.doLoadedDone = function()
{
+ InspectorFrontendHost.loaded();
+
WebInspector.WorkerManager.loaded();
WebInspector.installPortStyles();
@@ -395,7 +397,6 @@
WebInspector.CSSCompletions.requestCSSNameCompletions();
WebInspector.WorkerManager.loadCompleted();
- InspectorFrontendHost.loaded();
}
WebInspector.addPanel = function(panel)
Modified: trunk/Source/WebKit/chromium/ChangeLog (101502 => 101503)
--- trunk/Source/WebKit/chromium/ChangeLog 2011-11-30 14:07:28 UTC (rev 101502)
+++ trunk/Source/WebKit/chromium/ChangeLog 2011-11-30 14:08:15 UTC (rev 101503)
@@ -1,3 +1,16 @@
+2011-11-30 Pavel Feldman <[email protected]>
+
+ Web Inspector: get rid of deferred backend->front-end commands processing.
+ https://bugs.webkit.org/show_bug.cgi?id=73439
+
+ Reviewed by Yury Semikhatsky.
+
+ * src/WebDevToolsFrontendImpl.cpp:
+ (WebKit::WebDevToolsFrontendImpl::WebDevToolsFrontendImpl):
+ (WebKit::WebDevToolsFrontendImpl::frontendLoaded):
+ (WebKit::WebDevToolsFrontendImpl::dispatchOnInspectorFrontend):
+ * src/WebDevToolsFrontendImpl.h:
+
2011-11-30 Michael Nordman <[email protected]>
[chromium] WebSQLDatabase could use some better error reporting.
Modified: trunk/Source/WebKit/chromium/src/InspectorFrontendClientImpl.cpp (101502 => 101503)
--- trunk/Source/WebKit/chromium/src/InspectorFrontendClientImpl.cpp 2011-11-30 14:07:28 UTC (rev 101502)
+++ trunk/Source/WebKit/chromium/src/InspectorFrontendClientImpl.cpp 2011-11-30 14:08:15 UTC (rev 101503)
@@ -77,7 +77,6 @@
void InspectorFrontendClientImpl::frontendLoaded()
{
- m_frontend->frontendLoaded();
}
void InspectorFrontendClientImpl::moveWindowBy(float x, float y)
Modified: trunk/Source/WebKit/chromium/src/WebDevToolsFrontendImpl.cpp (101502 => 101503)
--- trunk/Source/WebKit/chromium/src/WebDevToolsFrontendImpl.cpp 2011-11-30 14:07:28 UTC (rev 101502)
+++ trunk/Source/WebKit/chromium/src/WebDevToolsFrontendImpl.cpp 2011-11-30 14:08:15 UTC (rev 101503)
@@ -91,7 +91,6 @@
: m_webViewImpl(webViewImpl)
, m_client(client)
, m_applicationLocale(applicationLocale)
- , m_loaded(false)
{
InspectorController* ic = m_webViewImpl->page()->inspectorController();
ic->setInspectorFrontendClient(adoptPtr(new InspectorFrontendClientImpl(m_webViewImpl->page(), m_client, this)));
@@ -107,22 +106,6 @@
void WebDevToolsFrontendImpl::dispatchOnInspectorFrontend(const WebString& message)
{
- if (m_loaded)
- doDispatchOnInspectorFrontend(message);
- else
- m_pendingMessages.append(message);
-}
-
-void WebDevToolsFrontendImpl::frontendLoaded()
-{
- m_loaded = true;
- for (Vector<String>::iterator it = m_pendingMessages.begin(); it != m_pendingMessages.end(); ++it)
- doDispatchOnInspectorFrontend(*it);
- m_pendingMessages.clear();
-}
-
-void WebDevToolsFrontendImpl::doDispatchOnInspectorFrontend(const String& message)
-{
WebFrameImpl* frame = m_webViewImpl->mainFrameImpl();
v8::HandleScope scope;
v8::Handle<v8::Context> frameContext = V8Proxy::context(frame->frame());
Modified: trunk/Source/WebKit/chromium/src/WebDevToolsFrontendImpl.h (101502 => 101503)
--- trunk/Source/WebKit/chromium/src/WebDevToolsFrontendImpl.h 2011-11-30 14:07:28 UTC (rev 101502)
+++ trunk/Source/WebKit/chromium/src/WebDevToolsFrontendImpl.h 2011-11-30 14:08:15 UTC (rev 101503)
@@ -57,16 +57,12 @@
// WebDevToolsFrontend implementation.
virtual void dispatchOnInspectorFrontend(const WebString& message);
- void frontendLoaded();
-
private:
void doDispatchOnInspectorFrontend(const String& message);
WebKit::WebViewImpl* m_webViewImpl;
WebKit::WebDevToolsFrontendClient* m_client;
String m_applicationLocale;
- bool m_loaded;
- Vector<String> m_pendingMessages;
};
} // namespace WebKit