Animations fail to start on http://www.google.com/insidesearch/howsearchworks/thestory/
https://bugs.webkit.org/show_bug.cgi?id=111244

Source/JavaScriptCore:

Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
Reviewed by David Kilzer.

Enable performance.now() as a minimal subset of Web Timing API.
It returns DOMHighResTimeStamp, a monotonically increasing value representing the
number of milliseconds from the start of the navigation of the current document.
JS libraries use this API to check against the requestAnimationFrame() timestamp.

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
Reviewed by David Kilzer.

Enable performance.now() as a minimal subset of Web Timing API.
It returns DOMHighResTimeStamp, a monotonically increasing value representing the
number of milliseconds from the start of the navigation of the current document.
JS libraries use this API to check against the requestAnimationFrame() timestamp.

Test: fast/dom/Window/web-timing-minimal-performance-now.html

* Configurations/FeatureDefines.xcconfig:
* WebCore.xcodeproj/project.pbxproj:
* dom/EventTargetFactory.in:
* page/DOMWindow.cpp:
(WebCore::DOMWindow::~DOMWindow):
(WebCore::DOMWindow::resetDOMWindowProperties):
(WebCore):
* page/DOMWindow.h:
(DOMWindow):
* page/DOMWindow.idl:
* page/Performance.cpp:
(WebCore):
* page/Performance.h:
(Performance):
* page/Performance.idl:

Source/WebKit/mac:

Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
Reviewed by David Kilzer.

Enable performance.now() as a minimal subset of Web Timing API.
It returns DOMHighResTimeStamp, a monotonically increasing value representing the
number of milliseconds from the start of the navigation of the current document.
JS libraries use this API to check against the requestAnimationFrame() timestamp.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
Reviewed by David Kilzer.

Enable performance.now() as a minimal subset of Web Timing API.
It returns DOMHighResTimeStamp, a monotonically increasing value representing the
number of milliseconds from the start of the navigation of the current document.
JS libraries use this API to check against the requestAnimationFrame() timestamp.

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
Reviewed by David Kilzer.

Enable performance.now() as a minimal subset of Web Timing API.
It returns DOMHighResTimeStamp, a monotonically increasing value representing the
number of milliseconds from the start of the navigation of the current document.
JS libraries use this API to check against the requestAnimationFrame() timestamp.

* wtf/FeatureDefines.h:

LayoutTests:

Patch by Zalan Bujtas <zalan@apple.com> on 2013-04-30
Reviewed by David Kilzer.

Enable performance.now() as a minimal subset of Web Timing API.
It returns DOMHighResTimeStamp, a monotonically increasing value representing the
number of milliseconds from the start of the navigation of the current document.
JS libraries use this API to check against the requestAnimationFrame() timestamp.

We can test the monotonical behaviour of this API only. Checking whether the value
actually represents the navigation start requires PerformanceTiming enabled.

* fast/dom/Window/web-timing-minimal-performance-now-expected.txt: Added.
* fast/dom/Window/web-timing-minimal-performance-now.html: Added.

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