WebCore: https://bugs.webkit.org/show_bug.cgi?id=27357
authorpkasting@chromium.org <pkasting@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 18 Aug 2009 19:50:04 +0000 (19:50 +0000)
committerpkasting@chromium.org <pkasting@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 18 Aug 2009 19:50:04 +0000 (19:50 +0000)
commit565244d3bb25c3eae02cc35765f93c885f5df350
tree0fdd685838f606430a08f4e15738a14453fd2f0f
parentff07e759a278503c112eb53d71878543d99678ff
WebCore: https://bugs.webkit.org/show_bug.cgi?id=27357
Support for :valid and :invalid CSS selectors, from HTML5 specs.
http://www.whatwg.org/specs/web-apps/current-work/#selector-valid

Patch by Michelangelo De Simone <micdesim@gmail.com> on 2009-08-18
Reviewed by Adele Peterson.

Tests: fast/css/pseudo-invalid-001.html
       fast/css/pseudo-invalid-002.html
       fast/css/pseudo-valid-001.html
       fast/css/pseudo-valid-002.html
       fast/css/pseudo-valid-003.html
       fast/css/pseudo-valid-004.html
       fast/css/pseudo-valid-005.html
       fast/css/pseudo-valid-006.html
       fast/css/pseudo-valid-007.html

* css/CSSSelector.cpp:
(WebCore::CSSSelector::extractPseudoType): extracts new pseudo-classes
* css/CSSSelector.h:
(WebCore::CSSSelector::):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::canShareStyleWithElement): Make sure we don't share style between

LayoutTests: https://bugs.webkit.org/show_bug.cgi?id=27357
Tests for :valid and :invalid CSS selectors, from HTML5 specs.
http://www.whatwg.org/specs/web-apps/current-work/#selector-valid

Patch by Michelangelo De Simone <micdesim@gmail.com> on 2009-08-18
Reviewed by Adele Peterson.

* fast/css/pseudo-invalid-001-expected.txt: Added.
* fast/css/pseudo-invalid-001.html: Added.
* fast/css/pseudo-invalid-002-expected.txt: Added.
* fast/css/pseudo-invalid-002.html: Added.
* fast/css/pseudo-valid-001-expected.txt: Added.
* fast/css/pseudo-valid-001.html: Added.
* fast/css/pseudo-valid-002-expected.txt: Added.
* fast/css/pseudo-valid-002.html: Added.
* fast/css/pseudo-valid-003-expected.txt: Added.
* fast/css/pseudo-valid-003.html: Added.
* fast/css/pseudo-valid-004-expected.txt: Added.
* fast/css/pseudo-valid-004.html: Added.
* fast/css/pseudo-valid-005-expected.txt: Added.
* fast/css/pseudo-valid-005.html: Added.
* fast/css/pseudo-valid-006-expected.txt: Added.
* fast/css/pseudo-valid-006.html: Added.
* fast/css/pseudo-valid-007-expected.txt: Added.
* fast/css/pseudo-valid-007.html: Added.
* fast/dom/plugin-attributes-enumeration-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@47444 268f45cc-cd09-0410-ab3c-d52691b4dbfc
30 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/css/pseudo-invalid-001-expected.txt [new file with mode: 0644]
LayoutTests/fast/css/pseudo-invalid-001.html [new file with mode: 0644]
LayoutTests/fast/css/pseudo-invalid-002-expected.txt [new file with mode: 0644]
LayoutTests/fast/css/pseudo-invalid-002.html [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-001-expected.txt [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-001.html [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-002-expected.txt [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-002.html [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-003-expected.txt [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-003.html [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-004-expected.txt [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-004.html [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-005-expected.txt [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-005.html [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-006-expected.txt [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-006.html [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-007-expected.txt [new file with mode: 0644]
LayoutTests/fast/css/pseudo-valid-007.html [new file with mode: 0644]
LayoutTests/fast/dom/plugin-attributes-enumeration-expected.txt
WebCore/ChangeLog
WebCore/css/CSSSelector.cpp
WebCore/css/CSSSelector.h
WebCore/css/CSSStyleSelector.cpp
WebCore/dom/Element.h
WebCore/html/HTMLFormControlElement.cpp
WebCore/html/HTMLFormControlElement.h
WebCore/html/HTMLKeygenElement.h
WebCore/html/HTMLObjectElement.h
WebCore/html/HTMLObjectElement.idl