WebKit-https.git
6 years agoNew perf dashboard UI tries to fetch commits all the time
rniwa@webkit.org [Fri, 10 Oct 2014 03:45:20 +0000 (03:45 +0000)]
New perf dashboard UI tries to fetch commits all the time
https://bugs.webkit.org/show_bug.cgi?id=137592

Reviewed by Andreas Kling.

Added hasReportedCommits boolean to repository meta data in manifest.json, and used that in
the front end to avoid issuing HTTP requests to fetch commit logs for repositories with
no reported commits as they are all going to fail.

Also added an internal cache to FetchCommitsForTimeRange in the front end to avoid fetching
the same commit logs repeatedly. There are two data structures we cache: commitsByRevision
which maps a given commit revision/hash to a commit object; and commitsByTime which is an array
of commits sorted chronologically by time.

* public/include/manifest.php:

* public/v2/app.js:
(App.CommitsViewerComponent.commitsChanged):

* public/v2/data.js:
(FetchCommitsForTimeRange):
(FetchCommitsForTimeRange._cachedCommitsByRepository):

* public/v2/manifest.js:
(App.Repository):

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

6 years agoRevert part of r174543 that broke grid layout tests.
simon.fraser@apple.com [Fri, 10 Oct 2014 03:34:01 +0000 (03:34 +0000)]
Revert part of r174543 that broke grid layout tests.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::specifiedValueForGridTrackBreadth):

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

6 years agoTweak some Mac test expectations.
simon.fraser@apple.com [Fri, 10 Oct 2014 03:25:23 +0000 (03:25 +0000)]
Tweak some Mac test expectations.

* platform/mac-wk2/TestExpectations:
* platform/mac/TestExpectations:

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

6 years agoMac TestExpectations cleanup.
simon.fraser@apple.com [Fri, 10 Oct 2014 01:41:05 +0000 (01:41 +0000)]
Mac TestExpectations cleanup.

Re-enable tests that now pass. Mark skipped tests as [ Failure ] when possible,
and rebaseline some tests.

* perf/nested-combined-selectors-expected.txt: Added.
* platform/mac-wk2/TestExpectations:
* platform/mac/TestExpectations:
* platform/mac/editing/spelling/autocorrection-at-beginning-of-word-1-expected.txt:
* platform/mac/editing/spelling/autocorrection-at-beginning-of-word-2-expected.txt:
* platform/mac/editing/spelling/autocorrection-delete-expected.txt:
* platform/mac/editing/spelling/autocorrection-in-textarea-expected.txt:
* platform/mac/editing/spelling/autocorrection-removing-underline-after-paste-expected.txt:
* platform/mac/editing/spelling/autocorrection-removing-underline-expected.txt:
* platform/mac/editing/spelling/autocorrection-simple-expected.txt:
* platform/mac/editing/spelling/delete-autocorrected-word-1-expected.txt:
* platform/mac/editing/spelling/delete-autocorrected-word-2-expected.txt:
* platform/mac/fast/dom/HTMLProgressElement/progress-element-expected.txt: Added.
* platform/mac/fast/forms/text-control-intrinsic-widths-expected.txt:
* platform/mac/fast/text/combining-character-sequence-fallback-expected.txt: Renamed from LayoutTests/platform/mac/platform/mac/fast/text/combining-character-sequence-fallback-expected.txt.
* platform/mac/media/controls-styling-expected.txt:
* platform/mac/media/video-zoom-controls-expected.txt:
* platform/mac/platform/mac/fast/text/combining-character-sequence-fallback-expected.png: Removed.

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

6 years agoSkip webgl tests in the iOS Simulator.
simon.fraser@apple.com [Fri, 10 Oct 2014 00:53:26 +0000 (00:53 +0000)]
Skip webgl tests in the iOS Simulator.

* platform/ios-simulator/TestExpectations:

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

6 years agoiOS Simulator results for webaudio tests.
simon.fraser@apple.com [Fri, 10 Oct 2014 00:53:24 +0000 (00:53 +0000)]
iOS Simulator results for webaudio tests.

* platform/ios-simulator/webaudio/*: Added

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

6 years agoiOS Simulator results for webarchive tests.
simon.fraser@apple.com [Fri, 10 Oct 2014 00:53:20 +0000 (00:53 +0000)]
iOS Simulator results for webarchive tests.

* platform/ios-simulator/webarchive/*: Added

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

6 years agoiOS Simulator and generic results for userscripts tests.
simon.fraser@apple.com [Fri, 10 Oct 2014 00:53:19 +0000 (00:53 +0000)]
iOS Simulator and generic results for userscripts tests.

* platform/ios-simulator/userscripts/user-script-plugin-document-expected.txt: Added.
* userscripts/script-run-at-end-expected.txt: Added.

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

6 years agoiOS Simulator results (many of which are failures) for transitions tests.
simon.fraser@apple.com [Fri, 10 Oct 2014 00:53:18 +0000 (00:53 +0000)]
iOS Simulator results (many of which are failures) for transitions tests.

* platform/ios-simulator/transitions/*: Added

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

6 years agoiOS Simulator results for transforms tests.
simon.fraser@apple.com [Fri, 10 Oct 2014 00:53:16 +0000 (00:53 +0000)]
iOS Simulator results for transforms tests.

* platform/ios-simulator/transforms/*: Added

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

6 years agoiOS Simulator results for tables tests.
simon.fraser@apple.com [Fri, 10 Oct 2014 00:53:14 +0000 (00:53 +0000)]
iOS Simulator results for tables tests.

* platform/ios-simulator/tables/*: Added

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

6 years agoDenote some crashing SVG tests.
simon.fraser@apple.com [Fri, 10 Oct 2014 00:52:55 +0000 (00:52 +0000)]
Denote some crashing SVG tests.

* platform/ios-simulator/TestExpectations:

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

6 years agoComputed style for clip is wrong with respect to auto
dino@apple.com [Fri, 10 Oct 2014 00:19:03 +0000 (00:19 +0000)]
Computed style for clip is wrong with respect to auto
https://bugs.webkit.org/show_bug.cgi?id=137567

Reviewed by Simon Fraser.

Source/WebCore:

Make sure that the computed style of clip returns the
correct value when the input is "auto", or in this
case "rect(auto, auto, auto, auto)". Before this
patch it returned "rect(0px, 0px, 0px, 0px)" which
was completely wrong.

Test: fast/css/computed-clip-with-auto-rect.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::autoOrZoomAdjustedValue): Helper function to make the correct keyword or length.
(WebCore::specifiedValueForGridTrackBreadth): It can use the helper too.
(WebCore::ComputedStyleExtractor::propertyValue): If the
top/right/bottom/left is "auto", add that identifier
to the output rectangle.

LayoutTests:

Test that an input of clip: rect(auto, auto, auto, auto)
is the same on the way out.

* fast/css/computed-clip-with-auto-rect-expected.txt: Added.
* fast/css/computed-clip-with-auto-rect.html: Added.

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

6 years agoUse RenderObject::firstChildSlow() / lastChildSlow() less
cdumez@apple.com [Thu, 9 Oct 2014 23:55:40 +0000 (23:55 +0000)]
Use RenderObject::firstChildSlow() / lastChildSlow() less
https://bugs.webkit.org/show_bug.cgi?id=137573

Reviewed by Andreas Kling.

Use RenderObject::firstChildSlow() / lastChildSlow() less by using
tighter typing at call sites whenever possible to be able to call the
faster RenderElement::firstChild() / lastChild() instead.

This patch also uses more references instead of pointers when possible.

No new tests, no behavior change.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::firstChildIsInlineContinuation):
(WebCore::AccessibilityRenderObject::previousSibling):
(WebCore::lastChildHasContinuation):
(WebCore::AccessibilityRenderObject::nextSibling):
* page/FrameView.cpp:
(WebCore::countRenderedCharactersInRenderObjectWithThreshold):
(WebCore::FrameView::renderedCharactersExceed):
* rendering/RenderElement.h:
* rendering/RenderRuby.cpp:
(WebCore::isAnonymousRubyInlineBlock):
(WebCore::isRubyBeforeBlock):
(WebCore::isRubyAfterBlock):
* rendering/svg/RenderSVGInline.h:
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::layout):
* rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextRenderer):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForForSubtree):
(WebCore::SVGTextLayoutAttributesBuilder::collectTextPositioningElements):
(WebCore::SVGTextLayoutAttributesBuilder::buildCharacterDataMap):
* rendering/svg/SVGTextLayoutAttributesBuilder.h:
* svg/SVGTextPositioningElement.cpp:
(WebCore::SVGTextPositioningElement::elementFromRenderer):
* svg/SVGTextPositioningElement.h:

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

6 years agoBuild fix for Win EWS bots.
roger_fong@apple.com [Thu, 9 Oct 2014 23:50:21 +0000 (23:50 +0000)]
Build fix for Win EWS bots.
* testing/Internals.idl: Move enum declaration to the top of the file.

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

6 years agoSource/WebCore:
commit-queue@webkit.org [Thu, 9 Oct 2014 23:48:09 +0000 (23:48 +0000)]
Source/WebCore:
RenderMathMLUnderOver adds spacing to the child operator indefinitely when resizing the window.
https://bugs.webkit.org/show_bug.cgi?id=137330

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2014-10-09
Reviewed by Darin Adler.

The layout for the <mundercover> math object happens in two separate passes. The first pass runs
the layout for the two children and then calculates the maximum child width.  It then sets the
stretch size for the math operator child.  And finally it runs the second layout pass by calling
the base class layout() function. The base class function then runs the layout for the children
rendering blocks.  In the operator child function computePreferredLogicalWidths(), the stretch
size is used to adjust the width (or the height) of the operator. Then it adds the leading and
trailing spaces and the total will be the operator child width.

When resizing or zooming the window, the render objects are just invalidated but marked as 'needs-
Layout'.  The problem is happening because the stretch size of the math operator is not reset
before running the layout.  The old logical width (or height) of the the math operator child which
is equal to the stretch size plus the leading and trailing spaces for is compared with the glyph
size if the old logical width ( or height) is larger, it is set to be the stretch size.  When it
is used again because of invalidation, new leading and trailing spaces are included in the new
logical width.  So with every zooming-in or out or window resizing, new leading and trailing
spaces are added to the logical width of the math operator child or the math <munderober> object.

Ensure the stretch size of the math operator render object is reset before running its layout.
Running the layout means either the page is just loaded or it's invalidated which means, no
layout stall data should be used.

Test: mathml/opentype/munderover-window-resize.html

* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::resetStretchSize):
* rendering/mathml/RenderMathMLOperator.h:
resetStretchSize() sets the stretch size to its original value when the class is created.
* rendering/mathml/RenderMathMLUnderOver.cpp:
(WebCore::RenderMathMLUnderOver::layout):
Make sure the operator stretch size is reset before calling its layout. Also make sure the new
maximum stretch size to the operator objects that were invalid and needsLayout.

LayoutTests:
RenderMathMLUnderOver adds spacing to the child operator indefinitely when zooming or resizing the window.
https://bugs.webkit.org/show_bug.cgi?id=137330

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2014-10-09
Reviewed by Darin Adler, Daniel Bates.

When the alignment is center, which is the common case for math, changing the size of
an object affects the position of this object also.  We need to confirm that zooming or
resizing the window should not affect the rectangle of the over/under math object operator.

* mathml/opentype/munderover-window-resize-expected.txt: Added.
* mathml/opentype/munderover-window-resize.html: Added.
New test with many under and over math objects.  After loading the page, the window is resized and
the view is zoomed in and out to make sure the layout of these under and over objects were not changed.
* platform/mac/mathml/opentype/opentype-stretchy-horizontal-expected.txt:
This test was wrong because of the spacing issue. The page has two <mover> math objects at the beginning.
Each of them has an <mspace> child. The width of the first <mspace> is 1em while the width of the second
<mspace> is 2em. The font size is 10pt. So it is expected to have the first one 10 pixels and the second
to be 20 pixels. In the test, the width of the first is 22 and the width of the second is 32.
I do expect this test to fail on other platforms since they have the same mistake which is now fixed. I am
going to submit the mac expected version only and when it fails I am going to collect the result and submit
another patch for the other platforms expected files.

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

6 years agoAdd Mac OS Yosemite dashboard support.
dburkart@apple.com [Thu, 9 Oct 2014 23:29:27 +0000 (23:29 +0000)]
Add Mac OS Yosemite dashboard support.

Rubber-stamped by Lucas Forschler.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Yosemite.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Yosemite@2x.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:

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

6 years agoAdd Babak to contributors.json and add historical email addresses for some contributors
rniwa@webkit.org [Thu, 9 Oct 2014 23:16:23 +0000 (23:16 +0000)]
Add Babak to contributors.json and add historical email addresses for some contributors
https://bugs.webkit.org/show_bug.cgi?id=137546

Reviewed by Christophe Dumez.

contributors.json is used to analyze historical commit data and change logs.

Add back historical email addresses for some contributors and also add Babak (Shafiei).

* Scripts/webkitpy/common/config/contributors.json:

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

6 years agoImport W3C @supports tests
dino@apple.com [Thu, 9 Oct 2014 22:34:14 +0000 (22:34 +0000)]
Import W3C @supports tests
https://bugs.webkit.org/show_bug.cgi?id=137569
<rdar://problem/18601076>

Reviewed by Simon Fraser.

Import the tests from https://test.csswg.org/source/css-conditional-3/

We currently fail 2 tests, tracked in TestExpectations.

* TestExpectations:
* css3/conditional/w3c/LICENSE: Added.
* css3/conditional/w3c/at-supports-001-expected.html: Added.
* css3/conditional/w3c/at-supports-001.html: Added.
* css3/conditional/w3c/at-supports-002-expected.html: Added.
* css3/conditional/w3c/at-supports-002.html: Added.
* css3/conditional/w3c/at-supports-003-expected.html: Added.
* css3/conditional/w3c/at-supports-003.html: Added.
* css3/conditional/w3c/at-supports-004-expected.html: Added.
* css3/conditional/w3c/at-supports-004.html: Added.
* css3/conditional/w3c/at-supports-005-expected.html: Added.
* css3/conditional/w3c/at-supports-005.html: Added.
* css3/conditional/w3c/at-supports-006-expected.html: Added.
* css3/conditional/w3c/at-supports-006.html: Added.
* css3/conditional/w3c/at-supports-007-expected.html: Added.
* css3/conditional/w3c/at-supports-007.html: Added.
* css3/conditional/w3c/at-supports-008-expected.html: Added.
* css3/conditional/w3c/at-supports-008.html: Added.
* css3/conditional/w3c/at-supports-009-expected.html: Added.
* css3/conditional/w3c/at-supports-009.html: Added.
* css3/conditional/w3c/at-supports-010-expected.html: Added.
* css3/conditional/w3c/at-supports-010.html: Added.
* css3/conditional/w3c/at-supports-011-expected.html: Added.
* css3/conditional/w3c/at-supports-011.html: Added.
* css3/conditional/w3c/at-supports-012-expected.html: Added.
* css3/conditional/w3c/at-supports-012.html: Added.
* css3/conditional/w3c/at-supports-013-expected.html: Added.
* css3/conditional/w3c/at-supports-013.html: Added.
* css3/conditional/w3c/at-supports-014-expected.html: Added.
* css3/conditional/w3c/at-supports-014.html: Added.
* css3/conditional/w3c/at-supports-015-expected.html: Added.
* css3/conditional/w3c/at-supports-015.html: Added.
* css3/conditional/w3c/at-supports-016-expected.html: Added.
* css3/conditional/w3c/at-supports-016.html: Added.
* css3/conditional/w3c/at-supports-017-expected.html: Added.
* css3/conditional/w3c/at-supports-017.html: Added.
* css3/conditional/w3c/at-supports-018-expected.html: Added.
* css3/conditional/w3c/at-supports-018.html: Added.
* css3/conditional/w3c/at-supports-019-expected.html: Added.
* css3/conditional/w3c/at-supports-019.html: Added.
* css3/conditional/w3c/at-supports-020-expected.html: Added.
* css3/conditional/w3c/at-supports-020.html: Added.
* css3/conditional/w3c/at-supports-021-expected.html: Added.
* css3/conditional/w3c/at-supports-021.html: Added.
* css3/conditional/w3c/at-supports-022-expected.html: Added.
* css3/conditional/w3c/at-supports-022.html: Added.
* css3/conditional/w3c/at-supports-023-expected.html: Added.
* css3/conditional/w3c/at-supports-023.html: Added.
* css3/conditional/w3c/at-supports-024-expected.html: Added.
* css3/conditional/w3c/at-supports-024.html: Added.
* css3/conditional/w3c/at-supports-025-expected.html: Added.
* css3/conditional/w3c/at-supports-025.html: Added.
* css3/conditional/w3c/at-supports-026-expected.html: Added.
* css3/conditional/w3c/at-supports-026.html: Added.
* css3/conditional/w3c/at-supports-027-expected.html: Added.
* css3/conditional/w3c/at-supports-027.html: Added.
* css3/conditional/w3c/at-supports-028-expected.html: Added.
* css3/conditional/w3c/at-supports-028.html: Added.
* css3/conditional/w3c/at-supports-029-expected.html: Added.
* css3/conditional/w3c/at-supports-029.html: Added.
* css3/conditional/w3c/at-supports-030-expected.html: Added.
* css3/conditional/w3c/at-supports-030.html: Added.
* css3/conditional/w3c/at-supports-031-expected.html: Added.
* css3/conditional/w3c/at-supports-031.html: Added.
* css3/conditional/w3c/at-supports-032-expected.html: Added.
* css3/conditional/w3c/at-supports-032.html: Added.
* css3/conditional/w3c/at-supports-033-expected.html: Added.
* css3/conditional/w3c/at-supports-033.html: Added.

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

6 years agoRemove ENABLE_CSS3_CONDITIONAL_RULES
dino@apple.com [Thu, 9 Oct 2014 22:33:00 +0000 (22:33 +0000)]
Remove ENABLE_CSS3_CONDITIONAL_RULES
https://bugs.webkit.org/show_bug.cgi?id=137571

Reviewed by Simon Fraser.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

We have good enough support for @supports that
it should be a consistent part of the platform. Remove
the compile-time guard.

* Configurations/FeatureDefines.xcconfig:
* WebCore.exp.in:
* bindings/js/JSCSSRuleCustom.cpp:
(WebCore::toJS):
* bindings/objc/DOMCSS.mm:
(kitClass):
* css/CSSGrammar.y.in:
* css/CSSParser.cpp:
(WebCore::CSSParser::CSSParser):
(WebCore::CSSParser::parseSupportsCondition):
(WebCore::CSSParser::detectAtToken):
(WebCore::CSSParser::detectSupportsToken):
(WebCore::CSSParser::realLex):
* css/CSSParser.h:
* css/CSSRule.h:
* css/CSSRule.idl:
* css/CSSSupportsRule.cpp:
* css/CSSSupportsRule.h:
* css/CSSSupportsRule.idl:
* css/DOMWindowCSS.cpp:
* css/DOMWindowCSS.h:
* css/DOMWindowCSS.idl:
* css/InspectorCSSOMWrappers.cpp:
(WebCore::InspectorCSSOMWrappers::collect):
* css/RuleSet.cpp:
(WebCore::RuleSet::addChildRules):
* css/StyleRule.cpp:
(WebCore::StyleRuleBase::destroy):
(WebCore::StyleRuleBase::copy):
(WebCore::StyleRuleBase::createCSSOMWrapper):
(WebCore::StyleRuleSupports::StyleRuleSupports):
* css/StyleRule.h:
(WebCore::toStyleRuleSupports):
* css/StyleSheetContents.cpp:
(WebCore::childRulesHaveFailedOrCanceledSubresources):
* inspector/InspectorStyleSheet.cpp:
(flattenSourceData):
(WebCore::asCSSRuleList):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::css):
* page/DOMWindow.h:
* page/DOMWindow.idl:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Source/WTF:

* wtf/FeatureDefines.h:

LayoutTests:

Unskipping tests.

* platform/ios-sim/Skipped:
* platform/wincairo/TestExpectations:
* platform/wk2/TestExpectations:

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

6 years agoAdd the baseline implementation of :not(selectorList)
benjamin@webkit.org [Thu, 9 Oct 2014 22:14:29 +0000 (22:14 +0000)]
Add the baseline implementation of :not(selectorList)
https://bugs.webkit.org/show_bug.cgi?id=137548

Reviewed by Andreas Kling.

Source/WebCore:

This patch extend the pseudo class :not() to support the new definition
in CSS Selectors level 4.

Instead of supporting a single simple selector, :not() now support
an arbitrary selector list, excepted pseudo elements.

One side effect of this change is :visited and :link are no longer supported
inside :not(). The reason has to do with complexity and performance.
Since :not() and :matches() can have arbitrary selector list, keeping track of
:visited and :link can have many combination superposing, some valid, some invalid.

Supporting :visited and :link should be possible by chaning the way we handle
them for style resolution, but given the limited use cases for such features
I'll wait to see if there is any interest before changing everything.

This patch only covers SelectorChecker to keep things simple. The CSS JIT
will come later.

Tests: fast/css/not-basics.html
       fast/css/parsing-css-not-1.html
       fast/css/parsing-css-not-2.html
       fast/css/parsing-css-not-3.html
       fast/css/parsing-css-not-4.html
       fast/css/parsing-css-not-5.html
       fast/css/parsing-css-not-6.html
       fast/css/parsing-css-not-7.html
       fast/css/parsing-css-not-8.html
       fast/css/parsing-css-not-9.html
       fast/css/parsing-css-nth-child-of-4.html
       fast/selectors/not-basics.html
       fast/selectors/not-nested.html
       fast/selectors/not-selector-list.html

* css/CSSGrammar.y.in:
Rename selectorListDoesNotMatchAnyPseudoElement() to selectorListDoesNotMatchAnyPseudoElement()
since both :not() and :nth-child(An+B of selectorList) have the same requirements at the moment.

* css/CSSParserValues.cpp:
(WebCore::selectorListMatchesPseudoElement):
The patch adding :matches() introduced the possibility of putting pseudo element
arbitrary deep in a sequence of nested :matches(). Since this case is forbidded
by :not() and :nth-child(An+B of selectorList), selectorListMatchesPseudoElement()
now becomes recursive to find those pseudo elements.

* css/CSSSelector.cpp:
(WebCore::CSSSelector::selectorText):
CSSOM for the extended :not().

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne):
(WebCore::SelectorChecker::determineLinkMatchType):
* cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoClassType):
Disable the new capabilities from the JIT for now.

LayoutTests:

There are 3 big kind of changes to the tests:
1) The new implementation intentionally breaks :not() of :visited and :link.
   Some test for the basic :not(:link) and :not(:visited) are consequently failing.
2) Some tests were ensuring that :not() only support simple selectors, those are
   becoming irrelevant.
3) New test for the feature.

* TestExpectations:
This patch intentionally breaks :not(:link). The test fast/history/link-inside-not.html
time out since it is waiting for the link to match.

* fast/css/invalid-not-with-simple-selector-sequence-expected.txt: Removed.
* fast/css/invalid-not-with-simple-selector-sequence.html: Removed.
This test originally came from IEtestcenter. None of it is useful, all the "invalid"
cases are now fully functional selectors.

* fast/css/css-selector-text-expected.txt:
* fast/css/css-selector-text.html:
* fast/css/css-set-selector-text-expected.txt:
* fast/css/css-set-selector-text.html:
Parsing and CSS OM tests for the new :not().

* fast/css/parsing-css-matches-5-expected.txt:
* fast/css/parsing-css-matches-5.html:
* fast/css/parsing-css-matches-6-expected.txt:
* fast/css/parsing-css-matches-6.html:
* fast/css/parsing-css-matches-7-expected.txt:
* fast/css/parsing-css-matches-7.html:
* fast/css/parsing-css-matches-8-expected.txt:
* fast/css/parsing-css-matches-8.html:
Update the tests of :matches() to account for the extended :not().

* fast/dom/SelectorAPI/resig-SelectorsAPI-test-expected.txt:
Some cases covered by this test are now valid. The test is kept as is for
its historical value, but all the FAIL cover valid use cases in Level 4.

* platform/mac/css3/selectors3/html/css3-modsel-61-expected.txt:
* platform/mac/css3/selectors3/html/css3-modsel-83-expected.txt:
* platform/mac/css3/selectors3/xhtml/css3-modsel-61-expected.txt:
* platform/mac/css3/selectors3/xhtml/css3-modsel-83-expected.txt:
* platform/mac/css3/selectors3/xml/css3-modsel-61-expected.txt:
* platform/mac/css3/selectors3/xml/css3-modsel-83-expected.txt:
* platform/mac/fast/selectors/061-expected.txt:
* platform/mac/fast/selectors/083-expected.txt:
Those tests are changing because of the breakage of :link and :visited.

* fast/css/not-basics-expected.html: Added.
* fast/css/not-basics.html: Added.
Basic use cases of the extended :not() that should always style correctly.

* fast/css/parsing-css-not-1-expected.txt: Added.
* fast/css/parsing-css-not-1.html: Added.
* fast/css/parsing-css-not-2-expected.txt: Added.
* fast/css/parsing-css-not-2.html: Added.
* fast/css/parsing-css-not-3-expected.txt: Added.
* fast/css/parsing-css-not-3.html: Added.
* fast/css/parsing-css-not-4-expected.txt: Added.
* fast/css/parsing-css-not-4.html: Added.
* fast/css/parsing-css-not-5-expected.txt: Added.
* fast/css/parsing-css-not-5.html: Copied from LayoutTests/fast/css/parsing-css-matches-5.html.
* fast/css/parsing-css-not-6-expected.txt: Added.
* fast/css/parsing-css-not-6.html: Copied from LayoutTests/fast/css/parsing-css-matches-6.html.
* fast/css/parsing-css-not-7-expected.txt: Copied from LayoutTests/fast/css/parsing-css-matches-7-expected.txt.
* fast/css/parsing-css-not-7.html: Copied from LayoutTests/fast/css/parsing-css-matches-7.html.
* fast/css/parsing-css-not-8-expected.txt: Copied from LayoutTests/fast/css/parsing-css-matches-8-expected.txt.
* fast/css/parsing-css-not-8.html: Copied from LayoutTests/fast/css/parsing-css-matches-8.html.
* fast/css/parsing-css-not-9-expected.txt: Added.
* fast/css/parsing-css-not-9.html: Copied from LayoutTests/fast/css/parsing-css-matches-8.html.
Parsing of :not(). A lot of them were inspired by Yusuke Suzuki's test suite
for :matches(). A lot of test case apply to :not(), the main difference is that
pseudo elements must fail inside :not().

* fast/css/parsing-css-nth-child-of-4-expected.txt: Added.
* fast/css/parsing-css-nth-child-of-4.html: Added.
With the introduction of :matches(), it is possible to have arbitrarily deep pseudo elements.
The tests for :not() cover the case fixed with this patch, this addition covers :nth-child(of).

* fast/selectors/not-basics-expected.txt: Added.
* fast/selectors/not-basics.html: Added.
* fast/selectors/not-nested-expected.txt: Added.
* fast/selectors/not-nested.html: Added.
* fast/selectors/not-selector-list-expected.txt: Added.
* fast/selectors/not-selector-list.html: Added.
Test coverage for the new features.

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

6 years agoAdd Mac OS Yosemite webkit build infrastructure.
lforschler@apple.com [Thu, 9 Oct 2014 22:09:18 +0000 (22:09 +0000)]
Add Mac OS Yosemite webkit build infrastructure.

This patch adds 15 bots to our build.webkit.org configuration.
We are matching the current Mavericks machines 1:1.

This patch includes some minor spacing changes to the buildslaves section to make everything similar.

Reviewed by Matt Hanson.

* BuildSlaveSupport/build.webkit.org-config/config.json:

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

6 years agoiOS Simulator results for svg tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 21:42:49 +0000 (21:42 +0000)]
iOS Simulator results for svg tests.

* platform/ios-simulator/svg/*: Added

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

6 years agoSkip some storage tests for iOS Simulator.
simon.fraser@apple.com [Thu, 9 Oct 2014 21:42:31 +0000 (21:42 +0000)]
Skip some storage tests for iOS Simulator.

* platform/ios-simulator/TestExpectations:

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

6 years agoiOS Simulator results for sputnkik tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 21:42:30 +0000 (21:42 +0000)]
iOS Simulator results for sputnkik tests.

* platform/ios-simulator/sputnkik/*: Added

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

6 years agoiOS Simulator results for security tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 21:42:29 +0000 (21:42 +0000)]
iOS Simulator results for security tests.

* platform/ios-simulator/security/*: Added

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

6 years agoiOS Simulator results for scrollingcoordinator tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 21:42:28 +0000 (21:42 +0000)]
iOS Simulator results for scrollingcoordinator tests.

* platform/ios-simulator/scrollingcoordinator/*: Added

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

6 years agoiOS Simulator results for scrollbars tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 21:42:27 +0000 (21:42 +0000)]
iOS Simulator results for scrollbars tests.

* platform/ios-simulator/scrollbars/*: Added

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

6 years agoiOS Simulator results for mathml tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 21:42:25 +0000 (21:42 +0000)]
iOS Simulator results for mathml tests.

* platform/ios-simulator/mathml/*: Added

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

6 years agoDon't use backticks when running commands, as we run into sh-related
dburkart@apple.com [Thu, 9 Oct 2014 21:10:41 +0000 (21:10 +0000)]
Don't use backticks when running commands, as we run into sh-related
interpolation issues. Also, fix our usage of system() to properly
retrieve the status code.
https://bugs.webkit.org/show_bug.cgi?id=137541

Reviewed by Darin Adler.

* Scripts/git-add-reviewer:
(interactive):
(nonInteractive):
(requireCleanWorkTree):
(cherryPick):
(commit):
(addReviewerToFile):
(head):
(isAncestor):
(toCommit):
(changeLogsForCommit):
(resetToCommit):
(getConfigValue):
(runCommandWithOutput):

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

6 years agoAdd a WebKit1 preference for selection services
timothy_horton@apple.com [Thu, 9 Oct 2014 20:56:16 +0000 (20:56 +0000)]
Add a WebKit1 preference for selection services
https://bugs.webkit.org/show_bug.cgi?id=137498
<rdar://problem/18572699>

Reviewed by Simon Fraser.

* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences serviceControlsEnabled]):
(-[WebPreferences setServiceControlsEnabled:]):
* WebView/WebPreferencesPrivate.h:
* WebView/WebView.mm:
(-[WebView _preferencesChanged:]):
Add and plumb the preference.

* MiniBrowser/mac/WK1BrowserWindowController.m:
(-[WK1BrowserWindowController awakeFromNib]):
Turn on image and selection services in the Legacy WebKit MiniBrowser.

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

6 years agoMove ServicesOverlayController to WebCore
timothy_horton@apple.com [Thu, 9 Oct 2014 20:53:02 +0000 (20:53 +0000)]
Move ServicesOverlayController to WebCore
https://bugs.webkit.org/show_bug.cgi?id=137416
<rdar://problem/18546283>

Reviewed by Anders Carlsson.

Move ServicesOverlayController from WebKit2 to WebCore, as it can be used by both Legacy WebKit and WebKit2.

* Platform/Logging.h:
Move Services logging channel to WebCore.

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::handleTelephoneNumberClick):
(WebKit::WebChromeClient::handleSelectionServiceClick):
(WebKit::WebChromeClient::hasRelevantSelectionServices):
Implement services-related ChromeClient callbacks.
Clicks are forwarded to WebPageMac where they do what they used to;
hasRelevantSelectionServices is implemented as it was when it lived
inside ServicesOverlayController.

* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::selectedTelephoneNumberRangesChanged): Deleted.
(WebKit::WebEditorClient::selectionRectsDidChange): Deleted.
* WebProcess/WebCoreSupport/WebEditorClient.h:
Remove WebEditorClient overrides for now-removed functions.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::updatePreferences):
Forward serviceControlsEnabled setting to WebCore.

(WebKit::WebPage::servicesOverlayController): Deleted.
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::serviceControlsEnabled): Deleted.

* WebCore.xcodeproj/project.pbxproj:
* editing/Editor.cpp:
(WebCore::Editor::scanSelectionForTelephoneNumbers):
* editing/SelectionRectGatherer.cpp:
(WebCore::SelectionRectGatherer::Notifier::~Notifier):
Notify ServicesOverlayController of changes via Page instead of EditorClient.

* page/ChromeClient.h:
(WebCore::ChromeClient::handleTelephoneNumberClick):
(WebCore::ChromeClient::handleSelectionServiceClick):
(WebCore::ChromeClient::hasRelevantSelectionServices):
Add ChromeClient functions for services actions.

* page/EditorClient.h:
(WebCore::EditorClient::selectedTelephoneNumberRangesChanged): Deleted.
(WebCore::EditorClient::selectionRectsDidChange): Deleted.
Remove EditorClient functions for notifying ServicesOverlayController of changes,
because it lives in WebCore proper now.

* page/Page.cpp:
(WebCore::Page::Page):
* page/Page.h:
(WebCore::Page::servicesOverlayController):
Keep a ServicesOverlayController on Page.

* page/PageOverlay.cpp:
(WebCore::PageOverlay::mouseEvent):
Use windowToContents instead of rootViewToContents; events come in in window coordinates.

* page/PageOverlayController.cpp:
(WebCore::PageOverlayController::updateSettingsForLayer):
Get Settings from MainFrame, not Page.

* page/Settings.in:
Add servicesControlsEnabled setting.

* page/mac/ServicesOverlayController.h: Renamed from Source/WebKit2/WebProcess/WebPage/ServicesOverlayController.h.
* page/mac/ServicesOverlayController.mm: Renamed from Source/WebKit2/WebProcess/WebPage/mac/ServicesOverlayController.mm.
Moved from WebKit2. Mostly mechanical changes, plus:
    - Use windowToContents instead of rootViewToContents; events come in in window coordinates.
    - Cut off rebuild* if serviceControlsEnabled setting is false
    - Don't create the overlay if serviceControlsEnabled setting is false
    - Send click events via ChromeClient.
    - Tie our lifetime to MainFrame instead of Page, and get lots of things from MainFrame instead.

* platform/Logging.h:
Add Services logging channel (moved from WebKit2).

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

6 years ago[Win] Unreviewed build fix: Revert r174378
bfulgham@apple.com [Thu, 9 Oct 2014 20:51:55 +0000 (20:51 +0000)]
[Win] Unreviewed build fix: Revert r174378

Roll back this change, as it didn't fix the EWS builders, and has only
served to make Windows builds take forever.

* WebCore.vcxproj/WebCoreGenerated.make: Don't delete all generated content
every time we build.

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

6 years agoUnreviewed GTK build fix after r174504.
cdumez@apple.com [Thu, 9 Oct 2014 20:20:38 +0000 (20:20 +0000)]
Unreviewed GTK build fix after r174504.

Missing header include.

* rendering/svg/SVGTextQuery.cpp:

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

6 years agoGet the patch scripts running on Haiku
commit-queue@webkit.org [Thu, 9 Oct 2014 19:52:04 +0000 (19:52 +0000)]
Get the patch scripts running on Haiku
https://bugs.webkit.org/show_bug.cgi?id=137559

Patch by Adrien Destugues <pulkomandy@gmail.com> on 2014-10-09
Reviewed by Benjamin Poulain.

Use /usr/bin/env instead of hardcoding path to perl.
Declare haiku platform in platforminfo.py to avoid check-webkit-style
failure.

* Scripts/commit-log-editor:
* Scripts/num-cpus:
* Scripts/prepare-ChangeLog:
* Scripts/run-launcher:
* Scripts/svn-create-patch:
* Scripts/webkitpy/common/system/platforminfo.py:
(PlatformInfo._determine_os_name):

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

6 years agoDisable tests for more unsupported features in iOS Simulator.
simon.fraser@apple.com [Thu, 9 Oct 2014 19:26:02 +0000 (19:26 +0000)]
Disable tests for more unsupported features in iOS Simulator.

* platform/ios-simulator/TestExpectations:

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

6 years agoiOS Simulator results for ietestcenter tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 19:26:01 +0000 (19:26 +0000)]
iOS Simulator results for ietestcenter tests.
Skip fullscreen and gamepad tests.

* platform/ios-simulator/ietestcenter/*: Added

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

6 years agoiOS Simulator results for fonts tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 19:25:58 +0000 (19:25 +0000)]
iOS Simulator results for fonts tests.

* platform/ios-simulator/fonts/*: Added

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

6 years agoRemove second-to-last client of WebFontCache
mmaxfield@apple.com [Thu, 9 Oct 2014 19:16:05 +0000 (19:16 +0000)]
Remove second-to-last client of WebFontCache
https://bugs.webkit.org/show_bug.cgi?id=137550

Reviewed by Darin Adler.

Source/WebCore:

No new tests because no behavior change.

* WebCore.exp.in:
* platform/graphics/FontCache.h: Allow migration of client to getCachedFontData()

Source/WebKit/mac:

Use FontCache::getCachedFontData() instead of WebFontCache.

* WebView/WebHTMLView.mm:
(-[WebHTMLView _addToStyle:fontA:fontB:]):

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

6 years ago[Mac] Spending too much time mapping desired font families to available ones
cdumez@apple.com [Thu, 9 Oct 2014 19:05:51 +0000 (19:05 +0000)]
[Mac] Spending too much time mapping desired font families to available ones
https://bugs.webkit.org/show_bug.cgi?id=137539

Reviewed by Darin Adler.

While profiling the load of weather.com, I noticed that we are spending
quite a bit of time trying to map the font family requested to a font
that is available on the system. The process involves:
1. Doing a linear search of all the installed font families and do a
   case-insensitive string comparison for each of them until we find a
   match,
2. Then, if we don't find a match, do another linear search of the
   fonts' postscript names this time and do again a case-insensitive
   string comparison for each of them.

This process is costly and the fonts requested by weather.com are not
available, causing us to do 2 linear searches and a lot of string
comparisons (accounting for ~2% of the WebProcess CPU time for the page
load). As a result, we end up spending ~90ms in
internalFontWithFamily() when loading weather.com.

This patch introduces a cache for the mapping between desired font
families and available font families. This cuts the time spent in
internalFontWithFamily() in half (~45ms). The cache gets invalidated
when fonts are installed / uninstalled on the system so we don't break
that scenario. The cache is also limited in size to avoid using too
much memory.

No new tests, but manual testing making sure the cache gets invalidated
when installing a font on the system.

* platform/graphics/mac/FontCacheMac.mm:
(WebCore::invalidateFontCache):
* platform/mac/WebFontCache.h:
* platform/mac/WebFontCache.mm:
(desiredFamilyToAvailableFamilyDictionary):
(rememberDesiredFamilyToAvailableFamilyMapping):
(+[WebFontCache internalFontWithFamily:traits:weight:size:]):
(+[WebFontCache invalidate]):

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

6 years ago[CSS Font Loading] Decrement the font loading count before notifying callbacks
betravis@adobe.com [Thu, 9 Oct 2014 18:43:25 +0000 (18:43 +0000)]
[CSS Font Loading] Decrement the font loading count before notifying callbacks
https://bugs.webkit.org/show_bug.cgi?id=137401

Reviewed by Alexey Proskuryakov.

Source/WebCore:

In the callbacks, it should appear that font load has completed. This is
accessed through loading(), which relies on the current number of
fonts loading via JS and CSS.

Unskipping the failing test http/tests/webfont/fontloader-loading-attribute.html
test which tests this.

* css/FontLoader.cpp:
(WebCore::LoadFontCallback::notifyLoaded):

LayoutTests:

* platform/mac/TestExpectations: Unskip the test this bug was causing to fail.

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

6 years agoiOS Simulator results for editing tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 18:41:00 +0000 (18:41 +0000)]
iOS Simulator results for editing tests.

* platform/ios-simulator/editing/*: Added

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

6 years agoUnreviewed Windows build fix after r174506.
cdumez@apple.com [Thu, 9 Oct 2014 18:38:50 +0000 (18:38 +0000)]
Unreviewed Windows build fix after r174506.

We no longer needed to dereference as it is a reference instead of a
pointer now.

* page/win/EventHandlerWin.cpp:
(WebCore::EventHandler::passWheelEventToWidget):

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

6 years ago[iOS] Crash in CFURLDownloadClient.didFail if the download has a null resumeData
aestes@apple.com [Thu, 9 Oct 2014 18:16:12 +0000 (18:16 +0000)]
[iOS] Crash in CFURLDownloadClient.didFail if the download has a null resumeData
https://bugs.webkit.org/show_bug.cgi?id=137551

Reviewed by David Kilzer.

CFDataGetBytePtr() and CFDataGetLength() crash if passed a null value.

* Shared/Downloads/ios/DownloadIOS.mm:
(WebKit::setUpDownloadClient):

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

6 years agoEnable ARM64 disassembler for all platforms
commit-queue@webkit.org [Thu, 9 Oct 2014 18:10:31 +0000 (18:10 +0000)]
Enable ARM64 disassembler for all platforms
https://bugs.webkit.org/show_bug.cgi?id=137560

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-10-09
Reviewed by Michael Saboff.

Remove PLATFORM conditions from around WTF_USE_ARM64_DISASSEMBLER since
the ARM64 disassembler has no platform dependencies anymore.

* wtf/Platform.h:

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

6 years agoWeb Inspector: DOM Storage Editing is broken in many ways, frustrating
commit-queue@webkit.org [Thu, 9 Oct 2014 17:34:06 +0000 (17:34 +0000)]
Web Inspector: DOM Storage Editing is broken in many ways, frustrating
https://bugs.webkit.org/show_bug.cgi?id=137547

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-10-09
Reviewed by Timothy Hatcher.

* UserInterface/Models/DOMStorageObject.js:
(WebInspector.DOMStorageObject.prototype.getEntries): Deleted.
When getting entires, populate the model object with these keys/values
so we can accurately detect duplicates in editing.

* UserInterface/Views/DataGrid.js:
(WebInspector.DataGrid.prototype.determineNextCell):
(WebInspector.DataGrid.prototype.moveToNextCell):
When the users uses "Enter" to commit, stop editing.

(WebInspector.DataGrid.prototype._editingCommitted):
Fix title property accessor. This is not a map. This fixes an exception
when showing context menus on editable data grid rows.

* UserInterface/Views/DOMStorageContentView.js:
(WebInspector.DOMStorageContentView.prototype.cleanup):
(WebInspector.DOMStorageContentView.prototype.restoreOriginalValues):
(WebInspector.DOMStorageContentView.prototype._editingCallback):
Completely rewrite editing here. As soon as an edit is made, enter
an uncommitted state with the original key/value. When a commit is
allowed, update as appropriate based on the original values.

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

6 years agoFix compiler warning on noreturn function
commit-queue@webkit.org [Thu, 9 Oct 2014 17:01:07 +0000 (17:01 +0000)]
Fix compiler warning on noreturn function
https://bugs.webkit.org/show_bug.cgi?id=137558

Patch by Adrien Destugues <pulkomandy@gmail.com> on 2014-10-09
Reviewed by Darin Adler.

The function is marked "noreturn", but the stub implementation does
return. No new tests: function is never called. Only fixes a warning.

* heap/HeapStatistics.cpp:
(JSC::HeapStatistics::exitWithFailure):

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

6 years agoRe-add tests for :enabled with Anchor, Area & Link elements
bruno.d@partner.samsung.com [Thu, 9 Oct 2014 17:01:00 +0000 (17:01 +0000)]
Re-add tests for :enabled with Anchor, Area & Link elements
https://bugs.webkit.org/show_bug.cgi?id=137557

Reviewed by Darin Adler.

The CSS selector :enabled should not match Anchor, Area & Link elements
with 'href' attribute set. This re-adds the related layout tests with
updated results.

* fast/css/css-selector-enabled-links-expected.txt: Added.
* fast/css/css-selector-enabled-links.html: Added.

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

6 years ago[X11] Plugin process crashes in NetscapePlugin::platformPostInitialize()
carlosgc@webkit.org [Thu, 9 Oct 2014 16:58:48 +0000 (16:58 +0000)]
[X11] Plugin process crashes in NetscapePlugin::platformPostInitialize()
https://bugs.webkit.org/show_bug.cgi?id=137426

Reviewed by Darin Adler.

For some reason flash crashes when NPP_GetValue is called with
NPPVpluginCancelSrcStream, but only in windowed mode. Not calling
NPP_GetValue and unconditionally loading the source URL in the
browser fixes the crash and plugins work normally. We can handle
this particular case with a new quirk.

* Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
(WebKit::NetscapePluginModule::determineQuirks): Add
DoNotCancelSrcStreamInWindowedMode quirk if it's flash plugin.
* Shared/Plugins/PluginQuirks.h: Add
DoNotCancelSrcStreamInWindowedMode quirk.
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::shouldLoadSrcURL): Return early if plugin
is windowed and DoNotCancelSrcStreamInWindowedMode quirk is present.

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

6 years agoUse is<>() / downcast<>() for Widget subclasses
cdumez@apple.com [Thu, 9 Oct 2014 16:45:32 +0000 (16:45 +0000)]
Use is<>() / downcast<>() for Widget subclasses
https://bugs.webkit.org/show_bug.cgi?id=137549

Reviewed by Darin Adler.

Use is<>() / downcast<>() for Widget subclasses and clean up the
surrounding code.

Source/WebCore:

No new tests, no behavior change.

* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::getOrCreate):
* accessibility/AccessibilityObject.cpp:
(WebCore::appendAccessibilityObject):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::visiblePositionForPoint):
* accessibility/AccessibilityScrollView.cpp:
(WebCore::AccessibilityScrollView::webAreaObject):
(WebCore::AccessibilityScrollView::documentFrameView):
(WebCore::AccessibilityScrollView::parentObject):
(WebCore::AccessibilityScrollView::parentObjectIfExists):
* bindings/js/JSPluginElementFunctions.cpp:
(WebCore::pluginScriptObjectFromPluginViewBase):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::appendFormData):
* html/HTMLPlugInElement.cpp:
(WebCore::HTMLPlugInElement::canProcessDrag):
(WebCore::HTMLPlugInElement::isKeyboardFocusable):
(WebCore::HTMLPlugInElement::isUserObservable):
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::checkSizeChangeForSnapshotting):
(WebCore::HTMLPlugInImageElement::subframeLoaderDidCreatePlugIn):
* html/HTMLPlugInImageElement.h:
* loader/SubframeLoader.cpp:
(WebCore::SubframeLoader::loadPlugin):
* page/DragController.cpp:
(WebCore::DragController::operationForLoad):
* page/EventHandler.cpp:
(WebCore::EventHandler::subframeForTargetNode):
(WebCore::EventHandler::handleWheelEvent):
* page/EventHandler.h:
* page/Frame.cpp:
(WebCore::Frame::frameForWidget):
* page/FrameView.cpp:
(WebCore::FrameView::hasCustomScrollbars):
(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
(WebCore::FrameView::convertToContainingView):
(WebCore::FrameView::convertFromContainingView):
(WebCore::FrameView::removeChild):
* page/FrameView.h:
* page/Page.cpp:
(WebCore::Page::pluginViews):
* page/efl/EventHandlerEfl.cpp:
(WebCore::EventHandler::passWheelEventToWidget):
* page/gtk/EventHandlerGtk.cpp:
(WebCore::EventHandler::passWheelEventToWidget):
* page/ios/EventHandlerIOS.mm:
(WebCore::EventHandler::passWheelEventToWidget):
* page/mac/EventHandlerMac.mm:
(WebCore::EventHandler::passWheelEventToWidget):
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::computeNonFastScrollableRegion):
* page/win/EventHandlerWin.cpp:
(WebCore::EventHandler::passWheelEventToWidget):
* platform/ScrollView.cpp:
(WebCore::ScrollView::removeChild):
(WebCore::ScrollView::setHasHorizontalScrollbar):
(WebCore::ScrollView::setHasVerticalScrollbar):
* platform/ScrollView.h:
* platform/Scrollbar.cpp:
(WebCore::Scrollbar::root):
Uninline as root() because Widget::root() returns a FrameView now and
it is impossible to include FrameView.h in Scrollbar.h without causing
a cycle.

* platform/Scrollbar.h:
* platform/Widget.cpp:
(WebCore::Widget::root):
Use tighter typing and return a FrameView instead of a ScrollView.

(WebCore::Widget::removeFromParent):
* platform/Widget.h:
* platform/efl/WidgetEfl.cpp:
(WebCore::Widget::setCursor):
* platform/gtk/PlatformScreenGtk.cpp:
* platform/gtk/WidgetGtk.cpp:
(WebCore::Widget::setCursor):
* platform/mac/PlatformScreenMac.mm:
(WebCore::displayFromWidget):
* platform/mac/WidgetMac.mm:
(WebCore::Widget::setCursor):
* platform/win/WidgetWin.cpp:
(WebCore::Widget::setCursor):
* plugins/PluginViewBase.h:
* plugins/win/PluginViewWin.cpp:
(WebCore::PluginView::updatePluginWidget):
(WebCore::PluginView::paintIntoTransformedContext):
(WebCore::PluginView::paintWindowedPluginIntoContext):
(WebCore::PluginView::paint):
(WebCore::PluginView::handleMouseEvent):
(WebCore::PluginView::setNPWindowRect):
(WebCore::PluginView::snapshot):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::allowsAcceleratedCompositing):
(WebCore::RenderEmbeddedObject::nodeAtPoint):
(WebCore::RenderEmbeddedObject::scroll):
* rendering/RenderFrameBase.h:
(WebCore::RenderFrameBase::childView):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::layerWillBeDestroyed):
(WebCore::RenderLayerBacking::updateConfiguration):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
* rendering/RenderTreeAsText.cpp:
(WebCore::write):
* rendering/RenderWidget.cpp:
(WebCore::WidgetHierarchyUpdatesSuspensionScope::moveWidgets):
(WebCore::RenderWidget::paintContents):
(WebCore::RenderWidget::setOverlapTestResult):
(WebCore::RenderWidget::updateWidgetPosition):
(WebCore::RenderWidget::nodeAtPoint):
(WebCore::RenderWidget::embeddedContentBox):

Source/WebKit/mac:

* WebView/WebRenderNode.mm:
(copyRenderNode):
* WebView/WebView.mm:
(-[WebView _addScrollerDashboardRegionsForFrameView:dashboardRegions:]):

Source/WebKit/win:

* WebCoreSupport/EmbeddedWidget.cpp:
(EmbeddedWidget::frameRectsChanged):

Source/WebKit2:

* Shared/WebRenderObject.cpp:
(WebKit::WebRenderObject::WebRenderObject):

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

6 years agoLayering violation: MediaPlayer should not reference/use FrameView
carlosgc@webkit.org [Thu, 9 Oct 2014 16:18:46 +0000 (16:18 +0000)]
Layering violation: MediaPlayer should not reference/use FrameView
https://bugs.webkit.org/show_bug.cgi?id=21562

Reviewed by Darin Adler.

Remove FrameView dependency from MediaPlayer.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerIsInMediaDocument): Check if
the element document is a media document.
* html/HTMLMediaElement.h:
* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::MediaPlayer): Remove m_frameView initialization.
(WebCore::MediaPlayer::inMediaDocument): Use the MediaPlayerClient
to check if the media player is in a media document.
* platform/graphics/MediaPlayer.h:
(WebCore::MediaPlayerClient::mediaPlayerIsInMediaDocument):
(WebCore::MediaPlayer::setFrameView): Deleted.
(WebCore::MediaPlayer::frameView): Deleted.
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::preferredRenderingMode):
Do not check if the media player has a frame view, checking whether it's visible
is enough.
* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
Remove unneeded header include.
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: Ditto.
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Ditto.
* rendering/RenderVideo.cpp:
(WebCore::RenderVideo::~RenderVideo): Do not call MediaPlayer::setFrameView().
(WebCore::RenderVideo::updatePlayer): Ditto.

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

6 years agoUse is<>() / downcast<>() for RenderBlockFlow
cdumez@apple.com [Thu, 9 Oct 2014 16:17:06 +0000 (16:17 +0000)]
Use is<>() / downcast<>() for RenderBlockFlow
https://bugs.webkit.org/show_bug.cgi?id=137545

Reviewed by Darin Adler.

Use is<>() / downcast<>() for RenderBlockFlow and clean up the
surrounding code.

No new tests, no behavior change.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
* dom/Element.cpp:
(WebCore::Element::renderNamedFlowFragment):
(WebCore::Element::webkitGetRegionFlowRanges):
* editing/Editor.cpp:
(WebCore::Editor::hasBidiSelection):
* inspector/InspectorOverlay.cpp:
(WebCore::buildObjectForRegionHighlight):
(WebCore::buildObjectForElementInfo):
* rendering/EllipsisBox.h:
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::innerTextIfTruncated):
* rendering/LayoutState.cpp:
(WebCore::LayoutState::LayoutState):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::removeChild):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::moveAllChildrenIncludingFloatsTo):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::rebuildFloatingObjectSetFromIntrudingFloats):
(WebCore::RenderBlockFlow::layoutBlockChild):
(WebCore::RenderBlockFlow::marginOffsetForSelfCollapsingBlock):
(WebCore::RenderBlockFlow::marginValuesForChild):
(WebCore::RenderBlockFlow::collapseMargins):
(WebCore::RenderBlockFlow::marginBeforeEstimateForChild):
(WebCore::RenderBlockFlow::handleAfterSideOfBlock):
(WebCore::RenderBlockFlow::mustDiscardMarginBeforeForChild):
(WebCore::RenderBlockFlow::mustDiscardMarginAfterForChild):
(WebCore::RenderBlockFlow::adjustBlockChildForPagination):
(WebCore::RenderBlockFlow::moveAllChildrenIncludingFloatsTo):
(WebCore::RenderBlockFlow::markAllDescendantsWithFloatsForLayout):
(WebCore::RenderBlockFlow::adjustForBorderFit):
(WebCore::getHeightForLineCount):
* rendering/RenderBlockFlow.h:
(WebCore::RenderElement::isRenderNamedFlowFragmentContainer):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::createLineBoxes):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::styleDidChange):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):
* rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
(WebCore::RenderDeprecatedFlexibleBox::clearLineClamp):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::removeFlowChildInfo):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::expandClipRectForRegionAndReflection):
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::evacuateAndDestroy):
(WebCore::RenderMultiColumnFlowThread::processPossibleSpannerDescendant):
(WebCore::RenderMultiColumnFlowThread::flowThreadDescendantInserted):
* rendering/RenderMultiColumnFlowThread.h:
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::heightAdjustedForSetOffset):
(WebCore::RenderMultiColumnSet::columnGap):
* rendering/RenderMultiColumnSet.h:
* rendering/RenderNamedFlowFragment.cpp:
(WebCore::RenderNamedFlowFragment::fragmentContainer):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::adjustComputedFontSizesOnBlocks):
(WebCore::RenderObject::resetTextAutosizing):
(WebCore::RenderObject::showLineTreeForThis):
(WebCore::RenderObject::showRenderSubTreeAndMark):
* rendering/RenderText.cpp:
(WebCore::RenderText::setText):
(WebCore::RenderText::ensureLineBoxes):
(WebCore::RenderText::simpleLineLayout):
* rendering/RenderTreeAsText.cpp:
(WebCore::write):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::selectionTopAdjustedForPrecedingBlock):
(WebCore::RootInlineBox::blockFlow):
* rendering/SimpleLineLayoutFunctions.cpp:
(WebCore::SimpleLineLayout::computeTextBoundingBox):
(WebCore::SimpleLineLayout::computeTextFirstRunLocation):
(WebCore::SimpleLineLayout::collectTextAbsoluteRects):
(WebCore::SimpleLineLayout::collectTextAbsoluteQuads):
* rendering/svg/SVGTextQuery.cpp:
(WebCore::flowBoxForRenderer):

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

6 years agoEnsure that inline assembly Thunk functions don't conflict with the section designati...
commit-queue@webkit.org [Thu, 9 Oct 2014 15:59:06 +0000 (15:59 +0000)]
Ensure that inline assembly Thunk functions don't conflict with the section designations of the compiler
https://bugs.webkit.org/show_bug.cgi?id=137434

Patch by Akos Kiss <akiss@inf.u-szeged.hu> on 2014-10-09
Reviewed by Michael Saboff.

The ARM64 version of the defineUnaryDoubleOpWrapper macro in
ThunkGenerators.cpp contains inline assembly with .text assembler
directive followed by a static variable declaration. This macro gets
expanded several times afterwards, however, only during the compilation
of the first expansion does gcc insert a .data assembler directive
before the assembled version of the static variable. Thus, only the
first variable gets allocated in the .data section, all the others
remain in .text. If JavaScriptCore is built as a shared library then
this causes a segmentation fault during dynamic linking.

This patch puts a .previous directive at the end of the inline assembly
to ensure that the assumptions of the compiler about the sections are
not broken and the following variable goes to the right place.

* jit/ThunkGenerators.cpp:

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

6 years ago[GTK] Netscape plugin API symbol used outside feature guards
commit-queue@webkit.org [Thu, 9 Oct 2014 07:34:41 +0000 (07:34 +0000)]
[GTK] Netscape plugin API symbol used outside feature guards
https://bugs.webkit.org/show_bug.cgi?id=137385

Patch by Philip Chimento <philip.chimento@gmail.com> on 2014-10-09
Reviewed by Philippe Normand.

* plugins/PluginPackage.cpp:
(WebCore::PluginPackage::unload): Add guards for Netscape Plugin
API around symbol, so that it compiles OK when the API is not
available.

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

6 years agoStyleQueue should throw a PatchIsNotValid exception to achieve
commit-queue@webkit.org [Thu, 9 Oct 2014 06:50:45 +0000 (06:50 +0000)]
StyleQueue should throw a PatchIsNotValid exception to achieve
consistency with CommitQueue and EWS
https://bugs.webkit.org/show_bug.cgi?id=137500

Patch by Jake Nielsen <jacob_nielsen@apple.com> on 2014-10-08
Reviewed by Alexey Proskuryakov.

* Scripts/webkitpy/tool/bot/stylequeuetask.py:
Adds a call to validate() in run().
(StyleQueueTask.run):
* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
Adds a return False in the patch is not valid exception statement.
(AbstractEarlyWarningSystem.review_patch):
* Scripts/webkitpy/tool/commands/queues.py:
Adds a return False in the patch is not valid exception statement in
commit queue, and adds an except statement to catch PatchIsNotValid
exceptions in style queue.
(CommitQueue.process_work_item):
(StyleQueue.review_patch):

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

6 years agoVersioning.
bshafiei@apple.com [Thu, 9 Oct 2014 06:48:17 +0000 (06:48 +0000)]
Versioning.

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

6 years ago[GTK] Use the PageLoadState observer also to monitor title and estimated load progress
carlosgc@webkit.org [Thu, 9 Oct 2014 06:37:47 +0000 (06:37 +0000)]
[GTK] Use the PageLoadState observer also to monitor title and estimated load progress
https://bugs.webkit.org/show_bug.cgi?id=136997

Reviewed by Gustavo Noronha Silva.

* UIProcess/API/gtk/WebKitLoaderClient.cpp:
(attachLoaderClientToView): Remove implementation of
didReceiveTitleForFrame, didStartProgress, didChangeProgress and
didFinishProgress.
(didReceiveTitleForFrame): Deleted.
(didChangeProgress): Deleted.
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_get_estimated_load_progress): Return the value
directly from the PageLoadState object, since we don't need to
cache the value anymore.
(webkitWebViewSetTitle): Deleted.
(webkitWebViewSetEstimatedLoadProgress): Deleted.
* UIProcess/API/gtk/WebKitWebViewPrivate.h:

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

6 years ago[CSSRegions]Remove unused parameter in adjustRegionBoundsFromFlowThreadPortionRect
mihnea@adobe.com [Thu, 9 Oct 2014 06:34:46 +0000 (06:34 +0000)]
[CSSRegions]Remove unused parameter in adjustRegionBoundsFromFlowThreadPortionRect
https://bugs.webkit.org/show_bug.cgi?id=137518

Reviewed by Andrei Bucur.

This method is used only by region code in accelerated compositing.
The first parameter for the method was introduced with the intent to be used for multicolumn,
but without being actually used in multicolumn code. Also make the method const.
No new tests as no change in functionality.

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::adjustAncestorCompositingBoundsForFlowThread):
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::adjustRegionBoundsFromFlowThreadPortionRect):
* rendering/RenderMultiColumnSet.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::adjustRegionBoundsFromFlowThreadPortionRect):
* rendering/RenderRegion.h:

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

6 years agoRace condition with WebKitWebView:is-loading after starting page load
carlosgc@webkit.org [Thu, 9 Oct 2014 06:33:46 +0000 (06:33 +0000)]
Race condition with WebKitWebView:is-loading after starting page load
https://bugs.webkit.org/show_bug.cgi?id=136692

Reviewed by Gustavo Noronha Silva.

Source/WebKit2:

Use PageLoadState::Observer to update both is-loading and uri
properties, instead of manually update them. This ensures that our
web view is always in sync with the WebPageProxy so that
webkit_web_view_is_loading() returns true right after requesting
any load. We still need to manually set the is-loading property
only in the case where we delay the emission of the load-changed
signals when waiting for the main resource. The bahaviour is a bit
different but still consistent with what our API documentation says.

* UIProcess/API/gtk/WebKitLoaderClient.cpp:
(attachLoaderClientToView): Remove
didSameDocumentNavigationForFrame implementation, since we are
already notified about the URL change by the PageLoadState::Observer.
(didSameDocumentNavigationForFrame): Deleted.
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewSetIsLoading): No longer update the URI when
changing the is-loading property.
(webkitWebViewConstructed): Crate a PageLoadStateObserver and add
it to the PageLoadState.
(webkitWebViewDispose): Remove the PageLoadStateObserver from the PageLoadState.
(webkitWebViewEmitLoadChanged): Add isDelayedEvent parameter to
update the is-loading property accordingly when emitting the
delayed events.
(webkitWebViewEmitDelayedLoadEvents): Pass true as isDelayedEvent
parameter of webkitWebViewEmitLoadChanged().
(webkitWebViewLoadChanged): Pass false as isDelayedEvent parameter
of webkitWebViewEmitLoadChanged().
(webkitWebViewLoadFailed):
(webkitWebViewLoadFailedWithTLSErrors):
(webkitWebViewUpdateURI): Deleted.
* UIProcess/API/gtk/WebKitWebViewPrivate.h:

Tools:

* TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.cpp:
(loadChangedCallback): Only check is-loading is false when load
has finished if the load didn't fail due to a cancellation.
(loadFailedCallback): Only check is-loading is false if the load
didn't fail due to a cancellation.
* TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
(WebViewTest::loadURI): Check is-loading is true and active URI is
the requested one rigth after requesting the load.
(WebViewTest::loadHtml): Ditto.
(WebViewTest::loadPlainText): Ditto.
(WebViewTest::loadBytes): Ditto.
(WebViewTest::loadRequest): Ditto.
(WebViewTest::loadAlternateHTML): Ditto.
(WebViewTest::goBack): Ditto.
(WebViewTest::goForward): Ditto.
(WebViewTest::goToBackForwardListItem): Ditto.

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

6 years ago[Mac] Show repaint counters in tile coverage map.
akling@apple.com [Thu, 9 Oct 2014 06:26:07 +0000 (06:26 +0000)]
[Mac] Show repaint counters in tile coverage map.
<https://webkit.org/b/137544>

Reviewed by Simon Fraser.

Add repaint counters to the tile layers in the "tiled scrolling
indicator" display. This will be helpful for diagnosing issues with
excessive tile repaints outside the visible viewport.

* platform/graphics/ca/TileController.cpp:
(WebCore::TileController::setNeedsDisplayInRect):
* platform/graphics/ca/TileGrid.cpp:
(WebCore::TileGrid::drawTileMapContents):

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

6 years agoRemove some more passing tests from TestExpectations.
simon.fraser@apple.com [Thu, 9 Oct 2014 04:07:32 +0000 (04:07 +0000)]
Remove some more passing tests from TestExpectations.

* TestExpectations:
* platform/mac-wk2/TestExpectations:
* platform/mac/TestExpectations:

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

6 years agoAnother unreviewed build fix after r174475.
rniwa@webkit.org [Thu, 9 Oct 2014 02:50:04 +0000 (02:50 +0000)]
Another unreviewed build fix after r174475.

Don't try to insert a duplicated row into build_commits as it results in a database constraint error.

This has been caught by a test in /api/report. I don't know why I thought all tests were passing.

* public/include/report-processor.php:

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

6 years agoUnreviewed build fix after r174480. Broke iOS build.
mmaxfield@apple.com [Thu, 9 Oct 2014 01:51:25 +0000 (01:51 +0000)]
Unreviewed build fix after r174480. Broke iOS build.

* rendering/RenderObject.cpp:
(WebCore::includeNonFixedHeight):

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

6 years agoiOS Simulator results for css3 tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 01:49:33 +0000 (01:49 +0000)]
iOS Simulator results for css3 tests.

* platform/ios-simulator/css3/*: Added

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

6 years agoiOS Simulator results for css2.1 tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 01:49:13 +0000 (01:49 +0000)]
iOS Simulator results for css2.1 tests.

* platform/ios-simulator/css2.1/*: Added

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

6 years agoiOS Simulator results for css1 tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 01:48:54 +0000 (01:48 +0000)]
iOS Simulator results for css1 tests.

* platform/ios-simulator/css1/basic/containment-expected.txt: Added.
* platform/ios-simulator/css1/basic/contextual_selectors-expected.txt: Added.
* platform/ios-simulator/css1/basic/grouping-expected.txt: Added.
* platform/ios-simulator/css1/basic/id_as_selector-expected.txt: Added.
* platform/ios-simulator/css1/basic/inheritance-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/acid_test-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_bottom-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_bottom_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_bottom_width-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_bottom_width_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_color-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_color_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_left-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_left_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_left_width-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_left_width_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_right-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_right_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_right_width-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_right_width_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_style-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_style_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_top-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_top_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_top_width-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_top_width_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_width-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/border_width_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/clear-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/clear_float-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/float-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/float_elements_in_series-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/float_margin-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/float_on_text_elements-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/height-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/margin-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/margin_bottom-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/margin_bottom_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/margin_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/margin_left-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/margin_left_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/margin_right-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/margin_right_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/margin_top-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/margin_top_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/padding-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/padding_bottom-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/padding_bottom_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/padding_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/padding_left-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/padding_left_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/padding_right-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/padding_right_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/padding_top-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/padding_top_inline-expected.txt: Added.
* platform/ios-simulator/css1/box_properties/width-expected.txt: Added.
* platform/ios-simulator/css1/cascade/cascade_order-expected.txt: Added.
* platform/ios-simulator/css1/cascade/important-expected.txt: Added.
* platform/ios-simulator/css1/classification/display-expected.txt: Added.
* platform/ios-simulator/css1/classification/list_style-expected.txt: Added.
* platform/ios-simulator/css1/classification/list_style_image-expected.txt: Added.
* platform/ios-simulator/css1/classification/list_style_position-expected.txt: Added.
* platform/ios-simulator/css1/classification/list_style_type-expected.txt: Added.
* platform/ios-simulator/css1/classification/white_space-expected.txt: Added.
* platform/ios-simulator/css1/color_and_background/background-expected.txt: Added.
* platform/ios-simulator/css1/color_and_background/background_attachment-expected.txt: Added.
* platform/ios-simulator/css1/color_and_background/background_color-expected.txt: Added.
* platform/ios-simulator/css1/color_and_background/background_image-expected.txt: Added.
* platform/ios-simulator/css1/color_and_background/background_position-expected.txt: Added.
* platform/ios-simulator/css1/color_and_background/background_repeat-expected.txt: Added.
* platform/ios-simulator/css1/color_and_background/color-expected.txt: Added.
* platform/ios-simulator/css1/conformance/forward_compatible_parsing-expected.txt: Added.
* platform/ios-simulator/css1/font_properties/font-expected.txt: Added.
* platform/ios-simulator/css1/font_properties/font_family-expected.txt: Added.
* platform/ios-simulator/css1/font_properties/font_size-expected.txt: Added.
* platform/ios-simulator/css1/font_properties/font_style-expected.txt: Added.
* platform/ios-simulator/css1/font_properties/font_variant-expected.txt: Added.
* platform/ios-simulator/css1/font_properties/font_weight-expected.txt: Added.
* platform/ios-simulator/css1/formatting_model/canvas-expected.txt: Added.
* platform/ios-simulator/css1/formatting_model/floating_elements-expected.txt: Added.
* platform/ios-simulator/css1/formatting_model/height_of_lines-expected.txt: Added.
* platform/ios-simulator/css1/formatting_model/horizontal_formatting-expected.txt: Added.
* platform/ios-simulator/css1/formatting_model/inline_elements-expected.txt: Added.
* platform/ios-simulator/css1/formatting_model/replaced_elements-expected.txt: Added.
* platform/ios-simulator/css1/formatting_model/vertical_formatting-expected.txt: Added.
* platform/ios-simulator/css1/pseudo/anchor-expected.txt: Added.
* platform/ios-simulator/css1/pseudo/firstletter-expected.txt: Added.
* platform/ios-simulator/css1/pseudo/firstline-expected.txt: Added.
* platform/ios-simulator/css1/pseudo/multiple_pseudo_elements-expected.txt: Added.
* platform/ios-simulator/css1/pseudo/pseudo_elements_in_selectors-expected.txt: Added.
* platform/ios-simulator/css1/text_properties/letter_spacing-expected.txt: Added.
* platform/ios-simulator/css1/text_properties/line_height-expected.txt: Added.
* platform/ios-simulator/css1/text_properties/text_align-expected.txt: Added.
* platform/ios-simulator/css1/text_properties/text_decoration-expected.txt: Added.
* platform/ios-simulator/css1/text_properties/text_indent-expected.txt: Added.
* platform/ios-simulator/css1/text_properties/text_transform-expected.txt: Added.
* platform/ios-simulator/css1/text_properties/vertical_align-expected.txt: Added.
* platform/ios-simulator/css1/text_properties/word_spacing-expected.txt: Added.
* platform/ios-simulator/css1/units/color_units-expected.txt: Added.
* platform/ios-simulator/css1/units/length_units-expected.txt: Added.
* platform/ios-simulator/css1/units/percentage_units-expected.txt: Added.
* platform/ios-simulator/css1/units/urls-expected.txt: Added.

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

6 years agoInline ruby does not get justified correctly
mmaxfield@apple.com [Thu, 9 Oct 2014 01:14:30 +0000 (01:14 +0000)]
Inline ruby does not get justified correctly
https://bugs.webkit.org/show_bug.cgi?id=137421

Source/WebCore:

Patch by Myles C. Maxfield <litherum@gmail.com> on 2014-10-08
Reviewed by Dave Hyatt.

We justify text in two passes: one counts expansion opportunities within a line,
and the other doles out widths and expansion amounts to constituent inline boxes.
This patch simply modifies both passes to descend into ruby bases. Once it has
done so, we then re-layout the ruby run with the newly found width.

Tests: fast/ruby/ruby-justification-hittest.html
       fast/ruby/ruby-justification.html

* rendering/InlineBox.h:
(WebCore::InlineBox::setExpansion): updateRubyForJustifiedText() has to set the
expansion for an inline box, so make setExpansion() public.
* rendering/RenderBlockLineLayout.cpp:
(WebCore::updateRubyForJustifiedText): Given values that have already been
computed in computeInlineDirectionPositionsForSegment(), adjust the widths and
expansion values for all the various pieces of ruby.
(WebCore::computeExpansionForJustifiedText): Call updateRubyForJustifiedText() if
necessary.
(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment): When
counting expansion opportunities in a line, include ruby bases.
* rendering/RenderRubyRun.h: Fix grammar in comment.
* rendering/RenderText.cpp:
(WebCore::RenderText::stringView): Give default arguments to function.
* rendering/RenderText.h: Ditto.

LayoutTests:

Reviewed by Dave Hyatt.

Test that ruby gets spaces inside the ruby base, and that hit testing the
ruby base gives us correct answers.

* fast/ruby/ruby-justification-expected.html: Added.
* fast/ruby/ruby-justification-hittest-expected.txt: Added.
* fast/ruby/ruby-justification-hittest.html: Added.
* fast/ruby/ruby-justification.html: Added.
* platform/mac/fast/ruby/bopomofo-rl-expected.txt: Ruby text gets the CSS
property text-align: justify, which worked prior to this patch. However, this
patch now justifies ruby bases, so now if there is text that is both a ruby
base and ruby text (such as ruby in ruby) it correctly gets justified. This
test does such, and therefore needs to be rebaselined.

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

6 years agoNew baselines for iOS compositing tests.
simon.fraser@apple.com [Thu, 9 Oct 2014 01:05:55 +0000 (01:05 +0000)]
New baselines for iOS compositing tests.

* platform/ios-simulator/TestExpectations:
* platform/ios-simulator/compositing/absolute-inside-out-of-view-fixed-expected.txt: Added.
* platform/ios-simulator/compositing/animation/filling-animation-overlap-at-end-expected.txt: Added.
* platform/ios-simulator/compositing/animation/filling-animation-overlap-expected.txt: Added.
* platform/ios-simulator/compositing/animation/layer-for-filling-animation-expected.txt: Added.
* platform/ios-simulator/compositing/animation/state-at-end-event-transform-layer-expected.txt: Added.
* platform/ios-simulator/compositing/backing/backface-visibility-flip-expected.txt: Added.
* platform/ios-simulator/compositing/backing/backface-visibility-in-3dtransformed-expected.txt: Added.
* platform/ios-simulator/compositing/backing/border-radius-no-backing-expected.txt: Added.
* platform/ios-simulator/compositing/backing/child-layer-no-backing-expected.txt: Added.
* platform/ios-simulator/compositing/backing/filter-no-backing-expected.txt: Added.
* platform/ios-simulator/compositing/backing/inline-block-no-backing-expected.txt: Added.
* platform/ios-simulator/compositing/backing/masked-child-no-backing-expected.txt: Added.
* platform/ios-simulator/compositing/backing/no-backing-for-clip-expected.txt: Added.
* platform/ios-simulator/compositing/backing/no-backing-for-clip-overhang-expected.txt: Added.
* platform/ios-simulator/compositing/backing/no-backing-for-clip-overlap-expected.txt: Added.
* platform/ios-simulator/compositing/backing/no-backing-for-perspective-expected.txt: Added.
* platform/ios-simulator/compositing/backing/replaced-child-no-backing-expected.txt: Added.
* platform/ios-simulator/compositing/backing/whitespace-nodes-no-backing-expected.txt: Added.
* platform/ios-simulator/compositing/bounds-in-flipped-writing-mode-expected.txt: Added.
* platform/ios-simulator/compositing/checkerboard-expected.txt: Added.
* platform/ios-simulator/compositing/clip-child-by-non-stacking-ancestor-expected.txt: Added.
* platform/ios-simulator/compositing/color-matching/image-color-matching-expected.txt: Added.
* platform/ios-simulator/compositing/color-matching/pdf-image-match-expected.txt: Added.
* platform/ios-simulator/compositing/columns/ancestor-clipped-in-paginated-expected.txt: Added.
* platform/ios-simulator/compositing/columns/clipped-in-paginated-expected.txt: Added.
* platform/ios-simulator/compositing/columns/composited-columns-expected.txt: Added.
* platform/ios-simulator/compositing/columns/composited-columns-vertical-rl-expected.txt: Added.
* platform/ios-simulator/compositing/columns/composited-in-paginated-expected.txt: Added.
* platform/ios-simulator/compositing/columns/composited-in-paginated-rl-expected.txt: Added.
* platform/ios-simulator/compositing/columns/composited-in-paginated-writing-mode-rl-expected.txt: Added.
* platform/ios-simulator/compositing/columns/composited-lr-paginated-repaint-expected.txt: Added.
* platform/ios-simulator/compositing/columns/composited-nested-columns-expected.txt: Added.
* platform/ios-simulator/compositing/columns/composited-rl-paginated-repaint-expected.txt: Added.
* platform/ios-simulator/compositing/columns/hittest-composited-in-paginated-expected.txt: Added.
* platform/ios-simulator/compositing/columns/rotated-in-paginated-expected.txt: Added.
* platform/ios-simulator/compositing/columns/untransformed-composited-in-paginated-expected.txt: Added.
* platform/ios-simulator/compositing/compositing-visible-descendant-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/background-clip-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/background-color-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/body-background-painted-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/body-background-skipped-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/control-layer-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/filter-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/hidden-with-visible-child-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/hidden-with-visible-text-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/layer-opacity-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/layer-transform-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/overflow-hidden-child-layers-expected.txt: Added.
* platform/ios-simulator/compositing/contents-opaque/visibility-hidden-expected.txt: Added.
* platform/ios-simulator/compositing/contents-scale/animating-expected.txt: Added.
* platform/ios-simulator/compositing/contents-scale/rounded-contents-scale-expected.txt: Added.
* platform/ios-simulator/compositing/contents-scale/scaled-ancestor-expected.txt: Added.
* platform/ios-simulator/compositing/contents-scale/simple-scale-expected.txt: Added.
* platform/ios-simulator/compositing/contents-scale/z-translate-expected.txt: Added.
* platform/ios-simulator/compositing/direct-image-compositing-expected.txt: Added.
* platform/ios-simulator/compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt: Added.
* platform/ios-simulator/compositing/filters/sw-nested-shadow-overlaps-hw-nested-shadow-expected.txt: Added.
* platform/ios-simulator/compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt: Added.
* platform/ios-simulator/compositing/filters/sw-shadow-overlaps-hw-shadow-expected.txt: Added.
* platform/ios-simulator/compositing/fixed-image-loading-expected.txt: Added.
* platform/ios-simulator/compositing/generated-content-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/abs-position-inside-opacity-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/ancestor-overflow-change-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/bounds-clipped-composited-child-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/bounds-ignores-hidden-dynamic-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/bounds-ignores-hidden-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/clip-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/clip-inside-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/clipping-foreground-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/composited-html-size-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/composited-in-columns-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/fixed-in-composited-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/fixed-position-composited-switch-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/fixed-position-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/flipped-writing-mode-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/foreground-layer-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/horizontal-scroll-composited-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/layer-due-to-layer-children-deep-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/layer-due-to-layer-children-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/layer-due-to-layer-children-switch-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/limit-layer-bounds-fixed-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/limit-layer-bounds-fixed-positioned-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/limit-layer-bounds-opacity-transition-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/limit-layer-bounds-overflow-repaint-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/limit-layer-bounds-overflow-root-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/limit-layer-bounds-positioned-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/limit-layer-bounds-transformed-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/negative-text-indent-with-overflow-hidden-layer-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/outline-change-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/partial-layout-update-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/preserve-3d-switching-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/root-layer-update-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/tall-page-composited-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.txt: Added.
* platform/ios-simulator/compositing/geometry/vertical-scroll-composited-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/become-composited-nested-iframes-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/become-overlapped-iframe-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/composited-iframe-alignment-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/composited-iframe-scroll-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/composited-parent-iframe-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/connect-compositing-iframe-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/connect-compositing-iframe2-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/connect-compositing-iframe3-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/enter-compositing-iframe-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/iframe-content-flipping-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/iframe-copy-on-scroll-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/iframe-in-composited-layer-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/iframe-resize-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/iframe-size-from-zero-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/iframe-size-to-zero-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/iframe-src-change-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/invisible-nested-iframe-hide-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/invisible-nested-iframe-show-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/leave-compositing-iframe-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/nested-iframe-scrolling-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/overlapped-iframe-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/overlapped-iframe-iframe-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/overlapped-nested-iframes-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/page-cache-layer-tree-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/resizer-expected.txt: Added.
* platform/ios-simulator/compositing/iframes/scrolling-iframe-expected.txt: Added.
* platform/ios-simulator/compositing/images/clip-on-directly-composited-image-expected.txt: Added.
* platform/ios-simulator/compositing/images/direct-image-background-color-expected.txt: Added.
* platform/ios-simulator/compositing/images/direct-image-object-fit-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/animation-overlap-with-children-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/fixed-position-and-transform-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/fixed-position-out-of-view-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/fixed-position-transformed-into-view-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/fixed-position-under-transform-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/no-compositing-for-fixed-position-under-transform-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/no-compositing-for-sticky-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/overflow-scroll-overlap-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/overlap-animation-clipping-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/overlap-animation-container-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/overlap-animation-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/overlap-child-layer-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/overlap-clipping-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/overlap-transformed-3d-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/overlap-transformed-and-clipped-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/overlap-transformed-layer-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/overlap-transforms-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/rotate3d-overlap-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/scroll-partial-update-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/stacking-context-overlap-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/stacking-context-overlap-nested-expected.txt: Added.
* platform/ios-simulator/compositing/layer-creation/translatez-overlap-expected.txt: Added.
* platform/ios-simulator/compositing/masks/direct-image-mask-expected.txt: Added.
* platform/ios-simulator/compositing/masks/mask-layer-size-expected.txt: Added.
* platform/ios-simulator/compositing/masks/masked-ancestor-expected.txt: Added.
* platform/ios-simulator/compositing/masks/multiple-masks-expected.txt: Added.
* platform/ios-simulator/compositing/masks/simple-composited-mask-expected.txt: Added.
* platform/ios-simulator/compositing/overflow-trumps-transform-style-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/ancestor-overflow-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/automatically-opt-into-composited-scrolling-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/clip-descendents-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/clipping-ancestor-with-accelerated-scrolling-ancestor-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants2-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/composited-scrolling-creates-a-stacking-container-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/composited-scrolling-paint-phases-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/content-gains-scrollbars-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/content-loses-scrollbars-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/fixed-position-ancestor-clip-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/nested-scrolling-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/overflow-auto-with-touch-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/overflow-auto-with-touch-toggle-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/overflow-clip-with-accelerated-scrolling-ancestor-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/overflow-overlay-with-touch-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/overflow-positioning-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/overflow-scroll-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/overflow-scrollbar-layer-positions-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/overflow-scrollbar-layers-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/parent-overflow-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/remove-overflow-crash2-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/resize-painting-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/scrollbar-painting-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/scrolling-content-clip-to-viewport-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/scrolling-without-painting-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/textarea-scroll-touch-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/theme-affects-visual-overflow-expected.txt: Added.
* platform/ios-simulator/compositing/overflow/updating-scrolling-content-expected.txt: Added.
* platform/ios-simulator/compositing/plugins/composited-plugin-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/animation-inside-reflection-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/compositing-change-inside-reflection-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/deeply-nested-reflections-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/direct-image-object-fit-reflected-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/masked-reflection-on-composited-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/nested-reflection-anchor-point-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/nested-reflection-animated-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/nested-reflection-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/nested-reflection-mask-change-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/nested-reflection-on-overflow-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/nested-reflection-opacity-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/nested-reflection-size-change-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/nested-reflection-transformed-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/nested-reflection-transformed2-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/nested-reflection-transition-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/reflection-in-composited-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/reflection-on-composited-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/reflection-opacity-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/reflection-ordering-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/reflection-positioning-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/reflection-positioning2-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/simple-composited-reflections-expected.txt: Added.
* platform/ios-simulator/compositing/reflections/transform-inside-reflection-expected.txt: Added.
* platform/ios-simulator/compositing/regions/fixed-in-named-flow-clip-descendant-expected.txt: Added.
* platform/ios-simulator/compositing/regions/fixed-in-named-flow-expected.txt: Added.
* platform/ios-simulator/compositing/regions/fixed-in-named-flow-from-abs-in-named-flow-expected.txt: Added.
* platform/ios-simulator/compositing/regions/fixed-in-named-flow-from-outflow-expected.txt: Added.
* platform/ios-simulator/compositing/regions/fixed-in-named-flow-got-transformed-parent-expected.txt: Added.
* platform/ios-simulator/compositing/regions/fixed-in-named-flow-lost-transformed-parent-expected.txt: Added.
* platform/ios-simulator/compositing/regions/fixed-in-named-flow-overlap-composited-expected.txt: Added.
* platform/ios-simulator/compositing/regions/fixed-in-named-flow-transformed-parent-expected.txt: Added.
* platform/ios-simulator/compositing/regions/fixed-transformed-in-named-flow-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/absolute-painted-into-composited-ancestor-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/become-overlay-composited-layer-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/composited-document-element-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/content-into-overflow-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/fixed-background-scroll-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/invalidations-on-composited-layers-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/layer-repaint-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/layer-repaint-rects-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/opacity-between-absolute-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/opacity-between-absolute2-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/overflow-into-content-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/page-scale-repaint-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/positioned-movement-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/repaint-on-layer-grouping-change-expected.txt: Added.
* platform/ios-simulator/compositing/repaint/resize-repaint-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-absolute-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-absolute-overflow-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-fixed-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-fixed-overflow-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-iframe-absolute-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-iframe-fixed-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-iframe-relative-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-overflow-scrolling-expected.txt: Added.
* platform/ios-simulator/compositing/rtl/rtl-relative-expected.txt: Added.
* platform/ios-simulator/compositing/shadows/shadow-drawing-expected.txt: Added.
* platform/ios-simulator/compositing/sibling-positioning-expected.txt: Added.
* platform/ios-simulator/compositing/text-on-large-layer-expected.txt: Added.
* platform/ios-simulator/compositing/tiled-layers-hidpi-expected.txt: Added.
* platform/ios-simulator/compositing/tiling/backface-preserve-3d-tiled-expected.txt: Added.
* platform/ios-simulator/compositing/tiling/crash-reparent-tiled-layer-expected.txt: Added.
* platform/ios-simulator/compositing/tiling/huge-layer-add-remove-child-expected.txt: Added.
* platform/ios-simulator/compositing/tiling/huge-layer-img-expected.txt: Added.
* platform/ios-simulator/compositing/tiling/huge-layer-with-layer-children-expected.txt: Added.
* platform/ios-simulator/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt: Added.
* platform/ios-simulator/compositing/tiling/rotated-tiled-clamped-expected.txt: Added.
* platform/ios-simulator/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt: Added.
* platform/ios-simulator/compositing/tiling/tile-cache-zoomed-expected.txt: Added.
* platform/ios-simulator/compositing/tiling/tiled-layer-resize-expected.txt: Added.
* platform/ios-simulator/compositing/transitions/scale-transition-no-start-expected.txt: Added.
* platform/ios-simulator/compositing/transitions/singular-scale-transition-expected.txt: Added.
* platform/ios-simulator/compositing/visibility/layer-visible-content-expected.txt: Added.
* platform/ios-simulator/compositing/visibility/visibility-composited-expected.txt: Added.
* platform/ios-simulator/compositing/visibility/visibility-composited-transforms-expected.txt: Added.
* platform/ios-simulator/compositing/visibility/visibility-image-layers-dynamic-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/2d-transformed-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/3d-transform-style-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/3d-transformed-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/animated-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/animated-from-none-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/clipped-by-viewport-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/clipped-visible-rect-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/flipped-preserve-3d-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/iframe-and-layers-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/iframe-no-layers-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/nested-transform-expected.txt: Added.
* platform/ios-simulator/compositing/visible-rect/scrolled-expected.txt: Added.
* platform/ios-simulator/compositing/webgl/webgl-background-color-expected.txt: Added.
* platform/ios-simulator/compositing/webgl/webgl-nonpremultiplied-blend-expected.txt: Added.
* platform/ios-simulator/compositing/webgl/webgl-reflection-expected.txt: Added.

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

6 years agoSome animation test results for the iOS Simulator build.
simon.fraser@apple.com [Thu, 9 Oct 2014 01:05:45 +0000 (01:05 +0000)]
Some animation test results for the iOS Simulator build.

* platform/ios-simulator/animations/3d/change-transform-in-end-event-expected.txt: Added.
* platform/ios-simulator/animations/3d/matrix-transform-type-animation-expected.txt: Added.
* platform/ios-simulator/animations/3d/state-at-end-event-transform-expected.txt: Added.
* platform/ios-simulator/animations/additive-transform-animations-expected.txt: Added.
* platform/ios-simulator/animations/cross-fade-border-image-source-expected.txt: Added.
* platform/ios-simulator/animations/cross-fade-list-style-image-expected.txt: Added.
* platform/ios-simulator/animations/cross-fade-webkit-mask-box-image-expected.txt: Added.
* platform/ios-simulator/animations/cross-fade-webkit-mask-image-expected.txt: Added.
* platform/ios-simulator/animations/state-at-end-event-expected.txt: Added.

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

6 years agoUnreviewed build fix after r174477.
rniwa@webkit.org [Thu, 9 Oct 2014 00:19:14 +0000 (00:19 +0000)]
Unreviewed build fix after r174477.

* init-database.sql: Removed build_commits_index since it's redundant with build_commit's primary key.
Also fixed a syntax error that we were missing "," after line that declared build_commit column.

* public/api/runs.php: Fixed the query so that test_runs without commits data will be retrieved.
This is necessary for baseline and target values manually added via admin pages.

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

6 years agoPopupMenus should indicate if they are using a custom rendering
dino@apple.com [Thu, 9 Oct 2014 00:12:55 +0000 (00:12 +0000)]
PopupMenus should indicate if they are using a custom rendering
https://bugs.webkit.org/show_bug.cgi?id=137543
<rdar://problem/18544212>

Reviewed by Beth Dakin.

On Yosemite there is an animation as a popup menu closes. We can't use
this when there is a custom rendering, since the animation doesn't match
the final result. Implement this by hooking into the existing code
for hiding the arrows during animation - a WebKitSystemInterface update
will implement the other side.

* platform/mac/WebCoreSystemInterface.h: Rename parameter to be more clear.
* platform/mac/WebCoreSystemInterface.mm:
* rendering/RenderMenuList.cpp:
(RenderMenuList::menuStyle): We need to check that we are a native-looking
button, not just something with appearance.

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

6 years agoWeb Inspector: CSS Pretty Printing fails to put space between value functions around...
joepeck@webkit.org [Thu, 9 Oct 2014 00:08:47 +0000 (00:08 +0000)]
Web Inspector: CSS Pretty Printing fails to put space between value functions around ending parenthesis
https://bugs.webkit.org/show_bug.cgi?id=137415

Reviewed by Timothy Hatcher.

Add a space after a closing parenthesis if we are still inside a property.
This adds space between space separated function lists such as
-webkit-transform:foo(...)bar(...). Also add a test for keyframe syntax.

* Tools/PrettyPrinting/CodeMirrorFormatters.js:
* Tools/PrettyPrinting/css-tests/keyframes-expected.css: Added.
* Tools/PrettyPrinting/css-tests/keyframes.css: Added.
* Tools/PrettyPrinting/index.html:
* UserInterface/Views/CodeMirrorFormatters.js:

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

6 years agoWeb Inspector: CSS Pretty Printing fails to put space between rgb(...) and numbers...
joepeck@webkit.org [Thu, 9 Oct 2014 00:08:45 +0000 (00:08 +0000)]
Web Inspector: CSS Pretty Printing fails to put space between rgb(...) and numbers in minified gradients
https://bugs.webkit.org/show_bug.cgi?id=137414

Reviewed by Timothy Hatcher.

Add whitespace between rgb(...) and a number, possible in gradient
syntax like "linear-gradient(rgb(...)0%,rgb(...)100%)".

* Tools/PrettyPrinting/CodeMirrorFormatters.js:
* Tools/PrettyPrinting/css-tests/gradient-expected.css: Added.
(.dot-nav:nth-child(1n) li a.active):
* Tools/PrettyPrinting/css-tests/gradient.css: Added.
(.dot-nav:nth-child(1n) li a.active):
* Tools/PrettyPrinting/index.html:
* UserInterface/Views/CodeMirrorFormatters.js:

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

6 years agoWeb Inspector: CSS Pretty Printing fails to wrap long lines of selectors with pseudo...
joepeck@webkit.org [Thu, 9 Oct 2014 00:08:44 +0000 (00:08 +0000)]
Web Inspector: CSS Pretty Printing fails to wrap long lines of selectors with pseudo classes/elements
https://bugs.webkit.org/show_bug.cgi?id=137413

Reviewed by Timothy Hatcher.

Long line wrapping was breaking as soon as there was a ':' for a psuedo
class or element. Likewise it was counting comment strings as part of
the length of the line even though it would get a newline after it.

* Tools/PrettyPrinting/CodeMirrorFormatters.js:
* Tools/PrettyPrinting/css-tests/basic-expected.css:
(progress, section, summary, time):
* Tools/PrettyPrinting/css-tests/wrapping-expected.css: Added.
(a.tryamacs, a.upgradenows):
(a.tryamacs:hover, a.upgradenows:hover):
* Tools/PrettyPrinting/css-tests/wrapping.css: Added.
(a.browsewebappss,a.businessstores,a.buyiphones,a.buynows,a.buynows-arrow,a.comingsoons,p::before,a.descargarahoras,a.downloadituness,a.downloadnows,a.finds,a.freetrials,a.getstarteds,a.gos,a.howtoapplys,a.howtobuys,a.joinnows,a.learnmores,a.nikebuynows,a.notifymes,a.ordernows,a.preordernows,a.preorders,a.reserves,a.startyoursearchs,a.submits,a.tryamacs,a.upgradenows):
(a.browsewebappss:hover,a.businessstores:hover,a.buyiphones:hover,a.buynows:hover,a.buynows-arrow:hover,a.comingsoons:hover,p::before,a.descargarahoras:hover,a.downloadituness:hover,a.downloadnows:hover,a.finds:hover,a.freetrials:hover,a.getstarteds:hover,a.gos:hover,a.howtoapplys:hover,a.howtobuys:hover,a.joinnows:hover,a.learnmores:hover,a.nikebuynows:hover,a.notifymes:hover,a.ordernows:hover,a.preordernows:hover,a.preorders:hover,a.reserves:hover,a.startyoursearchs:hover,a.submits:hover,a.tryamacs:hover,a.upgradenows:hover):
* Tools/PrettyPrinting/index.html:
* UserInterface/Views/CodeMirrorFormatters.js:

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

6 years agoRe-marking fast/hidpi/image-srcset-svg-canvas.html as an expected image failure.
simon.fraser@apple.com [Wed, 8 Oct 2014 23:37:58 +0000 (23:37 +0000)]
Re-marking fast/hidpi/image-srcset-svg-canvas.html as an expected image failure.

* platform/mac/TestExpectations:

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

6 years agoUse is<>() / downcast<>() for RenderBlock objects
cdumez@apple.com [Wed, 8 Oct 2014 23:33:43 +0000 (23:33 +0000)]
Use is<>() / downcast<>() for RenderBlock objects
https://bugs.webkit.org/show_bug.cgi?id=137512

Reviewed by Darin Adler.

Source/WebCore:

Use is<>() / downcast<>() for RenderBlock objects and clean up the
surrounding code.

No new tests, no behavior change.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::firstChildConsideringContinuation):
(WebCore::lastChildConsideringContinuation):
(WebCore::AccessibilityRenderObject::firstChild):
(WebCore::startOfContinuations):
(WebCore::endOfContinuations):
(WebCore::childBeforeConsideringContinuations):
(WebCore::AccessibilityRenderObject::previousSibling):
(WebCore::AccessibilityRenderObject::nextSibling):
(WebCore::nextContinuation):
(WebCore::AccessibilityRenderObject::renderParentObject):
(WebCore::AccessibilityRenderObject::anchorElement):
(WebCore::AccessibilityRenderObject::setValue):
* bindings/objc/DOMUIKitExtensions.mm:
(-[DOMNode containsOnlyInlineObjects]):
(-[DOMNode isSelectableBlock]):
(-[DOMHTMLElement structuralComplexityContribution]):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForGridTrackList):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
* editing/TextIterator.cpp:
(WebCore::TextIterator::shouldRepresentNodeOffsetZero):
* page/ios/FrameIOS.mm:
(WebCore::Frame::preferredHeight):
* rendering/LogicalSelectionOffsetCaches.h:
(WebCore::containingBlockForFixedPosition):
(WebCore::containingBlockForAbsolutePosition):
(WebCore::containingBlockForObjectInFlow):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::styleWillChange):
(WebCore::RenderBlock::continuationBefore):
(WebCore::RenderBlock::splitBlocks):
(WebCore::RenderBlock::addChildIgnoringContinuation):
(WebCore::canMergeAnonymousBlock):
(WebCore::canMergeContiguousAnonymousBlocks):
(WebCore::RenderBlock::collapseAnonymousBoxChild):
(WebCore::RenderBlock::removeChild):
(WebCore::RenderBlock::blockElementContinuation):
(WebCore::RenderBlock::blockSelectionGaps):
(WebCore::RenderBlock::blockBeforeWithinSelectionRoot):
(WebCore::isChildHitTestCandidate):
(WebCore::RenderBlock::firstLineBlock):
(WebCore::findFirstLetterBlock):
(WebCore::RenderBlock::childBecameNonInline):
(WebCore::RenderBlock::hasMarginBeforeQuirk):
(WebCore::RenderBlock::hasMarginAfterQuirk):
* rendering/RenderBlock.h:
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::marginBeforeEstimateForChild):
(WebCore::RenderBlockFlow::estimateLogicalTopPosition):
(WebCore::RenderBlockFlow::adjustBlockChildForPagination):
(WebCore::RenderBlockFlow::positionNewFloats):
(WebCore::RenderBlockFlow::markSiblingsWithFloatsForLayout):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::positionNewFloatOnLine):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
(WebCore::RenderBox::availableLogicalHeightUsing):
(WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
(WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
(WebCore::computeInlineStaticDistance):
(WebCore::RenderBox::computePositionedLogicalWidth):
(WebCore::RenderBox::computePositionedLogicalHeight):
* rendering/RenderBoxModelObject.cpp:
(WebCore::accumulateInFlowPositionOffsets):
(WebCore::RenderBoxModelObject::moveChildTo):
(WebCore::RenderBoxModelObject::moveChildrenTo):
* rendering/RenderElement.cpp:
(WebCore::RenderElement::propagateStyleToAnonymousChildren):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent):
* rendering/RenderFullScreen.cpp:
(WebCore::RenderFullScreen::unwrapRenderer):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::inlineElementContinuation):
(WebCore::updateStyleOfAnonymousBlockContinuations):
(WebCore::RenderInline::styleDidChange):
(WebCore::nextContinuation):
(WebCore::RenderInline::splitFlow):
(WebCore::RenderInline::positionForPoint):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateScrollbarsAfterLayout):
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderListItem.cpp:
(WebCore::getParentOfFirstLineBox):
(WebCore::RenderListItem::insertOrMoveMarkerRendererIfNeeded):
(WebCore::RenderListItem::positionListMarker):
* rendering/RenderNamedFlowFragment.cpp:
(WebCore::RenderNamedFlowFragment::maxPageLogicalHeight):
* rendering/RenderObject.cpp:
(WebCore::includeNonFixedHeight):
(WebCore::RenderObject::checkBlockPositionedObjectsNeedLayout):
(WebCore::RenderObject::containingBlock):
(WebCore::RenderObject::handleDynamicFloatPositionChange):
(WebCore::RenderObject::removeAnonymousWrappersForInlinesIfNecessary):
(WebCore::RenderObject::getTextDecorationColors):
* rendering/RenderRuby.cpp:
(WebCore::rubyBeforeBlock):
(WebCore::rubyAfterBlock):
* rendering/RenderRubyBase.cpp:
(WebCore::RenderRubyBase::moveInlineChildren):
(WebCore::RenderRubyBase::moveBlockChildren):
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):
* rendering/TextAutosizer.cpp:
(WebCore::TextAutosizer::processSubtree):
(WebCore::TextAutosizer::processContainer):
(WebCore::TextAutosizer::measureDescendantTextWidth):
(WebCore::TextAutosizer::findDeepestBlockContainingAllText):
(WebCore::TextAutosizer::findFirstTextLeafNotInCluster):
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::layout):

Source/WebKit2:

Use is<>() / downcast<>() for RenderBlock objects and clean up the
surrounding code.

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::rangeForWebSelectionAtPosition):
(WebKit::WebPage::contractedRangeFromHandle):

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

6 years ago[Win] Mark two inspector-protocol tests as crashing.
bfulgham@apple.com [Wed, 8 Oct 2014 22:11:41 +0000 (22:11 +0000)]
[Win] Mark two inspector-protocol tests as crashing.
https://bugs.webkit.org/show_bug.cgi?id=137529

* platform/win/TestExpectations:

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

6 years agoMake sure arguments tearoff is performed through the environment record if necessary
oliver@apple.com [Wed, 8 Oct 2014 20:54:24 +0000 (20:54 +0000)]
Make sure arguments tearoff is performed through the environment record if necessary
https://bugs.webkit.org/show_bug.cgi?id=137538

Reviewed by Michael Saboff.

Fairly simple change.  If we have a lexical record we need to pull the unmodified
arguments object from the record and then use the standard op_tear_off_arguments
instruction on the temporary.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitGetOwnScope):
(JSC::BytecodeGenerator::emitReturn):
* bytecompiler/BytecodeGenerator.h:

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

6 years agoAdd v2 UI for the perf dashboard
rniwa@webkit.org [Wed, 8 Oct 2014 20:40:18 +0000 (20:40 +0000)]
Add v2 UI for the perf dashboard
https://bugs.webkit.org/show_bug.cgi?id=137537

Rubber-stamped by Andreas Kling.

* public/v2: Added.
* public/v2/app.css: Added.
* public/v2/app.js: Added.
* public/v2/chart-pane.css: Added.
* public/v2/data.js: Added.
* public/v2/index.html: Added.
* public/v2/js: Added.
* public/v2/js/d3: Added.
* public/v2/js/d3/LICENSE: Added.
* public/v2/js/d3/d3.js: Added.
* public/v2/js/d3/d3.min.js: Added.
* public/v2/js/ember-data.js: Added.
* public/v2/js/ember.js: Added.
* public/v2/js/handlebars.js: Added.
* public/v2/js/jquery.min.js: Added.
* public/v2/js/statistics.js: Added.
* public/v2/manifest.js: Added.
* public/v2/popup.js: Added.

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

6 years agoUnreviewed clean up of inadventant double-ChangeLog.
jer.noble@apple.com [Wed, 8 Oct 2014 20:30:04 +0000 (20:30 +0000)]
Unreviewed clean up of inadventant double-ChangeLog.

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

6 years agoUnreviewed follow-up fix for r174460. Do not register for KVOs if the object does...
jer.noble@apple.com [Wed, 8 Oct 2014 20:26:41 +0000 (20:26 +0000)]
Unreviewed follow-up fix for r174460. Do not register for KVOs if the object does not respond to the requested property.

* platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:
(-[CDMSessionMediaSourceAVFObjCObserver beginObserving:]):
(-[CDMSessionMediaSourceAVFObjCObserver stopObserving:]):
(-[CDMSessionMediaSourceAVFObjCObserver invalidate]):

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

6 years agoLayout Test media/track/track-forced-subtitles-in-band.html is flaky
jer.noble@apple.com [Wed, 8 Oct 2014 20:26:39 +0000 (20:26 +0000)]
Layout Test media/track/track-forced-subtitles-in-band.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=137505

Reviewed by Simon Fraser.

Now that the media controls can have audio as well as text tracks, use the aria-labelledby attribute
to get the <ul> containing the text track menu list items.

* media/track/track-forced-subtitles-in-band.html:
* media/track/track-user-preferences-expected.txt:
* media/track/track-user-preferences.html:
* media/trackmenu-test.js:
(trackMenuListByLabel):
(captionTrackMenuList):
(audioTrackMenuList):
(indexOfMenuItemBeginningWith):
(indexOfCaptionMenuItemBeginningWith):
(indexOfAudioTrackMenuItemBeginningWith):
(selectMenuItemFromList):
(selectCaptionMenuItem):
(selectAudioTrackMenuItem):
(listTrackMenu):
(trackMenuList): Deleted.
* media/video-controls-audiotracks-trackmenu.html:
* media/video-controls-captions-trackmenu-includes-enabled-track.html:
* media/video-controls-captions-trackmenu-only-captions-descriptions-and-subtitles.html:
* media/video-controls-captions-trackmenu.html:

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

6 years ago[WinCairo] Enable JIT on 32-bit.
commit-queue@webkit.org [Wed, 8 Oct 2014 20:16:46 +0000 (20:16 +0000)]
[WinCairo] Enable JIT on 32-bit.
https://bugs.webkit.org/show_bug.cgi?id=137521

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-10-08
Reviewed by Mark Lam.

Enable JIT on Windows 32-bit, but disable it at runtime if SSE2 is not present.

Source/JavaScriptCore:

* JavaScriptCore.vcxproj/LLInt/LLIntAssembly/build-LLIntAssembly.pl:
* runtime/Options.cpp:
(JSC::recomputeDependentOptions):

Source/WTF:

* wtf/Platform.h:

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

6 years agoLayout Test media/track/track-forced-subtitles-in-band.html is flaky
jer.noble@apple.com [Wed, 8 Oct 2014 20:04:33 +0000 (20:04 +0000)]
Layout Test media/track/track-forced-subtitles-in-band.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=137505

Reviewed by Simon Fraser.

Now that the media controls can have audio as well as text tracks, use the aria-labelledby attribute
to get the <ul> containing the text track menu list items.

* media/track/track-forced-subtitles-in-band.html:
* media/track/track-user-preferences-expected.txt:
* media/track/track-user-preferences.html:
* media/trackmenu-test.js:
(trackMenuListByLabel):
(captionTrackMenuList):
(audioTrackMenuList):
(indexOfMenuItemBeginningWith):
(indexOfCaptionMenuItemBeginningWith):
(indexOfAudioTrackMenuItemBeginningWith):
(selectMenuItemFromList):
(selectCaptionMenuItem):
(selectAudioTrackMenuItem):
(listTrackMenu):
(trackMenuList): Deleted.
* media/video-controls-audiotracks-trackmenu.html:
* media/video-controls-captions-trackmenu-includes-enabled-track.html:
* media/video-controls-captions-trackmenu-only-captions-descriptions-and-subtitles.html:
* media/video-controls-captions-trackmenu.html:

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

6 years ago[Win] Resolve various static analyzer warnings in Tools.
bfulgham@apple.com [Wed, 8 Oct 2014 20:01:28 +0000 (20:01 +0000)]
[Win] Resolve various static analyzer warnings in Tools.
https://bugs.webkit.org/show_bug.cgi?id=137534

Reviewed by Dean Jackson.

* DumpRenderTree/cg/ImageDiffCG.cpp:
(main): User proper printf specifiers.
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::childrenCount): Handle possibility that
gcc_accChildCount returns with an error.
(accessibilityState): Ditto for gcc_accState.
* DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
(DRTDesktopNotificationPresenter::showDesktopNotification): Use proper
check for return value from 'isHTML'. HRESULT is not a boolean and cannot
be treated as such.
* DumpRenderTree/win/DumpRenderTree.cpp:
(DumpRenderTreeWndProc): Avoid possible infinite loop on teardown caused
by comparing an unsigned value as being greater-than zero.
* DumpRenderTree/win/EditingDelegate.cpp:
(dump): Pass proper character pointer type to printf.
(EditingDelegate::shouldBeginEditingInDOMRange): Ditto.
(EditingDelegate::shouldEndEditingInDOMRange): Ditto.
(EditingDelegate::shouldInsertNode): Ditto.
(EditingDelegate::shouldInsertText): Ditto.
(EditingDelegate::shouldDeleteDOMRange): Ditto.
(EditingDelegate::shouldChangeSelectedDOMRange): Ditto.
(EditingDelegate::shouldApplyStyle): Ditto.
* DumpRenderTree/win/EventSender.cpp:
(beginDragWithFilesCallback): Handle possible error case for GlobalAlloc.
* DumpRenderTree/win/EventSender.h: Add proper declaration for HRESULT to match
system headers.
* DumpRenderTree/win/PixelDumpSupportWin.cpp: Handle possible failure
from CreateDIBSection.
* DumpRenderTree/win/UIDelegate.cpp: Ensure proper type is passed to printf.
* TestWebKitAPI/Tests/WTF/MediaTime.cpp: Get rid of workaround for NaN under
older versions of MSVC we no longer support.
* TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp: Use proper types and API
for 64-bit builds.
* TestWebKitAPI/TestsController.cpp: Use NeverDestroyed like a good citizen.
* TestWebKitAPI/TestsController.h: Ditto.
* WinLauncher/Common.cpp: Handle possible failure from GetModuleFileName.
* WinLauncher/WinLauncher.cpp: Make order of operations explicit to avoid
performing bitwise | before the comparison is done.

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

6 years ago[Win] Resolve various static analyzer warnings in WebKit.
bfulgham@apple.com [Wed, 8 Oct 2014 19:34:03 +0000 (19:34 +0000)]
[Win] Resolve various static analyzer warnings in WebKit.
https://bugs.webkit.org/show_bug.cgi?id=137531

Reviewed by Dean Jackson.

* MarshallingHelpers.cpp:
(MarshallingHelpers::safeArrayToIntArray): Handle possible failure of
SafeArrayGetElement call.
(MarshallingHelpers::safeArrayToIUnknownArray): Ditto.
* MemoryStream.cpp:
(MemoryStream::CopyTo): Zero-initialize 'written' to silence warning.
* WebCoreSupport/WebChromeClient.cpp:
(WebChromeClient::exceededDatabaseQuota): Handle possible failure of
GetModuleFileName.
* WebHistory.cpp:
(getDayBoundaries): Handle possible failure of TzSpecificLocalTimeToSystemTime
* WebView.cpp:
(WebView::shouldInitializeTrackPointHack): Zero initialize return value.
(WebView::dispatchDidReceiveIconFromWebFrame): Avoid possible DeleteObject
call on a null bitmap handle.
(WebView::standardUserAgentWithApplicationName): Get rid of spurious
pointer dereference.

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

6 years agoAdd deprecation warning for CSSKeyframesRule::appendRule
dino@apple.com [Wed, 8 Oct 2014 19:24:43 +0000 (19:24 +0000)]
Add deprecation warning for CSSKeyframesRule::appendRule
https://bugs.webkit.org/show_bug.cgi?id=137532
<rdar://problem/18585745>

Reviewed by Brent Fulgham.

Source/WebCore:

In r173982 (webkit.org/b/57910) we added insertRule to match
the spec. We should print a warning to the JS console suggesting
users move to insertRule.

* css/WebKitCSSKeyframesRule.cpp:
(WebCore::WebKitCSSKeyframesRule::appendRule): Add a message to the system
console.
* css/WebKitCSSKeyframesRule.h:

LayoutTests:

Update test expectations to include console message.

* animations/change-keyframes-expected.txt:

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

6 years agoRemove superfluously duplicated code in public/api/report-commits.php.
rniwa@webkit.org [Wed, 8 Oct 2014 19:21:58 +0000 (19:21 +0000)]
Remove superfluously duplicated code in public/api/report-commits.php.

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

6 years ago[Win] Use proper v120 target for 64-bit builds.
bfulgham@apple.com [Wed, 8 Oct 2014 19:21:36 +0000 (19:21 +0000)]
[Win] Use proper v120 target for 64-bit builds.

* ANGLE.vcxproj/libEGL.vcxproj:

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

6 years agoText drawn with an SVG font has no spaces when word-rounding hacks are enabled
mmaxfield@apple.com [Wed, 8 Oct 2014 18:55:59 +0000 (18:55 +0000)]
Text drawn with an SVG font has no spaces when word-rounding hacks are enabled
https://bugs.webkit.org/show_bug.cgi?id=137463

Reviewed by Darin Adler.

Source/WebCore:

When rounding hacks are enabled, we use the "adjusted space width" instead of the
regular space width. However, the SVG-font-specific implementation of the
SimpleFontData constructor doesn't initialize this value, so it was getting set
to an undefined value (which happened to be close to 0 in my tests).

Test: svg/text/svg-font-word-rounding-hacks-spaces.html

* css/CSSFontFaceSource.cpp:
(WebCore::CSSFontFaceSource::getFontData):
(WebCore::CSSFontFaceSource::ensureFontData):
* loader/cache/CachedFont.cpp:
(WebCore::CachedFont::ensureCustomFontData):
(WebCore::CachedFont::getSVGFontById):
* platform/graphics/SimpleFontData.h:
* svg/SVGFontData.cpp:
(WebCore::SVGFontData::initializeFontData):

LayoutTests:

Make sure that spaces are present.

* svg/text/svg-font-word-rounding-hacks-spaces.html:
* svg/text/svg-font-word-rounding-hacks-spaces-expected.html:

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

6 years ago[Win] Resolve various static analyzer warnings in WebCore.
bfulgham@apple.com [Wed, 8 Oct 2014 18:32:12 +0000 (18:32 +0000)]
[Win] Resolve various static analyzer warnings in WebCore.
https://bugs.webkit.org/show_bug.cgi?id=137526

Reviewed by Dean Jackson.

A series of small changes to resolve various issues found by the MSVC static analyzer.

* inspector/NetworkResourcesData.cpp:
(WebCore::NetworkResourcesData::clear): Add assertion that it->value should never be null.
* page/SessionIDHash.h:
(WTF::HashTraits<WebCore::SessionID>::constructDeletedValue): Add explicit cast to avoid
compiler warning.
(WTF::HashTraits<WebCore::SessionID>::isDeletedValue): Ditto.
* page/win/FrameCGWin.cpp:
(WebCore::imageFromRect): Resolve static analyzer warnings by initializing bits, and
checking the return value of ::CreateDIBSection, which return nullptr on error.
* platform/graphics/ca/win/PlatformCALayerWin.cpp:
(printLayer): Use correct MSVC format specifier for size_t.
* platform/graphics/win/FontCacheWin.cpp:
(WebCore::getLinkedFonts): Handle possibility that a font link key does not exist.
(WebCore::FontCache::systemFallbackForCharacters): Handle error case when a valid code page
does not exist for a given character.
* platform/graphics/win/SimpleFontDataWin.cpp:
(WebCore::SimpleFontData::containsCharacters): Handle error cases for mapping to the CP_ACP code page,
and related failures when attempting to access the contents of a given code page.
* platform/graphics/win/UniscribeController.cpp:
(WebCore::UniscribeController::itemizeShapeAndPlace): Handle possible failure in the
ScriptItemize API call.
(WebCore::UniscribeController::shapeAndPlaceItem): Ditto for ScriptXtoCP API call.
* platform/win/BString.h: Use consistent SAL annotations for our typedeof of BSTR as in
the system header.
* platform/win/COMPtr.h: Ditto for HRESULT.
* platform/win/DragImageCGWin.cpp:
(WebCore::allocImage): Handle case of failing CreateDIBSection API call.
* platform/win/PopupMenuWin.cpp:
(WebCore::PopupMenuWin::show): Handle case of failing SystemParamtersInfo API call.
(WebCore::PopupMenuWin::wndProc): Ditto.

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

6 years agoRemove tests that always pass from the TestExpectations files.
simon.fraser@apple.com [Wed, 8 Oct 2014 18:31:14 +0000 (18:31 +0000)]
Remove tests that always pass from the TestExpectations files.

* TestExpectations:
* platform/mac-wk2/TestExpectations:
* platform/mac/TestExpectations:
* platform/win/TestExpectations:

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

6 years agoSource/WebKit2:
adachan@apple.com [Wed, 8 Oct 2014 18:20:12 +0000 (18:20 +0000)]
Source/WebKit2:
Implement WKPageIsPlayingAudio().
https://bugs.webkit.org/show_bug.cgi?id=137048

Reviewed by Darin Adler.

* UIProcess/API/C/WKPage.cpp:
(WKPageIsPlayingAudio):

Tools:
Add a test for WKPageIsPlayingAudio().
https://bugs.webkit.org/show_bug.cgi?id=137048

Reviewed by Darin Adler.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
Add file-with-video.html, test.mp4, and WKPageIsPlayingAudio.cpp to the project.
* TestWebKitAPI/Tests/WebKit2/WKPageIsPlayingAudio.cpp: Added.
(TestWebKitAPI::nullJavaScriptCallback):
(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::isPlayingAudioDidChangeCallback):
(TestWebKitAPI::setUpClients):
(TestWebKitAPI::TEST):
This test loads a page with a video in it. When the page is loaded, we first check that
WKPageIsPlayingAudio() returns false for the page. Then we call a method to start the video.
When the WKPageUIClient::isPlayingAudioDidChange callback gets called, check that WKPageIsPlayingAudio()
now returns true for the page.
* TestWebKitAPI/Tests/WebKit2/file-with-video.html: Added.
* TestWebKitAPI/Tests/WebKit2/test.mp4: Added.
This is a video copied from LayoutTests/media/content.

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

6 years ago[Win] Resolve warnings about missing __has_include macro under MSVC
bfulgham@apple.com [Wed, 8 Oct 2014 17:56:49 +0000 (17:56 +0000)]
[Win] Resolve warnings about missing __has_include macro under MSVC
https://bugs.webkit.org/show_bug.cgi?id=137524

Reviewed by Anders Carlsson.

* wtf/Compiler.h: Provide a dummy implementation of __has_include that
avoids the warning without changing compile behavior.

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

6 years ago[webkitpy] Use python-irclib-0.4.8.tar.gz instead of zip in AutoInstaller
ossy@webkit.org [Wed, 8 Oct 2014 17:40:09 +0000 (17:40 +0000)]
[webkitpy] Use python-irclib-0.4.8.tar.gz instead of zip in AutoInstaller
https://bugs.webkit.org/show_bug.cgi?id=137516

Reviewed by Alexey Proskuryakov.

* Scripts/webkitpy/thirdparty/__init__.py:
(AutoinstallImportHook._install_irc):

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

6 years ago[EME][Mac] Update CDMSessionMediaSourceAVFObjC to match new API provided by AVStreamS...
jer.noble@apple.com [Wed, 8 Oct 2014 17:32:41 +0000 (17:32 +0000)]
[EME][Mac] Update CDMSessionMediaSourceAVFObjC to match new API provided by AVStreamSession
https://bugs.webkit.org/show_bug.cgi?id=137469

Reviewed by Brent Fulgham.

Update our forward declaration to match the API provided by AVStreamSession.
AVStreamSession now takes an error: parameter in its initialiazer. It also provides the
sessionIdentifier used by the CDM, which CDMSessionMediaSourceAVFObjC will use as the
value of sessionId. Having this identifier allows us to fire a
secure-proof-of-key-release message after the client calls MediaKeySession.close().
Because this call will now generate messages, which have to be responded to in order
to remove those proofs from storage, do not clear the CDMSession from MediaKeySession
after calling close().

* Modules/encryptedmedia/MediaKeySession.cpp:
(WebCore::MediaKeySession::~MediaKeySession):
(WebCore::MediaKeySession::close):
(WebCore::MediaKeySession::setError): Deleted.
(WebCore::MediaKeySession::sessionId): Deleted.
* platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h:
(WebCore::CDMSessionMediaSourceAVFObjC::setSessionId):
* platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:
(-[CDMSessionMediaSourceAVFObjCListener initWithParent:]):
(-[CDMSessionMediaSourceAVFObjCObserver dealloc]):
(-[CDMSessionMediaSourceAVFObjCObserver beginObserving:]):
(-[CDMSessionMediaSourceAVFObjCObserver stopObserving:]):
(-[CDMSessionMediaSourceAVFObjCObserver invalidate]):
(-[CDMSessionMediaSourceAVFObjCListener observeValueForKeyPath:ofObject:change:context:]):
(WebCore::CDMSessionMediaSourceAVFObjC::CDMSessionMediaSourceAVFObjC):
(WebCore::CDMSessionMediaSourceAVFObjC::~CDMSessionMediaSourceAVFObjC):
(WebCore::CDMSessionMediaSourceAVFObjC::releaseKeys):
(WebCore::CDMSessionMediaSourceAVFObjC::update):
(WebCore::CDMSessionMediaSourceAVFObjC::addSourceBuffer):
(WebCore::CDMSessionMediaSourceAVFObjC::removeSourceBuffer):

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

6 years agoPerf dashboard should store commit logs
rniwa@webkit.org [Wed, 8 Oct 2014 17:20:32 +0000 (17:20 +0000)]
Perf dashboard should store commit logs
https://bugs.webkit.org/show_bug.cgi?id=137510

Reviewed by Darin Adler.

For the v2 version of the perf dashboard, we would like to be able to see commit logs in the dashboard itself.

This patch replaces "build_revisions" table with "commits" and "build_commits" relations to store commit logs,
and add JSON APIs to report and retrieve them. It also adds a tools/pull-svn.py to pull commit logs from
a subversion directory. The git version of this script will be added in a follow up patch.

In the new database schema, each revision in each repository is represented by exactly one row in "commits"
instead of one row for each build in "build_revisions". "commits" and "builds" now have a proper many-to-many
relationship via "build_commits" relations.

In order to migrate an existing instance of this application, run the following SQL commands:

BEGIN;

INSERT INTO commits (commit_repository, commit_revision, commit_time)
    (SELECT DISTINCT ON (revision_repository, revision_value)
        revision_repository, revision_value, revision_time FROM build_revisions);

INSERT INTO build_commits (commit_build, build_commit) SELECT revision_build, commit_id
    FROM commits, build_revisions
    WHERE commit_repository = revision_repository AND commit_revision = revision_value;

DROP TABLE build_revisions;

COMMIT;

The helper script to submit commit logs can be used as follows:

python ./tools/pull-svn.py "WebKit" https://svn.webkit.org/repository/webkit/ https://perf.webkit.org
    feeder-slave feeder-slave-password 60 "webkit-patch find-users"

The above command will pull the subversion server at https://svn.webkit.org/repository/webkit/ every 60 seconds
to retrieve at most 10 commits, and submits the results to https://perf.webkit.org using "feeder-slave" and
"feeder-slave-password" as the builder name and the builder password respectively.

The last, optional, argument is the shell command to convert a subversion account to the corresponding username.
e.g. "webkit-patch find-users rniwa@webkit.org" yields "Ryosuke Niwa" <rniwa@webkit.org> in the stdout.

* init-database.sql: Replaced "build_revisions" relation with "commits" and "build_commits" relations.

* public/api/commits.php: Added. Retrieves a list of commits based on arguments in its path of the form
    /api/commits/<repository-name>/<filter>. The behavior of this API depends on <filter> as follows:

    - Not specified - It returns every single commit for a given repository.
    - Matches "oldest" - It returns the commit with the oldest timestamp.
    - Matches "latest" - It returns the commit with the latest timestamp.
    - Matches "last-reported" - It returns the commit with the latest timestamp added via report-commits.php.
    - Is entirely alphanumeric - It returns the commit whose revision matches the filter.
    - Is of the form <alphanumeric>:<alphanumeric> or <alphanumeric>-<alphanumeric> - It retrieves the list
    of commits added via report-commits.php between two timestamps retrieved from commits whose revisions
    match the two alphanumeric values specified. Because it retrieves commits based on their timestamps,
    the list may contain commits that do not appear as neither hash's ancestor in git/mercurial.
(main):
(commit_from_revision):
(fetch_commits_between):
(format_commits):

* public/api/report-commits.php: Added. A JSON API to report new subversion, git, or mercurial commits.
See tests/api-report-commits.js for examples on how to use this API.

* public/api/runs.php: Updated the query to use "commit_builds" and "commits" relations instead of
"build_revisions". Regrettably, the new query is 20% slower but I'm going to wait until the new UI is ready
to optimize this and other JSON APIs.

* public/include/db.php:
(Database::select_or_insert_row):
(Database::update_or_insert_row): Added.
(Database::_select_update_or_insert_row): Extracted from select_or_insert_row. Try to update first and then
insert if the update fails for update_or_insert_row. Preserves the old behavior when $should_update is false.

(Database::select_first_row):
(Database::select_last_row): Added.
(Database::select_first_or_last_row): Extracted from select_first_row. Fixed a bug that we were asserting
$order_by to be not alphanumeric/underscore. Retrieve the last row instead of the first if $descending_order.

* public/include/report-processor.php:
(ReportProcessor::resolve_build_id): Store commits instead of build_revisions. We don't worry about the race
condition for adding "build_commits" rows since we shouldn't have a single tester submitting the same result
concurrently. Even if it happened, it will only result in a PHP error and the database will stay consistent.

* run-tests.js:
(pathToTests): Don't call path.resolve with "undefined" testName; It throws an exception in the latest node.js.

* tests/api-report-commits.js: Added.
* tests/api-report.js: Fixed a test per build_revisions to build_commits/commits replacement.

* tools: Added.
* tools/pull-svn.py: Added. See above for how to use this script.
(main):
(determine_first_revision_to_fetch):
(fetch_revision_from_dasbhoard):
(fetch_commit_and_resolve_author):
(fetch_commit):
(textContent):
(resolve_author_name_from_email):
(submit_commits):

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

6 years agoREGRESSION (r174403): media/track/track-forced-subtitles-in-band.html fails
aestes@apple.com [Wed, 8 Oct 2014 17:16:25 +0000 (17:16 +0000)]
REGRESSION (r174403): media/track/track-forced-subtitles-in-band.html fails
https://bugs.webkit.org/show_bug.cgi?id=137525

* TestExpectations: Marked media/track/track-forced-subtitles-in-band.html as an expected failure.

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

6 years agoUnreviewed build fix after r174456.
cdumez@apple.com [Wed, 8 Oct 2014 17:14:04 +0000 (17:14 +0000)]
Unreviewed build fix after r174456.

I was comparing a signed int to an unsigned one.

* platform/graphics/mac/FontCacheMac.mm:
(WebCore::shouldAutoActivateFontIfNeeded):

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

6 years ago[Mac] We are spending a lot of time loading fonts when loading weather.com
cdumez@apple.com [Wed, 8 Oct 2014 16:20:37 +0000 (16:20 +0000)]
[Mac] We are spending a lot of time loading fonts when loading weather.com
https://bugs.webkit.org/show_bug.cgi?id=137454

Reviewed by Darin Adler.

We are spending a lot of time loading fonts when loading weather.com:
~4.2% of WebProcess's cpu time in FontCache::getCachedFrontData().
In particular, we are spending a lot of time doing font auto-activation
because we don't have the Open Sans fonts installed and weather.com is
trying to load those.

Before this patch, we were doing font auto-activation ~250 times when
loading weather.com, even though the site is loading ~10 distinct font
families.

This patch adds a cache of font families we already tried to
auto-activate so that we don't try again. This results in ~10 font
auto-activations when loading weather.com instead of 250. It reduces
the amount of time spent in getCachedFrontData() to 62.6ms from 276ms
(4.4x less) when loading weather.com.

No new tests, no behavior change.

* platform/graphics/mac/FontCacheMac.mm:
(WebCore::shouldAutoActivateFontIfNeeded):
(WebCore::FontCache::createFontPlatformData):
* platform/mac/WebFontCache.h:
* platform/mac/WebFontCache.mm:
(+[WebFontCache fontWithFamily:traits:weight:size:shouldAutoActivateIfNeeded:]):
(+[WebFontCache fontWithFamily:traits:weight:size:]):
(+[WebFontCache fontWithFamily:traits:size:]):

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