CSS Selectors Level 4: Add parsing for :matches
https://bugs.webkit.org/show_bug.cgi?id=137348

Reviewed by Benjamin Poulain.

Source/WebCore:

Add initial parsing functionality of :matches pseudo class in Selectors Level 4.
It accepts selector list as a parameter. It can contain pseudo elements.
And now at the parsing phase, multiple pseudo elements are allowed.
Currently :not doesn't accept any functional pseudo classes, :not(:matches(...)) is rejected.
And currently, :matches(:visited, :link) is allowed in the parsing phase.

* css/CSSGrammar.y.in:
* css/CSSParser.cpp:
(WebCore::CSSParser::detectFunctionTypeToken):
* css/CSSSelector.cpp:
(WebCore::appendSelectorList):
(WebCore::CSSSelector::selectorText):
* css/CSSSelector.h:
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne):
* css/SelectorPseudoClassAndCompatibilityElementMap.in:
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):

LayoutTests:

* 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:
Cover CSSOM tests; canonicalizing :matches text representation.

* fast/css/parsing-css-matches-1-expected.txt: Added.
* fast/css/parsing-css-matches-1.html: Added.
* fast/css/parsing-css-matches-2-expected.txt: Added.
* fast/css/parsing-css-matches-2.html: Added.
* fast/css/parsing-css-matches-3-expected.txt: Added.
* fast/css/parsing-css-matches-3.html: Added.
* fast/css/parsing-css-matches-4-expected.txt: Added.
* fast/css/parsing-css-matches-4.html: Added.
* fast/css/parsing-css-matches-5-expected.txt: Added.
* fast/css/parsing-css-matches-5.html: Added.
* fast/css/parsing-css-matches-6-expected.txt: Added.
* fast/css/parsing-css-matches-6.html: Added.
Valid :matches are tested in the above tests. Selector lists with 1, 2, 3 elements are tested.

* fast/css/parsing-css-matches-7-expected.txt: Added.
* fast/css/parsing-css-matches-7.html: Added.
* fast/css/parsing-css-matches-8-expected.txt: Added.
* fast/css/parsing-css-matches-8.html: Added.
Invalid :matches are tested in the above tests. :matches() etc. are tested.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@174259 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Change how 32-bit JSValues check if they are a Boolean

Rubber stamped by Filip Pizlo.

32-bit JSValue::isBoolean can simply check if its tag corresponds 
to the boolean tag instead of checking if it's either true or false.

* runtime/JSCJSValueInlines.h:
(JSC::JSValue::isBoolean):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@174260 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Fix build break since r174231 and r174256
https://bugs.webkit.org/show_bug.cgi?id=137384

Unreviewed, EFL build fix.

r174231 and r174256 didn't consider EFL port and CoordinatedGraphics area.

Source/WebCore:

* css/WebKitCSSViewportRule.cpp:
(WebCore::WebKitCSSViewportRule::WebKitCSSViewportRule):
* css/WebKitCSSViewportRule.h:

Source/WebKit2:

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
(WebKit::CoordinatedDrawingArea::mainFrameContentSizeChanged):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::setRootCompositingLayer):
(WebKit::CoordinatedLayerTreeHost::didFlushRootLayer):
(WebKit::CoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):
* WebProcess/WebPage/TapHighlightController.cpp:
(WebKit::TapHighlightController::highlight):
(WebKit::TapHighlightController::hideHighlight):
* WebProcess/WebPage/TapHighlightController.h: Add WebCore:: namespace prefix to PageOverlay argument type.

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