Further unreviewed GTK build fix after r169536.

Update the m_duration contructor in MediaSourceGStreamer.

* platform/graphics/gstreamer/MediaSourceGStreamer.cpp:
(WebCore::MediaSourceGStreamer::MediaSourceGStreamer):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169539 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rename DoYouEvenBench 0.17 to Speedometer 1.0 and add a new look.
https://bugs.webkit.org/show_bug.cgi?id=133455

Reviewed by Timothy Hatcher.

Renamed the benchmark to Speedometer and added the new look designed by Timothy Hatcher.

Also changed the unit of measurements from milliseconds to runs-per-minute averaged over the number
of the benchmark suites (7 for 1.0). You can divide 420000 by the old benchmark score (in milliseconds)
to get the new value for the set of tests that are enabled by default in 1.0. You can continue to see
results in milliseconds on Full.html#ms.

* DoYouEvenBench/Full.html: Added a bunch of sections and the description of the benchmark.

* DoYouEvenBench/resources/benchmark-report.js: Remove the newly added content when ran inside a DRT or
WTR so that run-perf-tests wouldn't error.
* DoYouEvenBench/resources/benchmark-runner.js:
(BenchmarkRunner.prototype._appendFrame): Call a newly added willAddTestFrame callback when it exists.

* DoYouEvenBench/resources/gauge.png: Added.
* DoYouEvenBench/resources/gauge@2x.png: Added.
* DoYouEvenBench/resources/logo.png: Added.
* DoYouEvenBench/resources/logo@2x.png: Added.
* DoYouEvenBench/resources/main.css: Replaced the style.

* DoYouEvenBench/resources/main.js:
(window.benchmarkClient.willAddTestFrame): Place the iframe right where #testContainer is shown.
(window.benchmarkClient.willRunTest): Show the name of the suite (e.g. EmberJS-TodoMVC) to run next.
(window.benchmarkClient.didRunSuites):
(window.benchmarkClient.willStartFirstIteration): Initialize _timeValues and _finishedTestCount now that
we have an UI to run the benchmark multiple times without reloading the page.
(window.benchmarkClient.didFinishLastIteration): Split into smaller pieces.
(window.benchmarkClient._computeResults): Computes the mean and the statistics for the given time values,
and also format them in a human readable form.
(window.benchmarkClient._computeResults.totalTimeInDisplayUnit): Converts ms to runs/min.
(window.benchmarkClient._computeResults.sigFigFromPercentDelta): Given a percentage error (e.g. 1%),
returns the number of significant digits required for the mean.
(window.benchmarkClient._computeResults.toSigFigPrecision): Calls toPrecision with the specified precision
constrained to be at least the number of non-decimal digits and at most 6.
(window.benchmarkClient._addDetailedResultsRow): Renamed from _addResult. It now takes the table to which
to add a row and the iteration number.
(window.benchmarkClient._updateGaugeNeedle): Added. Controls the angle of the speed indicator.
(window.benchmarkClient._populateDetailedResults): Added.
(window.benchmarkClient.prepareUI): Added. It adds an event listener to show a specified section when
the push state of the document changes, and shows a warning sign when the view port size is too small.
We do this inside a callback to avoid running it inside DRT / WTR.
(startBenchmark):
(showSection): Added.
(startTest): Added.
(showResultsSummary): Added.
(showResultDetails): Added.
(showAbout): Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169540 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rename DoYouEvenBench 0.17 to Speedometer 1.0 and add a new look.
https://bugs.webkit.org/show_bug.cgi?id=133455

Reviewed by Timothy Hatcher.

PerformanceTests: 
* Speedometer/: Renamed from DoYouEvenBench.
* Skipped: Updated the path for InteractiveRunner.html

Tools: 
Since the perf. dashboard doesn't support following renamed benchmarks,
keep reporting Speedometer results as DoYouEvenBench results.

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(_generate_results_dict):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169541 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Address some review comments on bug 133408
https://bugs.webkit.org/show_bug.cgi?id=133410

Reviewed by Anders Carlsson.

* UIProcess/API/Cocoa/WKBackForwardListItem.h:
* UIProcess/API/Cocoa/WKUIDelegate.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169542 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove unintentional changes to WKContentViewInteraction.mm
introduced in r169500.

Unreviewed.

* UIProcess/ios/WKContentViewInteraction.mm:
(+[WKAutocorrectionContext autocorrectionContextWithData:markedText:selectedText:afterText:selectedRangeInMarkedText:]):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169543 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebCore build fix for webreplay
https://bugs.webkit.org/show_bug.cgi?id=133401

Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-06-02
Reviewed by Darin Adler.

* replay/MemoizedDOMResult.cpp:
(WebCore::MemoizedDOMResultBase::createFromEncodedResult):
Add a default nullptr return in order to avoid a gcc warning.
The warning is because of a non-void method that has a case which doesn't return.
* replay/ReplayController.cpp:
(WebCore::ReplayController::setForceDeterministicSettings):
Guard the ScrollingCoordinator with the appropriate #ifdef.
* replay/SerializationMethods.cpp:
Guard the KeypressCommand with COCOA as it is only present there.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169544 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Send external playback properties to fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=133366

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-06-02
Reviewed by Simon Fraser.

Source/WebCore:
Refactor property updates in WebVideoFullscreenModelMediaElement and update
setExternalPlayback on webkitcurrentplaybacktargetiswirelesschangedEvent.

* WebCore.exp.in: Add export for setExternalPlayback.
* platform/ios/WebVideoFullscreenInterface.h: add setExternalPlayback
* platform/ios/WebVideoFullscreenInterfaceAVKit.h: add setExternalPlayback
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(-[WebAVPlayerController isPlayingOnExternalScreen]): added
(+[WebAVPlayerController keyPathsForValuesAffectingPlayingOnExternalScreen]): added
(WebVideoFullscreenInterfaceAVKit::setExternalPlayback): added
(WebVideoFullscreenInterfaceAVKit::enterFullscreen): added
* platform/ios/WebVideoFullscreenModelMediaElement.h: add updateForEventName
* platform/ios/WebVideoFullscreenModelMediaElement.mm:
(WebVideoFullscreenModelMediaElement::setMediaElement): refactor property changes into updateForEventName()
(WebVideoFullscreenModelMediaElement::handleEvent): refactor property changes into updateForEventName()
(WebVideoFullscreenModelMediaElement::updateForEventName): remove duplicate code, implement for setExternalPlayback

Source/WebKit2:
Forward setExternalPlayback.

* UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in: add setExternalPlaybackProperties
* WebProcess/ios/WebVideoFullscreenManager.h: add setExternalPlaybackProperties
* WebProcess/ios/WebVideoFullscreenManager.mm: add setExternalPlaybackProperties
(WebKit::WebVideoFullscreenManager::setExternalPlaybackProperties): added

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169545 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Set default voucher for XPC client processes
https://bugs.webkit.org/show_bug.cgi?id=133458

Reviewed by Geoff Garen.

* Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
(WebKit::XPCServiceInitializer):
    - add voucher_replace_default_voucher.
* config.h:
    - add HAVE_VOUCHERS.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169546 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make pseudo element matching for style resolution more JIT friendly
https://bugs.webkit.org/show_bug.cgi?id=133441

Reviewed by Antti Koivisto.


Source/WebCore: 
Sharing pseudo elements is a complicated mess shared between the SelectorChecker
and the RuleCollector.

For compiling pseudo element matching, it would be best if all the complexity could
be moved to compile time instead of runtime. It is also preferable to keep the compiler
independant of the RuleCollector implementation's detail.

This patch is a first step toward that goal. The main objective here is to make
"dynamicPseudo" completely internal to the SelectorChecker.
This is mostly a mechanical change, it is likely PseudoElement matching could be simplified
further but that is not attempted here.

Test: fast/css/style-sharing-empty-rule-modification.html

* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::ruleMatches):
The condition regarding pseudo element matching has been moved into SelectorChecker::match().

This creates an extra cost for querySelector(), but that should be fine since the vast majority
of selectors are JIT compiled and never use SelectorChecker in the first place.

(WebCore::ElementRuleCollector::collectMatchingRulesForList):
The loop is changed such that the tree marking (Style::setHasPseudoStyle) could be moved
to SelectorChecker.

The conditions about the security origin for getMatchedCSSRules() and the empty style rules
are moved prior to the call to ElementRuleCollector::ruleMatches(). This ensure we keep the same
behavior of not adding the pseudo style for empty rules (this could also help with tree marking
in general but empty rules are probably uncommon).

There is one behavior change from making this loop simpler: the SharingRules and StyleInvalidation
modes now update their ruleRange. It is useless but it is simpler.

* css/ElementRuleCollector.h:
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::matchRecursively):
The tree marking has been moved here.

* css/SelectorChecker.h:
(WebCore::SelectorChecker::match):
The pseudo element matching has been moved here.

* css/StyleResolver.h:
(WebCore::checkRegionSelector):
* dom/SelectorQuery.cpp:
(WebCore::SelectorDataList::selectorMatches):

LayoutTests: 
Add more coverage for style sharing with empty rules, just in case.

* fast/css/style-sharing-empty-rule-modification-expected.txt: Added.
* fast/css/style-sharing-empty-rule-modification.html: Added.


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