RESOLVED FIXED 54227
Web Inspector: make InspectorAgent own sub-agents, align agent creation/deletion routines.
https://bugs.webkit.org/show_bug.cgi?id=54227
Summary Web Inspector: make InspectorAgent own sub-agents, align agent creation/delet...
Pavel Feldman
Reported 2011-02-10 11:14:10 PST
This patch will align some of our agents' lifetime, creation and deletion code, state interaction and such.
Attachments
[PATCH] wip patch. (28.78 KB, patch)
2011-02-10 11:14 PST, Pavel Feldman
no flags
Patch (48.96 KB, patch)
2011-02-10 23:19 PST, Pavel Feldman
no flags
Patch (60.14 KB, patch)
2011-02-11 06:34 PST, Pavel Feldman
no flags
Patch (56.10 KB, patch)
2011-02-11 06:40 PST, Pavel Feldman
yurys: review+
Pavel Feldman
Comment 1 2011-02-10 11:14:49 PST
Created attachment 82010 [details] [PATCH] wip patch.
Pavel Feldman
Comment 2 2011-02-10 23:19:14 PST
Yury Semikhatsky
Comment 3 2011-02-11 02:29:15 PST
Comment on attachment 82106 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=82106&action=review > Source/WebCore/inspector/InspectorAgent.cpp:-337 > - releaseFrontendLifetimeAgents(); Please put an ASSERT(!m_frontend) here. > Source/WebCore/inspector/InspectorDOMAgent.cpp:943 > +void InspectorDOMAgent::mainDOMContentLoaded() mainDOMContentLoaded -> mainFrameDOMContentLoaded > Source/WebCore/inspector/InspectorDatabaseResource.cpp:57 > void InspectorDatabaseResource::bind(InspectorFrontend* frontend) Let's rename bind into pushToFrontend
Ilya Tikhonovsky
Comment 4 2011-02-11 02:38:20 PST
Comment on attachment 82106 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=82106&action=review > Source/WebCore/inspector/InspectorDOMAgent.cpp:279 > void InspectorDOMAgent::startListening(Document* doc) > { > - if (m_documents.contains(doc)) > - return; > - > - doc->addEventListener(eventNames().DOMContentLoadedEvent, this, false); > - doc->addEventListener(eventNames().loadEvent, this, true); > m_documents.add(doc); > } > > void InspectorDOMAgent::stopListening(Document* doc) > { > - if (!m_documents.contains(doc)) > - return; > - > - doc->removeEventListener(eventNames().DOMContentLoadedEvent, this, false); > - doc->removeEventListener(eventNames().loadEvent, this, true); > m_documents.remove(doc); > } There are no accessors to the m_documents map but mainFrameDocument. Looks like we can drop map and handle only MainFrame document pointer.
Pavel Feldman
Comment 5 2011-02-11 06:34:29 PST
Yury Semikhatsky
Comment 6 2011-02-11 06:36:33 PST
Comment on attachment 82128 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=82128&action=review > LayoutTests/inspector/command-line-api.html:8 > + var expressions = [ This fix should go in a separate change, r- for this. > LayoutTests/inspector/command-line-api.html:19 > + InspectorTest.completeTest(); wrong alignment
Pavel Feldman
Comment 7 2011-02-11 06:40:11 PST
Yury Semikhatsky
Comment 8 2011-02-11 06:47:46 PST
Comment on attachment 82129 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=82129&action=review > Source/WebCore/inspector/InspectorDatabaseAgent.h:45 > + class FrontendProvider : public RefCounted<FrontendProvider> { No need to define this class in the public part of the agent. You can just put forward declaration here and define the class in .cpp.
Pavel Feldman
Comment 9 2011-02-11 07:23:54 PST
Note You need to log in before you can comment on or make changes to this bug.