WebCore:

        Make :first-child and :first-of-type properly dynamic when the DOM changes.  Brings the Acid3 score up
        to 66/100.

        Reviewed by olliej

        Added fast/css/first-child-pseudo-class.html, fast/css/first-of-type-pseudo-class.html, fast/css/empty-body-test.html

        * css/CSSGrammar.y:
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::checkOneSelector):
        * dom/Element.cpp:
        (WebCore::Element::recalcStyle):
        (WebCore::Element::childrenChanged):
        * rendering/RenderStyle.cpp:
        (WebCore::RenderStyle::RenderStyle):
        * rendering/RenderStyle.h:
        (WebCore::RenderStyle::childrenAffectedByFirstChildRules):
        (WebCore::RenderStyle::setChildrenAffectedByFirstChildRules):
        (WebCore::RenderStyle::childrenAffectedByLastChildRules):
        (WebCore::RenderStyle::setChildrenAffectedByLastChildRules):
        (WebCore::RenderStyle::childrenAffectedByPositionalRules):
        (WebCore::RenderStyle::setChildrenAffectedByPositionalRules):
        (WebCore::RenderStyle::firstChildState):
        (WebCore::RenderStyle::setFirstChildState):
        (WebCore::RenderStyle::lastChildState):
        (WebCore::RenderStyle::setLastChildState):

LayoutTests:

        Added tests for dynamic :first-child support (Acid3).

        Reviewed by olliej

        * fast/css/empty-body-test.html: Added.
        * fast/css/first-child-pseudo-class.html: Added.
        * fast/css/first-of-type-pseudo-class.html: Added.
        * platform/mac/fast/css/empty-body-test-expected.checksum: Added.
        * platform/mac/fast/css/empty-body-test-expected.png: Added.
        * platform/mac/fast/css/empty-body-test-expected.txt: Added.
        * platform/mac/fast/css/first-child-pseudo-class-expected.checksum: Added.
        * platform/mac/fast/css/first-child-pseudo-class-expected.png: Added.
        * platform/mac/fast/css/first-child-pseudo-class-expected.txt: Added.
        * platform/mac/fast/css/first-of-type-pseudo-class-expected.checksum: Added.
        * platform/mac/fast/css/first-of-type-pseudo-class-expected.png: Added.
        * platform/mac/fast/css/first-of-type-pseudo-class-expected.txt: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@29932 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/fast/css/empty-body-test.html b/LayoutTests/fast/css/empty-body-test.html
new file mode 100644
index 0000000..bedc71b
--- /dev/null
+++ b/LayoutTests/fast/css/empty-body-test.html
@@ -0,0 +1,13 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+<style type="text/css">
+body:empty { background-color:red; }
+div#appendChild { padding: 1em;}
+</style>
+</head>
+<body>
+<p>There should be no RED on the page</p>
+<div id='appendChild'></div>
+</body>
+</html>