Simplify DOMTimer::adjustMinimumTimerInterval -> updateTimerIntervalIfNecessary
https://bugs.webkit.org/show_bug.cgi?id=136402

Reviewed by Andreas Kling.

When the minimum DOM timer interval changes, the Page updates all DOMTimers accordingly.
Updating the fire/repeat interval on TimerBase requires a delta, but in
DOMTimer::adjustMinimumTimerInterval we have the new requested interval. In the case of
timers we can get the current interval to calculate the delta by calling repeatInterval(),
but in the case of one-shot timers neither TimerBase nor DOMTimer have store the interval
that was actually set for the timer (DOMTimer knows the original, unadjusted timer, but
not the actual interval). The way this currently works is that when the minimum interval
changes, Page calls adjustMinimumTimerInterval providing the previous minimum. If the
timer is one-shot, then adjustMinimumTimerInterval will use this to compute the delta
based on what the interval would have been.

We can simplify & unify with the code to throttle interval timers when the nesting
threshold is hit, by instead tracking the current timer interval as a member on DOMTimer &
using this to compute the delta in all cases.

* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::adjustMinimumTimerInterval):
    - adjustMinimumTimerInterval -> updateTimerIntervalIfNecessary
* page/DOMTimer.cpp:
(WebCore::DOMTimer::DOMTimer):
    initialize m_currentTimerInterval
(WebCore::DOMTimer::fired):
    - when the nesting level changes (potentially triggering throttling) just call updateTimerIntervalIfNecessary
(WebCore::DOMTimer::updateTimerIntervalIfNecessary):
    - compute delta based on m_currentTimerInterval
(WebCore::DOMTimer::intervalClampedToMinimum):
    - this now always takes m_originalInterval and scriptExecutionContext()->minimumTimerInterval()
      as its inputs, so remove arguments.
(WebCore::DOMTimer::adjustMinimumTimerInterval): Deleted.
    - adjustMinimumTimerInterval -> updateTimerIntervalIfNecessary
* page/DOMTimer.h:
    - adjustMinimumTimerInterval -> updateTimerIntervalIfNecessary, added m_currentTimerInterval



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@173208 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Font Loading] Enable Page Caching
https://bugs.webkit.org/show_bug.cgi?id=136044

Reviewed by Andreas Kling.

Source/WebCore:

Modifying FontLoader to track fonts loaded via the loadFont
method as well as via CSS rules. Fonts loaded via loadFont are
tracked in m_numLoadingFromJS, while fonts loaded via CSS rules
are tracked in m_numLoadingFromCSS. The page is cacheable when no
fonts are currently loading.

Added fast/css/fontloader-page-cache.html

* css/FontLoader.cpp:
(WebCore::LoadFontCallback::create): Modified to take and store
the number of fonts it will be loading.
(WebCore::LoadFontCallback::createFromParams): Ditto.
(WebCore::LoadFontCallback::familyCount): Getter for number of
fonts loaded via this callback.
(WebCore::LoadFontCallback::LoadFontCallback):
(WebCore::LoadFontCallback::notifyLoaded): Callback the FontLoader
to let it update its count when all the fonts have finished loading.
(WebCore::FontLoader::loadFontDone): Ditto.
(WebCore::FontLoader::FontLoader):
(WebCore::FontLoader::beginFontLoading): Track the number of fonts
loading.
(WebCore::FontLoader::fontLoaded): Ditto.
(WebCore::FontLoader::loadError): Ditto.
(WebCore::FontLoader::loadFont):
* css/FontLoader.h:
(WebCore::FontLoader::loading):

LayoutTests:

Adding test that loads a font then navigates away and back.
Test must also be disabled while feature is turned off.

* TestExpectations: Skip test.
* fast/css/fontloader-page-cache-expected.txt: Added.
* fast/css/fontloader-page-cache.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@173209 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Win] Unreviewed test gardening.

Remove abandoned results for tests that had been converted to reftest.
Also resolve warnings in TestExpectation file.

* platform/win/TestExpectations: 
* platform/win/ietestcenter/css3/flexbox: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-baseline-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-baseline-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-center-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-center-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-center-002-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-center-002-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-end-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-end-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-start-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-start-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-stretch-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-align-stretch-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-direction-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-direction-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-flex-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-flex-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-flex-002-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-flex-002-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-flex-003-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-flex-003-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-flex-004-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-flex-004-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-flex-005-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-flex-005-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-groups-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-groups-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-groups-002-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-groups-002-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-groups-003-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-groups-003-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-groups-004-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-groups-004-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-layout-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-layout-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-layout-002-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-layout-002-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-layout-003-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-layout-003-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-ordinal-group-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-pack-center-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-pack-center-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-pack-end-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-pack-end-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-pack-justify-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-pack-justify-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-pack-start-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/flexbox/flexbox-pack-start-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid: Removed.
* platform/win/ietestcenter/css3/grid/display-grid-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/display-grid-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/display-grid-002-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/display-grid-002-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-column-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-column-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-column-002-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-column-002-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-column-003-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-column-003-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-columns-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-columns-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-items-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-items-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-items-002-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-items-002-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-items-003-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-items-003-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-items-004-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-items-004-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-items-005-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/grid/grid-items-005-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-block-formatting-context-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-block-formatting-context-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-containing-block-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-containing-block-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-containing-block-002-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-containing-block-002-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-containing-block-003-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-containing-block-003-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-filling-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-filling-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-002-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-002-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-003-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-003-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-004-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-004-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-005-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-005-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-006-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-006-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-007-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-007-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-008-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-008-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-009-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-009-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-010-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-010-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-012-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-012-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-013-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-013-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-014-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-014-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-015-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-applies-to-015-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-negative-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-negative-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-percentage-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/multicolumn/column-width-percentage-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/declaring-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/declaring-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/prefix-008-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/prefix-008-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/prefix-009-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/prefix-009-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/qualifiedNames-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/qualifiedNames-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/scope-003-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/scope-003-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-016-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-016-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-017-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-017-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-018-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-018-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-019-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-019-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-020-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-020-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-021-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-021-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-022-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-022-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-023-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/syntax-023-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/terminology-001-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/namespaces/terminology-001-expected.txt: Removed.
* platform/win/ietestcenter/css3/valuesandunits: Removed.
* platform/win/ietestcenter/css3/valuesandunits/units-000-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/valuesandunits/units-010-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/valuesandunits/units-010-expected.txt: Removed.
* platform/win/ietestcenter/css3/valuesandunits/units-020-expected-expected.txt: Removed.
* platform/win/ietestcenter/css3/valuesandunits/units-020-expected.txt: Removed.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@173210 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Dashboard should show performance bots.
https://bugs.webkit.org/show_bug.cgi?id=136386

Reviewed by Alexey Proskuryakov.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
(BuildbotIteration.prototype._parseData.collectPerfTestResults):
(BuildbotIteration.prototype._parseData):
Support possible performance failures.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotPerformanceQueueView.js:
New QueueView to manage the way we present performance data.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
(BuildbotQueue):
Support new 'performance' and 'performanceTestName' keys.


* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
Add performance column to the main page.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(body):
Make sure everything fits on 13 inch screens.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html:


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