Web Inspector: remove unused metrics and commands from the Timeline agent
authorburg@cs.washington.edu <burg@cs.washington.edu@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 6 Apr 2014 00:51:14 +0000 (00:51 +0000)
committerburg@cs.washington.edu <burg@cs.washington.edu@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 6 Apr 2014 00:51:14 +0000 (00:51 +0000)
https://bugs.webkit.org/show_bug.cgi?id=131184

Reviewed by Timothy Hatcher.

Source/WebCore:

This patch removes several instrumentation hooks that are not being
used by the frontend in any way. Most of them are not hooked up to
produce any data, so they just clutter up InspectorClient and the agent.

* WebCore.exp.in: Remove didBeginFrame/didCancelFrame.
* inspector/InspectorClient.h: Remove client methods that are never overridden.
(WebCore::InspectorClient::canMonitorMainThread): Deleted.
(WebCore::InspectorClient::supportsFrameInstrumentation): Deleted.
(WebCore::InspectorClient::getAllocatedObjects): Deleted.
(WebCore::InspectorClient::dumpUncountedAllocatedObjects): Deleted.

* inspector/InspectorController.cpp: Remove unused instrumentation.
(WebCore::InspectorController::didBeginFrame): Deleted.
(WebCore::InspectorController::didCancelFrame): Deleted.
(WebCore::InspectorController::didComposite): Deleted.
(WebCore::InspectorController::wilComposite): Deleted.
* inspector/InspectorController.h:

* inspector/InspectorTimelineAgent.cpp: Remove the backend's BeginFrame enum
value, but keep it in the protocol for when it is reimplemented. Remove
management of the current frame record, and simplify some code.
(WebCore::toProtocol):
(WebCore::InspectorTimelineAgent::addRecordToTimeline):
(WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
(WebCore::InspectorTimelineAgent::pushCurrentRecord):
(WebCore::InspectorTimelineAgent::clearRecordStack):
(WebCore::InspectorTimelineAgent::canMonitorMainThread): Deleted.
(WebCore::InspectorTimelineAgent::supportsFrameInstrumentation): Deleted.
(WebCore::InspectorTimelineAgent::didBeginFrame): Deleted.
(WebCore::InspectorTimelineAgent::didCancelFrame): Deleted.
(WebCore::InspectorTimelineAgent::didComposite): Deleted.
(WebCore::InspectorTimelineAgent::wilComposite): Deleted.
(WebCore::InspectorTimelineAgent::innerAddRecordToTimeline): Deleted. Undo telescoping.
(WebCore::usedHeapSize): Deleted.
(WebCore::InspectorTimelineAgent::commitFrameRecord): Deleted.
* inspector/InspectorTimelineAgent.h:
(WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
* inspector/protocol/Timeline.json:

* platform/graphics/texmap/coordinated/CompositingCoordinator.cpp: Remove
instrumentation hook for beginFrame. This is the only backend that implements it.
(WebCore::CompositingCoordinator::syncDisplayState):

* testing/Internals.cpp: Remove crufty test methods that aren't used.
(WebCore::Internals::emitInspectorDidBeginFrame): Deleted.
(WebCore::Internals::emitInspectorDidCancelFrame): Deleted.
* testing/Internals.h:
* testing/Internals.idl:

Source/WebInspectorUI:

Remove the Memory domain from old protocol versions. Remove enum values
BeginFrame and CompositeLayers. Remove arguments to Timeline.start.
Remove miscellaneous Timeline commands that no longer exist and were never used.

* UserInterface/Protocol/Legacy/6.0/InspectorWebBackendCommands.js:
* UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js:
* Versions/Inspector-iOS-6.0.json:
* Versions/Inspector-iOS-7.0.json:

Source/WebKit:

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Remove symbols.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@166846 268f45cc-cd09-0410-ab3c-d52691b4dbfc

20 files changed:
Source/WebCore/ChangeLog
Source/WebCore/WebCore.exp.in
Source/WebCore/inspector/InspectorClient.h
Source/WebCore/inspector/InspectorController.cpp
Source/WebCore/inspector/InspectorController.h
Source/WebCore/inspector/InspectorInstrumentation.h
Source/WebCore/inspector/InspectorTimelineAgent.cpp
Source/WebCore/inspector/InspectorTimelineAgent.h
Source/WebCore/inspector/protocol/Timeline.json
Source/WebCore/platform/graphics/texmap/coordinated/CompositingCoordinator.cpp
Source/WebCore/testing/Internals.cpp
Source/WebCore/testing/Internals.h
Source/WebCore/testing/Internals.idl
Source/WebInspectorUI/ChangeLog
Source/WebInspectorUI/UserInterface/Protocol/Legacy/6.0/InspectorWebBackendCommands.js
Source/WebInspectorUI/UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js
Source/WebInspectorUI/Versions/Inspector-iOS-6.0.json
Source/WebInspectorUI/Versions/Inspector-iOS-7.0.json
Source/WebKit/ChangeLog
Source/WebKit/WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in

index 9c64e8cc46fa970279ac74edffe3803fdbe17b95..ea09d1b1f4b58459ca1c43c8b08e869a74fba8f8 100644 (file)
@@ -1,3 +1,59 @@
+2014-04-05  Brian J. Burg  <burg@cs.washington.edu>
+
+        Web Inspector: remove unused metrics and commands from the Timeline agent
+        https://bugs.webkit.org/show_bug.cgi?id=131184
+
+        Reviewed by Timothy Hatcher.
+
+        This patch removes several instrumentation hooks that are not being
+        used by the frontend in any way. Most of them are not hooked up to
+        produce any data, so they just clutter up InspectorClient and the agent.
+
+        * WebCore.exp.in: Remove didBeginFrame/didCancelFrame.
+        * inspector/InspectorClient.h: Remove client methods that are never overridden.
+        (WebCore::InspectorClient::canMonitorMainThread): Deleted.
+        (WebCore::InspectorClient::supportsFrameInstrumentation): Deleted.
+        (WebCore::InspectorClient::getAllocatedObjects): Deleted.
+        (WebCore::InspectorClient::dumpUncountedAllocatedObjects): Deleted.
+
+        * inspector/InspectorController.cpp: Remove unused instrumentation.
+        (WebCore::InspectorController::didBeginFrame): Deleted.
+        (WebCore::InspectorController::didCancelFrame): Deleted.
+        (WebCore::InspectorController::didComposite): Deleted.
+        (WebCore::InspectorController::wilComposite): Deleted.
+        * inspector/InspectorController.h:
+
+        * inspector/InspectorTimelineAgent.cpp: Remove the backend's BeginFrame enum
+        value, but keep it in the protocol for when it is reimplemented. Remove
+        management of the current frame record, and simplify some code.
+        (WebCore::toProtocol):
+        (WebCore::InspectorTimelineAgent::addRecordToTimeline):
+        (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
+        (WebCore::InspectorTimelineAgent::pushCurrentRecord):
+        (WebCore::InspectorTimelineAgent::clearRecordStack):
+        (WebCore::InspectorTimelineAgent::canMonitorMainThread): Deleted.
+        (WebCore::InspectorTimelineAgent::supportsFrameInstrumentation): Deleted.
+        (WebCore::InspectorTimelineAgent::didBeginFrame): Deleted.
+        (WebCore::InspectorTimelineAgent::didCancelFrame): Deleted.
+        (WebCore::InspectorTimelineAgent::didComposite): Deleted.
+        (WebCore::InspectorTimelineAgent::wilComposite): Deleted.
+        (WebCore::InspectorTimelineAgent::innerAddRecordToTimeline): Deleted. Undo telescoping.
+        (WebCore::usedHeapSize): Deleted.
+        (WebCore::InspectorTimelineAgent::commitFrameRecord): Deleted.
+        * inspector/InspectorTimelineAgent.h:
+        (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
+        * inspector/protocol/Timeline.json:
+
+        * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp: Remove
+        instrumentation hook for beginFrame. This is the only backend that implements it.
+        (WebCore::CompositingCoordinator::syncDisplayState):
+
+        * testing/Internals.cpp: Remove crufty test methods that aren't used.
+        (WebCore::Internals::emitInspectorDidBeginFrame): Deleted.
+        (WebCore::Internals::emitInspectorDidCancelFrame): Deleted.
+        * testing/Internals.h:
+        * testing/Internals.idl:
+
 2014-04-05  Alexey Proskuryakov  <ap@apple.com>
 
         REGRESSION (r163914): Application cache cannot be used in main frame
index f8a73ff80bfd8d01dece00efea9dad5045ec3176..ed2c5f5a1c41fab12d5690fdf5d652c330933a88 100644 (file)
@@ -3021,8 +3021,6 @@ __ZN7WebCore5ColorC1ERKN3WTF6StringE
 #if ENABLE(INSPECTOR)
 __ZN7WebCore14SchemeRegistry27shouldTreatURLSchemeAsLocalERKN3WTF6StringE
 __ZN7WebCore15InspectorClient31doDispatchMessageOnFrontendPageEPNS_4PageERKN3WTF6StringE
-__ZN7WebCore19InspectorController13didBeginFrameEv
-__ZN7WebCore19InspectorController14didCancelFrameEv
 __ZN7WebCore19InspectorController15connectFrontendEPN9Inspector24InspectorFrontendChannelE
 __ZN7WebCore19InspectorController18disconnectFrontendEN9Inspector25InspectorDisconnectReasonE
 __ZN7WebCore19InspectorController18setProfilerEnabledEb
index 636f096a22bdc1f0325bd7ab14e4139ae1d1abb4..ad5235f864e401b9f6808cff79a77e49189c9c28 100644 (file)
@@ -63,7 +63,6 @@ public:
     virtual void clearBrowserCache() { }
     virtual bool canClearBrowserCookies() { return false; }
     virtual void clearBrowserCookies() { }
-    virtual bool canMonitorMainThread() { return false; }
 
     virtual bool overridesShowPaintRects() { return false; }
     virtual void setShowPaintRects(bool) { }
@@ -77,13 +76,8 @@ public:
     virtual bool canContinuouslyPaint() { return false; }
     virtual void setContinuousPaintingEnabled(bool) { }
 
-    virtual bool supportsFrameInstrumentation() { return false; }
-
     virtual void didSetSearchingForNode(bool) { }
 
-    virtual void getAllocatedObjects(HashSet<const void*>&) { }
-    virtual void dumpUncountedAllocatedObjects(const HashMap<const void*, size_t>&) { }
-
     virtual bool handleJavaScriptDialog(bool, const String*) { return false; }
 
     static bool doDispatchMessageOnFrontendPage(Page* frontendPage, const String& message);
index 42b4cd6803ed03c7361d1b2f7eacdca2bb858bf3..0a6fa269c90134efbf7ae1a7d89087a22a556fb8 100644 (file)
@@ -401,30 +401,6 @@ void InspectorController::setResourcesDataSizeLimitsFromInternals(int maximumRes
     m_resourceAgent->setResourcesDataSizeLimitsFromInternals(maximumResourcesContentSize, maximumSingleResourceContentSize);
 }
 
-void InspectorController::didBeginFrame()
-{
-    if (InspectorTimelineAgent* timelineAgent = m_instrumentingAgents->inspectorTimelineAgent())
-        timelineAgent->didBeginFrame();
-}
-
-void InspectorController::didCancelFrame()
-{
-    if (InspectorTimelineAgent* timelineAgent = m_instrumentingAgents->inspectorTimelineAgent())
-        timelineAgent->didCancelFrame();
-}
-
-void InspectorController::willComposite()
-{
-    if (InspectorTimelineAgent* timelineAgent = m_instrumentingAgents->inspectorTimelineAgent())
-        timelineAgent->willComposite();
-}
-
-void InspectorController::didComposite()
-{
-    if (InspectorTimelineAgent* timelineAgent = m_instrumentingAgents->inspectorTimelineAgent())
-        timelineAgent->didComposite();
-}
-
 bool InspectorController::developerExtrasEnabled() const
 {
     return m_page.settings().developerExtrasEnabled();
index ccee9c72461e7f7fe52de9c25604819710f18fd1..5c99447178620d57e26ba0567c8fa8701e36d63a 100644 (file)
@@ -126,11 +126,6 @@ public:
     InspectorClient* inspectorClient() const { return m_inspectorClient; }
     InspectorPageAgent* pageAgent() const { return m_pageAgent; }
 
-    void didBeginFrame();
-    void didCancelFrame();
-    void willComposite();
-    void didComposite();
-
     virtual bool developerExtrasEnabled() const override;
     virtual bool canAccessInspectedScriptState(JSC::ExecState*) const override;
     virtual Inspector::InspectorFunctionCallHandler functionCallHandler() const override;
index 510d68ca096d5f147e2596781c7b4cdada4d06b0..b4376e91d3cda72acc838f7848faa53637cd52d1 100644 (file)
@@ -165,8 +165,6 @@ public:
     static void didScrollLayer(Frame*);
     static void willPaint(RenderObject*);
     static void didPaint(RenderObject*, GraphicsContext*, const LayoutRect&);
-    static void willComposite(Page*);
-    static void didComposite(Page*);
     static InspectorInstrumentationCookie willRecalculateStyle(Document*);
     static void didRecalculateStyle(const InspectorInstrumentationCookie&);
     static void didScheduleStyleRecalculation(Document*);
index 68964918f3f530437818120968aefec76e8a0492..90d69daafafd8a044a29a6098fbd3fd18ae1c803 100644 (file)
@@ -116,26 +116,6 @@ void InspectorTimelineAgent::stop(ErrorString*)
     m_enabled = false;
 }
 
-void InspectorTimelineAgent::canMonitorMainThread(ErrorString*, bool* result)
-{
-    *result = m_client && m_client->canMonitorMainThread();
-}
-
-void InspectorTimelineAgent::supportsFrameInstrumentation(ErrorString*, bool* result)
-{
-    *result = m_client && m_client->supportsFrameInstrumentation();
-}
-
-void InspectorTimelineAgent::didBeginFrame()
-{
-    m_pendingFrameRecord = TimelineRecordFactory::createGenericRecord(timestamp(), 0);
-}
-
-void InspectorTimelineAgent::didCancelFrame()
-{
-    m_pendingFrameRecord.clear();
-}
-
 void InspectorTimelineAgent::willCallFunction(const String& scriptName, int scriptLine, Frame* frame)
 {
     pushCurrentRecord(TimelineRecordFactory::createFunctionCallData(scriptName, scriptLine), TimelineRecordType::FunctionCall, true, frame);
@@ -253,16 +233,6 @@ void InspectorTimelineAgent::didScroll()
     didCompleteCurrentRecord(TimelineRecordType::ScrollLayer);
 }
 
-void InspectorTimelineAgent::willComposite()
-{
-    pushCurrentRecord(InspectorObject::create(), TimelineRecordType::CompositeLayers, false, nullptr);
-}
-
-void InspectorTimelineAgent::didComposite()
-{
-    didCompleteCurrentRecord(TimelineRecordType::CompositeLayers);
-}
-
 void InspectorTimelineAgent::willWriteHTML(unsigned startLine, Frame* frame)
 {
     pushCurrentRecord(TimelineRecordFactory::createParseHTMLData(startLine), TimelineRecordType::ParseHTML, true, frame);
@@ -470,19 +440,11 @@ void InspectorTimelineAgent::breakpointActionProbe(JSC::ExecState* exec, const I
     appendRecord(TimelineRecordFactory::createProbeSampleData(action, hitCount), TimelineRecordType::ProbeSample, false, frame);
 }
 
-void InspectorTimelineAgent::addRecordToTimeline(PassRefPtr<InspectorObject> record, TimelineRecordType type)
-{
-    commitFrameRecord();
-    innerAddRecordToTimeline(record, type);
-}
-
 static Inspector::TypeBuilder::Timeline::EventType::Enum toProtocol(TimelineRecordType type)
 {
     switch (type) {
     case TimelineRecordType::EventDispatch:
         return Inspector::TypeBuilder::Timeline::EventType::EventDispatch;
-    case TimelineRecordType::BeginFrame:
-        return Inspector::TypeBuilder::Timeline::EventType::BeginFrame;
     case TimelineRecordType::ScheduleStyleRecalculation:
         return Inspector::TypeBuilder::Timeline::EventType::ScheduleStyleRecalculation;
     case TimelineRecordType::RecalculateStyles:
@@ -497,8 +459,6 @@ static Inspector::TypeBuilder::Timeline::EventType::Enum toProtocol(TimelineReco
         return Inspector::TypeBuilder::Timeline::EventType::ScrollLayer;
     case TimelineRecordType::ResizeImage:
         return Inspector::TypeBuilder::Timeline::EventType::ResizeImage;
-    case TimelineRecordType::CompositeLayers:
-        return Inspector::TypeBuilder::Timeline::EventType::CompositeLayers;
 
     case TimelineRecordType::ParseHTML:
         return Inspector::TypeBuilder::Timeline::EventType::ParseHTML;
@@ -566,7 +526,7 @@ static Inspector::TypeBuilder::Timeline::EventType::Enum toProtocol(TimelineReco
     return Inspector::TypeBuilder::Timeline::EventType::TimeStamp;
 }
 
-void InspectorTimelineAgent::innerAddRecordToTimeline(PassRefPtr<InspectorObject> prpRecord, TimelineRecordType type)
+void InspectorTimelineAgent::addRecordToTimeline(PassRefPtr<InspectorObject> prpRecord, TimelineRecordType type)
 {
     prpRecord->setString("type", Inspector::TypeBuilder::getWebEnumConstantValue(toProtocol(type)));
 
@@ -580,11 +540,6 @@ void InspectorTimelineAgent::innerAddRecordToTimeline(PassRefPtr<InspectorObject
     }
 }
 
-static size_t usedHeapSize()
-{
-    return JSDOMWindow::commonVM().heap.size();
-}
-
 void InspectorTimelineAgent::setFrameIdentifier(InspectorObject* record, Frame* frame)
 {
     if (!frame || !m_pageAgent)
@@ -606,9 +561,6 @@ void InspectorTimelineAgent::didCompleteCurrentRecord(TimelineRecordType type)
         entry.record->setObject("data", entry.data);
         entry.record->setArray("children", entry.children);
         entry.record->setNumber("endTime", timestamp());
-        size_t usedHeapSizeDelta = usedHeapSize() - entry.usedHeapSizeAtStart;
-        if (usedHeapSizeDelta)
-            entry.record->setNumber("usedHeapSizeDelta", usedHeapSizeDelta);
         addRecordToTimeline(entry.record, type);
     }
 }
@@ -643,24 +595,13 @@ void InspectorTimelineAgent::sendEvent(PassRefPtr<InspectorObject> event)
 
 void InspectorTimelineAgent::pushCurrentRecord(PassRefPtr<InspectorObject> data, TimelineRecordType type, bool captureCallStack, Frame* frame)
 {
-    commitFrameRecord();
     RefPtr<InspectorObject> record = TimelineRecordFactory::createGenericRecord(timestamp(), captureCallStack ? m_maxCallStackDepth : 0);
     setFrameIdentifier(record.get(), frame);
-    m_recordStack.append(TimelineRecordEntry(record.release(), data, InspectorArray::create(), type, usedHeapSize()));
-}
-
-void InspectorTimelineAgent::commitFrameRecord()
-{
-    if (!m_pendingFrameRecord)
-        return;
-    
-    m_pendingFrameRecord->setObject("data", InspectorObject::create());
-    innerAddRecordToTimeline(m_pendingFrameRecord.release(), TimelineRecordType::BeginFrame);
+    m_recordStack.append(TimelineRecordEntry(record.release(), data, InspectorArray::create(), type));
 }
 
 void InspectorTimelineAgent::clearRecordStack()
 {
-    m_pendingFrameRecord.clear();
     m_recordStack.clear();
     m_id++;
 }
index 83176ce716137a5edbf18b25430f1debdf05b198..25eb6efdeaf6ce2d765f13afd1ea08be55efcf85 100644 (file)
@@ -62,7 +62,6 @@ typedef String ErrorString;
 
 enum class TimelineRecordType {
     EventDispatch,
-    BeginFrame,
     ScheduleStyleRecalculation,
     RecalculateStyles,
     InvalidateLayout,
@@ -70,7 +69,6 @@ enum class TimelineRecordType {
     Paint,
     ScrollLayer,
     ResizeImage,
-    CompositeLayers,
 
     ParseHTML,
 
@@ -138,8 +136,6 @@ public:
 
     virtual void start(ErrorString*, const int* maxCallStackDepth) override;
     virtual void stop(ErrorString*) override;
-    virtual void canMonitorMainThread(ErrorString*, bool*) override;
-    virtual void supportsFrameInstrumentation(ErrorString*, bool*) override;
 
     int id() const { return m_id; }
 
@@ -152,9 +148,6 @@ public:
     void willDispatchEvent(const Event&, Frame*);
     void didDispatchEvent();
 
-    void didBeginFrame();
-    void didCancelFrame();
-
     void didInvalidateLayout(Frame*);
     void willLayout(Frame*);
     void didLayout(RenderObject*);
@@ -169,9 +162,6 @@ public:
     void willScroll(Frame*);
     void didScroll();
 
-    void willComposite();
-    void didComposite();
-
     void willWriteHTML(unsigned startLine, Frame*);
     void didWriteHTML(unsigned endLine);
 
@@ -230,15 +220,14 @@ private:
     friend class TimelineRecordStack;
 
     struct TimelineRecordEntry {
-        TimelineRecordEntry(PassRefPtr<Inspector::InspectorObject> record, PassRefPtr<Inspector::InspectorObject> data, PassRefPtr<Inspector::InspectorArray> children, TimelineRecordType type, size_t usedHeapSizeAtStart)
-            : record(record), data(data), children(children), type(type), usedHeapSizeAtStart(usedHeapSizeAtStart)
+        TimelineRecordEntry(PassRefPtr<Inspector::InspectorObject> record, PassRefPtr<Inspector::InspectorObject> data, PassRefPtr<Inspector::InspectorArray> children, TimelineRecordType type)
+            : record(record), data(data), children(children), type(type)
         {
         }
         RefPtr<Inspector::InspectorObject> record;
         RefPtr<Inspector::InspectorObject> data;
         RefPtr<Inspector::InspectorArray> children;
         TimelineRecordType type;
-        size_t usedHeapSizeAtStart;
     };
 
     void sendEvent(PassRefPtr<Inspector::InspectorObject>);
@@ -249,11 +238,7 @@ private:
 
     void didCompleteCurrentRecord(TimelineRecordType);
 
-    void setHeapSizeStatistics(Inspector::InspectorObject* record);
-    void commitFrameRecord();
-
     void addRecordToTimeline(PassRefPtr<Inspector::InspectorObject>, TimelineRecordType);
-    void innerAddRecordToTimeline(PassRefPtr<Inspector::InspectorObject>, TimelineRecordType);
     void clearRecordStack();
 
     void localToPageQuad(const RenderObject&, const LayoutRect&, FloatQuad*);
@@ -272,7 +257,6 @@ private:
 
     int m_id;
     int m_maxCallStackDepth;
-    RefPtr<Inspector::InspectorObject> m_pendingFrameRecord;
     InspectorType m_inspectorType;
     InspectorClient* m_client;
     WeakPtrFactory<InspectorTimelineAgent> m_weakFactory;
index 213142137bc44aca4b6b9372a56843455b5a660f..c9ef2bb197ada58a5d7385ae0bb0cbabec9a6f4c 100644 (file)
@@ -5,7 +5,7 @@
         {
             "id": "EventType",
             "type": "string",
-            "enum": ["EventDispatch", "BeginFrame", "ScheduleStyleRecalculation", "RecalculateStyles", "InvalidateLayout", "Layout", "Paint", "ScrollLayer", "ResizeImage", "CompositeLayers", "ParseHTML", "TimerInstall", "TimerRemove", "TimerFire", "EvaluateScript", "MarkLoad", "MarkDOMContent", "TimeStamp", "Time", "TimeEnd", "ScheduleResourceRequest", "ResourceSendRequest", "ResourceReceiveResponse", "ResourceReceivedData", "ResourceFinish", "XHRReadyStateChange", "XHRLoad", "FunctionCall", "ProbeSample", "GCEvent", "RequestAnimationFrame", "CancelAnimationFrame", "FireAnimationFrame", "WebSocketCreate", "WebSocketSendHandshakeRequest", "WebSocketReceiveHandshakeResponse", "WebSocketDestroy"],
+            "enum": ["EventDispatch", "ScheduleStyleRecalculation", "RecalculateStyles", "InvalidateLayout", "Layout", "Paint", "ScrollLayer", "ResizeImage", "ParseHTML", "TimerInstall", "TimerRemove", "TimerFire", "EvaluateScript", "MarkLoad", "MarkDOMContent", "TimeStamp", "Time", "TimeEnd", "ScheduleResourceRequest", "ResourceSendRequest", "ResourceReceiveResponse", "ResourceReceivedData", "ResourceFinish", "XHRReadyStateChange", "XHRLoad", "FunctionCall", "ProbeSample", "GCEvent", "RequestAnimationFrame", "CancelAnimationFrame", "FireAnimationFrame", "WebSocketCreate", "WebSocketSendHandshakeRequest", "WebSocketReceiveHandshakeResponse", "WebSocketDestroy"],
             "description": "Timeline record type."
         },
         {
             "type": "object",
             "properties": [
                 { "name": "type", "$ref": "EventType", "description": "Event type." },
-                { "name": "thread", "type": "string", "optional": true, "description": "If present, identifies the thread that produced the event." },
                 { "name": "data", "type": "object", "description": "Event data." },
-                { "name": "children", "type": "array", "optional": true, "items": { "$ref": "TimelineEvent" }, "description": "Nested records." },
-                { "name": "usedHeapSize", "type": "integer", "optional": true, "description": "Current size of JS heap." }
+                { "name": "children", "type": "array", "optional": true, "items": { "$ref": "TimelineEvent" }, "description": "Nested records." }
             ],
             "description": "Timeline record contains information about the recorded activity."
         }
         {
             "name": "stop",
             "description": "Stops capturing instrumentation events."
-        },
-        {
-            "name": "supportsFrameInstrumentation",
-            "returns": [
-                { "name": "result", "type": "boolean", "description": "True if timeline supports frame instrumentation." }
-            ],
-            "description": "Tells whether timeline agent supports frame instrumentation."
-        },
-        {
-            "name": "canMonitorMainThread",
-            "returns": [
-                { "name": "result", "type": "boolean", "description": "True if timeline supports main thread CPU utilization instrumentation." }
-            ],
-            "description": "Tells whether timeline agent supports main thread CPU utilization instrumentation."
         }
     ],
     "events": [
index 9cb9e97def60a506fde7804b0f8333d3345fe667..cc97704828714d9910e494a46c62b0d0d6f7cd17 100644 (file)
@@ -125,10 +125,6 @@ bool CompositingCoordinator::flushPendingLayerChanges()
 
 void CompositingCoordinator::syncDisplayState()
 {
-#if ENABLE(INSPECTOR)
-    m_page->inspectorController().didBeginFrame();
-#endif
-
 #if ENABLE(REQUEST_ANIMATION_FRAME) && !USE(REQUEST_ANIMATION_FRAME_TIMER) && !USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR)
     // Make sure that any previously registered animation callbacks are being executed before we flush the layers.
     m_lastAnimationServiceTime = WTF::monotonicallyIncreasingTime();
index 9f4226f8dc70f64ab436f55132cdfd409354e9da..8e3137d19b7ae47dc9ed96927afb778440ce13ca 100644 (file)
@@ -1164,20 +1164,6 @@ PassRefPtr<NodeList> Internals::nodesFromRect(Document* document, int centerX, i
     return StaticNodeList::adopt(matches);
 }
 
-void Internals::emitInspectorDidBeginFrame()
-{
-#if ENABLE(INSPECTOR)
-    contextDocument()->frame()->page()->inspectorController().didBeginFrame();
-#endif
-}
-
-void Internals::emitInspectorDidCancelFrame()
-{
-#if ENABLE(INSPECTOR)
-    contextDocument()->frame()->page()->inspectorController().didCancelFrame();
-#endif
-}
-
 class GetCallerCodeBlockFunctor {
 public:
     GetCallerCodeBlockFunctor()
index 7d4e99862727f9e01b632300e8e587fcedd5a46a..85840a632f3ab206b01f93e13f0bfdb41de85723 100644 (file)
@@ -166,9 +166,6 @@ public:
     PassRefPtr<NodeList> nodesFromRect(Document*, int x, int y, unsigned topPadding, unsigned rightPadding,
         unsigned bottomPadding, unsigned leftPadding, bool ignoreClipping, bool allowShadowContent, bool allowChildFrameContent, ExceptionCode&) const;
 
-    void emitInspectorDidBeginFrame();
-    void emitInspectorDidCancelFrame();
-
     String parserMetaData(Deprecated::ScriptValue = Deprecated::ScriptValue());
 
     Node* findEditingDeleteButton();
index cf6556440a16f31c94e89c70240f7c87eee5af8e..aa0d7dc8ff9bafdea154933e54c72fdc6163a4d3 100644 (file)
         unsigned long topPadding, unsigned long rightPadding, unsigned long bottomPadding, unsigned long leftPadding,
         boolean ignoreClipping, boolean allowShadowContent, boolean allowChildFrameContent);
 
-    void emitInspectorDidBeginFrame();
-    void emitInspectorDidCancelFrame();
-
     // Calling parserMetaData() with no arguments gets the metadata for the script of the current scope.
     DOMString parserMetaData(optional any func);
 
index 2b73dd0d5e89bc7e215f94f1bde9d1916c1a4a75..a4648777765181e7786ef12eb032f9697d82b30b 100644 (file)
@@ -1,3 +1,19 @@
+2014-04-05  Brian J. Burg  <burg@cs.washington.edu>
+
+        Web Inspector: remove unused metrics and commands from the Timeline agent
+        https://bugs.webkit.org/show_bug.cgi?id=131184
+
+        Reviewed by Timothy Hatcher.
+
+        Remove the Memory domain from old protocol versions. Remove enum values
+        BeginFrame and CompositeLayers. Remove arguments to Timeline.start.
+        Remove miscellaneous Timeline commands that no longer exist and were never used.
+
+        * UserInterface/Protocol/Legacy/6.0/InspectorWebBackendCommands.js:
+        * UserInterface/Protocol/Legacy/7.0/InspectorWebBackendCommands.js:
+        * Versions/Inspector-iOS-6.0.json:
+        * Versions/Inspector-iOS-7.0.json:
+
 2014-04-03  Brian J. Burg  <burg@cs.washington.edu>
 
         Web Inspector: hook up probe samples to TimelineAgent's records
index 087feebcc9b451bdb75f9e4f24aff0e6464f71ec..75390e6fa258cd3a023072c0ba4b46f8d6326e0d 100644 (file)
@@ -15,10 +15,6 @@ InspectorBackend.registerEvent("Inspector.didDestroyWorker", ["id"]);
 InspectorBackend.registerCommand("Inspector.enable", [], []);
 InspectorBackend.registerCommand("Inspector.disable", [], []);
 
-// Memory.
-InspectorBackend.registerMemoryDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Memory");
-InspectorBackend.registerCommand("Memory.getDOMNodeCount", [], ["domGroups", "strings"]);
-
 // Page.
 InspectorBackend.registerPageDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Page");
 InspectorBackend.registerEnum("Page.ResourceType", {Document: "Document", Stylesheet: "Stylesheet", Image: "Image", Font: "Font", Script: "Script", XHR: "XHR", WebSocket: "WebSocket", Other: "Other"});
@@ -194,11 +190,10 @@ InspectorBackend.registerCommand("CSS.stopSelectorProfiler", [], ["profile"]);
 
 // Timeline.
 InspectorBackend.registerTimelineDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Timeline");
-InspectorBackend.registerEnum("Timeline.EventType", {EventDispatch: "EventDispatch", Layout: "Layout", RecalculateStyles: "RecalculateStyles", Paint: "Paint", BeginFrame: "BeginFrame", ParseHTML: "ParseHTML", TimerInstall: "TimerInstall", TimerRemove: "TimerRemove", TimerFire: "TimerFire", EvaluateScript: "EvaluateScript", MarkLoad: "MarkLoad", MarkDOMContent: "MarkDOMContent", TimeStamp: "TimeStamp", ScheduleResourceRequest: "ScheduleResourceRequest", ResourceSendRequest: "ResourceSendRequest", ResourceReceiveResponse: "ResourceReceiveResponse", ResourceReceivedData: "ResourceReceivedData", ResourceFinish: "ResourceFinish", XHRReadyStateChange: "XHRReadyStateChange", XHRLoad: "XHRLoad", FunctionCall: "FunctionCall", GCEvent: "GCEvent", RequestAnimationFrame: "RequestAnimationFrame", CancelAnimationFrame: "CancelAnimationFrame", FireAnimationFrame: "FireAnimationFrame"});
+InspectorBackend.registerEnum("Timeline.EventType", {EventDispatch: "EventDispatch", Layout: "Layout", RecalculateStyles: "RecalculateStyles", Paint: "Paint", ParseHTML: "ParseHTML", TimerInstall: "TimerInstall", TimerRemove: "TimerRemove", TimerFire: "TimerFire", EvaluateScript: "EvaluateScript", MarkLoad: "MarkLoad", MarkDOMContent: "MarkDOMContent", TimeStamp: "TimeStamp", ScheduleResourceRequest: "ScheduleResourceRequest", ResourceSendRequest: "ResourceSendRequest", ResourceReceiveResponse: "ResourceReceiveResponse", ResourceReceivedData: "ResourceReceivedData", ResourceFinish: "ResourceFinish", XHRReadyStateChange: "XHRReadyStateChange", XHRLoad: "XHRLoad", FunctionCall: "FunctionCall", GCEvent: "GCEvent", RequestAnimationFrame: "RequestAnimationFrame", CancelAnimationFrame: "CancelAnimationFrame", FireAnimationFrame: "FireAnimationFrame"});
 InspectorBackend.registerEvent("Timeline.eventRecorded", ["record"]);
 InspectorBackend.registerCommand("Timeline.start", [{"name": "maxCallStackDepth", "type": "number", "optional": true}], []);
 InspectorBackend.registerCommand("Timeline.stop", [], []);
-InspectorBackend.registerCommand("Timeline.setIncludeMemoryDetails", [{"name": "enabled", "type": "boolean", "optional": false}], []);
 
 // Debugger.
 InspectorBackend.registerDebuggerDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Debugger");
index e73cb8c4fde234a01e2510693e0b2f4b755e8dc1..93b4479d7dc6078315479732963abf5dd0d305d7 100644 (file)
@@ -15,10 +15,6 @@ InspectorBackend.registerEvent("Inspector.targetCrashed", []);
 InspectorBackend.registerCommand("Inspector.enable", [], []);
 InspectorBackend.registerCommand("Inspector.disable", [], []);
 
-// Memory.
-InspectorBackend.registerMemoryDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Memory");
-InspectorBackend.registerCommand("Memory.getDOMCounters", [], ["documents", "nodes", "jsEventListeners"]);
-
 // Page.
 InspectorBackend.registerPageDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Page");
 InspectorBackend.registerEnum("Page.ResourceType", {Document: "Document", Stylesheet: "Stylesheet", Image: "Image", Font: "Font", Script: "Script", XHR: "XHR", WebSocket: "WebSocket", Other: "Other"});
@@ -230,12 +226,10 @@ InspectorBackend.registerCommand("CSS.getNamedFlowCollection", [{"name": "docume
 
 // Timeline.
 InspectorBackend.registerTimelineDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Timeline");
-InspectorBackend.registerEnum("Timeline.EventType", {EventDispatch: "EventDispatch", BeginFrame: "BeginFrame", ScheduleStyleRecalculation: "ScheduleStyleRecalculation", RecalculateStyles: "RecalculateStyles", InvalidateLayout: "InvalidateLayout", Layout: "Layout", Paint: "Paint", ScrollLayer: "ScrollLayer", ResizeImage: "ResizeImage", CompositeLayers: "CompositeLayers", ParseHTML: "ParseHTML", TimerInstall: "TimerInstall", TimerRemove: "TimerRemove", TimerFire: "TimerFire", EvaluateScript: "EvaluateScript", MarkLoad: "MarkLoad", MarkDOMContent: "MarkDOMContent", TimeStamp: "TimeStamp", Time: "Time", TimeEnd: "TimeEnd", ScheduleResourceRequest: "ScheduleResourceRequest", ResourceSendRequest: "ResourceSendRequest", ResourceReceiveResponse: "ResourceReceiveResponse", ResourceReceivedData: "ResourceReceivedData", ResourceFinish: "ResourceFinish", XHRReadyStateChange: "XHRReadyStateChange", XHRLoad: "XHRLoad", FunctionCall: "FunctionCall", GCEvent: "GCEvent", RequestAnimationFrame: "RequestAnimationFrame", CancelAnimationFrame: "CancelAnimationFrame", FireAnimationFrame: "FireAnimationFrame", WebSocketCreate: "WebSocketCreate", WebSocketSendHandshakeRequest: "WebSocketSendHandshakeRequest", WebSocketReceiveHandshakeResponse: "WebSocketReceiveHandshakeResponse", WebSocketDestroy: "WebSocketDestroy"});
+InspectorBackend.registerEnum("Timeline.EventType", {EventDispatch: "EventDispatch", ScheduleStyleRecalculation: "ScheduleStyleRecalculation", RecalculateStyles: "RecalculateStyles", InvalidateLayout: "InvalidateLayout", Layout: "Layout", Paint: "Paint", ScrollLayer: "ScrollLayer", ResizeImage: "ResizeImage", ParseHTML: "ParseHTML", TimerInstall: "TimerInstall", TimerRemove: "TimerRemove", TimerFire: "TimerFire", EvaluateScript: "EvaluateScript", MarkLoad: "MarkLoad", MarkDOMContent: "MarkDOMContent", TimeStamp: "TimeStamp", Time: "Time", TimeEnd: "TimeEnd", ScheduleResourceRequest: "ScheduleResourceRequest", ResourceSendRequest: "ResourceSendRequest", ResourceReceiveResponse: "ResourceReceiveResponse", ResourceReceivedData: "ResourceReceivedData", ResourceFinish: "ResourceFinish", XHRReadyStateChange: "XHRReadyStateChange", XHRLoad: "XHRLoad", FunctionCall: "FunctionCall", GCEvent: "GCEvent", RequestAnimationFrame: "RequestAnimationFrame", CancelAnimationFrame: "CancelAnimationFrame", FireAnimationFrame: "FireAnimationFrame", WebSocketCreate: "WebSocketCreate", WebSocketSendHandshakeRequest: "WebSocketSendHandshakeRequest", WebSocketReceiveHandshakeResponse: "WebSocketReceiveHandshakeResponse", WebSocketDestroy: "WebSocketDestroy"});
 InspectorBackend.registerEvent("Timeline.eventRecorded", ["record"]);
-InspectorBackend.registerCommand("Timeline.start", [{"name": "maxCallStackDepth", "type": "number", "optional": true}, {"name": "includeDomCounters", "type": "boolean", "optional": true}, {"name": "includeNativeMemoryStatistics", "type": "boolean", "optional": true}], []);
+InspectorBackend.registerCommand("Timeline.start", [{"name": "maxCallStackDepth", "type": "number", "optional": true}], []);
 InspectorBackend.registerCommand("Timeline.stop", [], []);
-InspectorBackend.registerCommand("Timeline.supportsFrameInstrumentation", [], ["result"]);
-InspectorBackend.registerCommand("Timeline.canMonitorMainThread", [], ["result"]);
 
 // Debugger.
 InspectorBackend.registerDebuggerDispatcher = InspectorBackend.registerDomainDispatcher.bind(InspectorBackend, "Debugger");
index 1f65de01eb0a451620ed90034a6947772f9644d4..0d5061ead0ca7c36b2404a673f40bdd59b7f4c23 100644 (file)
             }
         ]
     },
-    {
-        "domain": "Memory",
-        "hidden": true,
-        "types": [
-            {
-                "id": "NodeCount",
-                "type": "object",
-                "properties": [
-                    { "name": "nodeName", "type": "string" },
-                    { "name": "count", "type": "integer" }
-                ],
-                "description": "Number of nodes with given name."
-            },
-            {
-                "id": "ListenerCount",
-                "type": "object",
-                "properties": [
-                    { "name": "type", "type": "string" },
-                    { "name": "count", "type": "integer" }
-                ],
-                "description": "Number of JS event listeners by event type."
-            },
-            {
-                "id": "StringStatistics",
-                "type": "object",
-                "properties": [
-                    { "name": "dom", "type": "integer" },
-                    { "name": "js", "type": "integer" },
-                    { "name": "shared", "type": "integer" }
-                ],
-                "description": "Character data statistics for the page."
-            },
-            {
-                "id": "DOMGroup",
-                "type": "object",
-                "properties": [
-                    { "name": "size", "type": "integer" },
-                    { "name": "title", "type": "string" },
-                    { "name": "documentURI", "type": "string", "optional": true },
-                    { "name": "nodeCount", "type": "array", "items": { "$ref": "NodeCount" }},
-                    { "name": "listenerCount", "type": "array", "items": { "$ref": "ListenerCount" }}
-                ]
-            }
-        ],
-        "commands": [
-            {
-                "name": "getDOMNodeCount",
-                "returns": [
-                    { "name": "domGroups", "type": "array", "items": { "$ref": "DOMGroup" }},
-                    { "name": "strings", "$ref": "StringStatistics" }
-                ]
-            }
-        ]
-    },
     {
         "domain": "Page",
         "description": "Actions and events related to the inspected page belong to the page domain.",
index 8467206027647ff87e0a06aaf868818a323b94f6..8f690dee7713e13653f19ca4a10f30d40b48aff0 100644 (file)
             }
         ]
     },
-    {
-        "domain": "Memory",
-        "types": [
-            {
-                "id": "MemoryBlock",
-                "type": "object",
-                "properties": [
-                    { "name": "size", "type": "number", "optional": true, "description": "Size of the block in bytes if available" },
-                    { "name": "name", "type": "string", "description": "Unique name used to identify the component that allocated this block" },
-                    { "name": "children", "type": "array", "optional": true, "items": { "$ref": "MemoryBlock" }}
-                ]
-            }
-        ],
-        "commands": [
-            {
-                "name": "getDOMCounters",
-                "returns": [
-                    { "name": "documents", "type": "integer" },
-                    { "name": "nodes", "type": "integer" },
-                    { "name": "jsEventListeners", "type": "integer" }
-                ]
-            }
-        ]
-    },
     {
         "domain": "Page",
         "description": "Actions and events related to the inspected page belong to the page domain.",
         "domain": "Timeline",
         "description": "Timeline provides its clients with instrumentation records that are generated during the page runtime. Timeline instrumentation can be started and stopped using corresponding commands. While timeline is started, it is generating timeline event records.",
         "types": [
-            {
-                "id": "DOMCounters",
-                "type": "object",
-                "properties": [
-                    { "name": "documents", "type": "integer" },
-                    { "name": "nodes", "type": "integer" },
-                    { "name": "jsEventListeners", "type": "integer" }
-                ],
-                "description": "Current values of DOM counters."
-            },
             {
                 "id": "EventType",
                 "type": "string",
-                "enum": ["EventDispatch", "BeginFrame", "ScheduleStyleRecalculation", "RecalculateStyles", "InvalidateLayout", "Layout", "Paint", "ScrollLayer", "ResizeImage", "CompositeLayers", "ParseHTML", "TimerInstall", "TimerRemove", "TimerFire", "EvaluateScript", "MarkLoad", "MarkDOMContent", "TimeStamp", "Time", "TimeEnd", "ScheduleResourceRequest", "ResourceSendRequest", "ResourceReceiveResponse", "ResourceReceivedData", "ResourceFinish", "XHRReadyStateChange", "XHRLoad", "FunctionCall", "GCEvent", "RequestAnimationFrame", "CancelAnimationFrame", "FireAnimationFrame", "WebSocketCreate", "WebSocketSendHandshakeRequest", "WebSocketReceiveHandshakeResponse", "WebSocketDestroy"],
+                "enum": ["EventDispatch", "ScheduleStyleRecalculation", "RecalculateStyles", "InvalidateLayout", "Layout", "Paint", "ScrollLayer", "ResizeImage", "ParseHTML", "TimerInstall", "TimerRemove", "TimerFire", "EvaluateScript", "MarkLoad", "MarkDOMContent", "TimeStamp", "Time", "TimeEnd", "ScheduleResourceRequest", "ResourceSendRequest", "ResourceReceiveResponse", "ResourceReceivedData", "ResourceFinish", "XHRReadyStateChange", "XHRLoad", "FunctionCall", "GCEvent", "RequestAnimationFrame", "CancelAnimationFrame", "FireAnimationFrame", "WebSocketCreate", "WebSocketSendHandshakeRequest", "WebSocketReceiveHandshakeResponse", "WebSocketDestroy"],
                 "description": "Timeline record type."
             },
             {
                 "type": "object",
                 "properties": [
                     { "name": "type", "type": "string", "description": "Event type." },
-                    { "name": "thread", "type": "string", "optional": true, "description": "If present, identifies the thread that produced the event." },
                     { "name": "data", "type": "object", "description": "Event data." },
-                    { "name": "children", "type": "array", "optional": true, "items": { "$ref": "TimelineEvent" }, "description": "Nested records." },
-                    { "name": "counters", "$ref": "DOMCounters", "optional": true,  "description": "Current values of DOM counters." },
-                    { "name": "usedHeapSize", "type": "integer", "optional": true,  "description": "Current size of JS heap." },
-                    { "name": "nativeHeapStatistics", "type": "object", "optional": true,  "description": "Native heap statistics." }
+                    { "name": "children", "type": "array", "optional": true, "items": { "$ref": "TimelineEvent" }, "description": "Nested records." }
                 ],
                 "description": "Timeline record contains information about the recorded activity."
             }
             {
                 "name": "start",
                 "parameters": [
-                    { "name": "maxCallStackDepth", "optional": true, "type": "integer", "description": "Samples JavaScript stack traces up to <code>maxCallStackDepth</code>, defaults to 5." },
-                    { "name": "includeDomCounters", "optional": true, "type": "boolean",  "description": "Whether DOM counters data should be included into timeline events." },
-                    { "name": "includeNativeMemoryStatistics", "optional": true, "type": "boolean",  "description": "Whether native memory usage statistics should be reported as part of timeline events." }
+                    { "name": "maxCallStackDepth", "optional": true, "type": "integer", "description": "Samples JavaScript stack traces up to <code>maxCallStackDepth</code>, defaults to 5." }
                 ],
                 "description": "Starts capturing instrumentation events."
             },
             {
                 "name": "stop",
                 "description": "Stops capturing instrumentation events."
-            },
-            {
-                "name": "supportsFrameInstrumentation",
-                "returns": [
-                    { "name": "result", "type": "boolean", "description": "True if timeline supports frame instrumentation." }
-                ],
-                "description": "Tells whether timeline agent supports frame instrumentation."
-            },
-            {
-                "name": "canMonitorMainThread",
-                "returns": [
-                    { "name": "result", "type": "boolean", "description": "True if timeline supports main thread CPU utilization instrumentation." }
-                ],
-                "description": "Tells whether timeline agent supports main thread CPU utilization instrumentation."
             }
         ],
         "events": [
index dcfec1429edcf08679b0c58e3e5e9455b7f53c9e..c042ea141e6e492e1bd398f015972d1f523c04ba 100644 (file)
@@ -1,3 +1,12 @@
+2014-04-05  Brian J. Burg  <burg@cs.washington.edu>
+
+        Web Inspector: remove unused metrics and commands from the Timeline agent
+        https://bugs.webkit.org/show_bug.cgi?id=131184
+
+        Reviewed by Timothy Hatcher.
+
+        * WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Remove symbols.
+
 2014-04-04  Brent Fulgham  <bfulgham@apple.com>
 
         Unreviewed build fix.
index d3ca66800016408d55ed6420f1a0f1a9cc2b1eeb..f81785bb1753f86e5a6d8d406207e4b0238cffbb 100644 (file)
@@ -124,10 +124,6 @@ EXPORTS
         symbolWithPointer(?addTextMatchMarker@DocumentMarkerController@WebCore@@QAEXPBVRange@2@_N@Z, ?addTextMatchMarker@DocumentMarkerController@WebCore@@QEAAXPEBVRange@2@_N@Z)
         symbolWithPointer(?broadcast@ThreadCondition@WTF@@QAEXXZ, ?broadcast@ThreadCondition@WTF@@QEAAXXZ)
         symbolWithPointer(?callOnMainThread@WTF@@YAXP6AXPAX@Z0@Z, ?callOnMainThread@WTF@@YAXP6AXPEAX@Z0@Z)
-#if ENABLE(INSPECTOR)
-        symbolWithPointer(?didBeginFrame@InspectorController@WebCore@@QAEXXZ, ?didBeginFrame@InspectorController@WebCore@@QEAAXXZ)
-        symbolWithPointer(?didCancelFrame@InspectorController@WebCore@@QAEXXZ, ?didCancelFrame@InspectorController@WebCore@@QEAAXXZ)
-#endif
         symbolWithPointer(?counterValueForElement@WebCore@@YA?AVString@WTF@@PAVElement@1@@Z, ?counterValueForElement@WebCore@@YA?AVString@WTF@@PEAVElement@1@@Z)
         symbolWithPointer(?createThread@WTF@@YAIP6APAXPAX@Z0PBD@Z, ?createThread@WTF@@YAIP6APEAXPEAX@Z0PEBD@Z)
         symbolWithPointer(?createThread@WTF@@YAIP6AXPAX@Z0PBD@Z, ?createThread@WTF@@YAIP6AXPEAX@Z0PEBD@Z)