Web Inspector: add didCancelFrame timeline event
https://bugs.webkit.org/show_bug.cgi?id=80994
Reviewed by Pavel Feldman.
.:
* Source/autotools/symbols.filter:
Source/WebCore:
- add an ability to cancel certain timeline events, unless they've been followed by other events.
- implement didCancelFrame() event, fired when a platform decides not to render frame after didBeginFrame() was called.
Test: inspector/timeline/timeline-frames.html
* WebCore.exp.in:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didCancelFrameImpl):
(WebCore):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::didCancelFrame):
(WebCore):
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::didBeginFrame):
(WebCore):
(WebCore::InspectorTimelineAgent::didCancelFrame):
(WebCore::InspectorTimelineAgent::appendRecord):
(WebCore::InspectorTimelineAgent::pushCurrentRecord):
(WebCore::InspectorTimelineAgent::pushCancelableRecord):
(WebCore::InspectorTimelineAgent::commitCancelableRecords):
(WebCore::InspectorTimelineAgent::cancelRecord):
* inspector/InspectorTimelineAgent.h:
(InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
(TimelineRecordEntry):
* testing/Internals.cpp:
(WebCore::Internals::emitInspectorDidBeginFrame):
(WebCore):
(WebCore::Internals::emitInspectorDidCancelFrame):
* testing/Internals.h:
(Internals):
* testing/Internals.idl:
Source/WebKit/chromium:
- add intrumentCanceFrame(), called when renderer decides not to
render frame after instrumentBeginFrame() was called.
* public/WebWidget.h:
(WebWidget):
(WebKit::WebWidget::instrumentCancelFrame):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::instrumentCancelFrame):
(WebKit):
* src/WebViewImpl.h:
(WebViewImpl):
Source/WebKit2:
* win/WebKit2.def:
* win/WebKit2CFLite.def:
LayoutTests:
- added test for didBeginFrame()/didCancelFrame()
* inspector/timeline/timeline-frames-expected.txt: Added.
* inspector/timeline/timeline-frames.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@110706
268f45cc-cd09-0410-ab3c-
d52691b4dbfc