WebCore:

2008-10-14  David Hyatt  <hyatt@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=21595

        Clean up background and overflow propagation from the body to the viewport.  Make it match the
        latest CSS2.1 spec thinking.

        Reviewed by Adam Roben

        Added many tests at fast/body-propagation/.  These are Simon Pieters' tests of propagation handling
        (available at http://simon.html5.org/test/css/magic-body/).

        * dom/Document.cpp:
        (WebCore::Document::body):
        * page/FrameView.cpp:
        (WebCore::FrameView::layout):
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::styleDidChange):
        (WebCore::RenderBox::paintRootBoxDecorations):
        (WebCore::RenderBox::paintBoxDecorations):
        (WebCore::RenderBox::repaintLayerRectsForImage):

LayoutTests:

2008-10-14  David Hyatt  <hyatt@apple.com>

        Add layout tests for body propagation of overflow and background to the viewport.

        Reviewed by Adam Roben

        * fast/body-propagation: Added.
        * fast/body-propagation/background-color: Added.
        * fast/body-propagation/background-color/001-xhtml.xhtml: Added.
        * fast/body-propagation/background-color/001.html: Added.
        * fast/body-propagation/background-color/002-xhtml.xhtml: Added.
        * fast/body-propagation/background-color/002.html: Added.
        * fast/body-propagation/background-color/003-declarative.xhtml: Added.
        * fast/body-propagation/background-color/003-xhtml.xhtml: Added.
        * fast/body-propagation/background-color/003.html: Added.
        * fast/body-propagation/background-color/004-declarative.xhtml: Added.
        * fast/body-propagation/background-color/004-xhtml.xhtml: Added.
        * fast/body-propagation/background-color/004.html: Added.
        * fast/body-propagation/background-color/005-declarative.xhtml: Added.
        * fast/body-propagation/background-color/005-xhtml.xhtml: Added.
        * fast/body-propagation/background-color/005.html: Added.
        * fast/body-propagation/background-color/006-declarative.xhtml: Added.
        * fast/body-propagation/background-color/006-xhtml.xhtml: Added.
        * fast/body-propagation/background-color/006.html: Added.
        * fast/body-propagation/background-color/007-declarative.xhtml: Added.
        * fast/body-propagation/background-color/007-xhtml.xhtml: Added.
        * fast/body-propagation/background-color/007.html: Added.
        * fast/body-propagation/background-color/008-xhtml.xhtml: Added.
        * fast/body-propagation/background-color/008.html: Added.
        * fast/body-propagation/background-image: Added.
        * fast/body-propagation/background-image/001-xhtml.xhtml: Added.
        * fast/body-propagation/background-image/001.html: Added.
        * fast/body-propagation/background-image/002-xhtml.xhtml: Added.
        * fast/body-propagation/background-image/002.html: Added.
        * fast/body-propagation/background-image/003-declarative.xhtml: Added.
        * fast/body-propagation/background-image/003-xhtml.xhtml: Added.
        * fast/body-propagation/background-image/003.html: Added.
        * fast/body-propagation/background-image/004-declarative.xhtml: Added.
        * fast/body-propagation/background-image/004-xhtml.xhtml: Added.
        * fast/body-propagation/background-image/004.html: Added.
        * fast/body-propagation/background-image/005-declarative.xhtml: Added.
        * fast/body-propagation/background-image/005-xhtml.xhtml: Added.
        * fast/body-propagation/background-image/005.html: Added.
        * fast/body-propagation/background-image/006-declarative.xhtml: Added.
        * fast/body-propagation/background-image/006-xhtml.xhtml: Added.
        * fast/body-propagation/background-image/006.html: Added.
        * fast/body-propagation/background-image/007-declarative.xhtml: Added.
        * fast/body-propagation/background-image/007-xhtml.xhtml: Added.
        * fast/body-propagation/background-image/007.html: Added.
        * fast/body-propagation/background-image/008-xhtml.xhtml: Added.
        * fast/body-propagation/background-image/008.html: Added.
        * fast/body-propagation/background-image/009-xhtml.xhtml: Added.
        * fast/body-propagation/background-image/009.html: Added.
        * fast/body-propagation/background-image/010-xhtml.xhtml: Added.
        * fast/body-propagation/background-image/010.html: Added.
        * fast/body-propagation/background-image/resources: Added.
        * fast/body-propagation/background-image/resources/lime.png: Added.
        * fast/body-propagation/background-image/resources/red.png: Added.
        * fast/body-propagation/background-image/resources/white.png: Added.
        * fast/body-propagation/background-image/resources/yellow.png: Added.
        * fast/body-propagation/overflow: Added.
        * fast/body-propagation/overflow/001-xhtml.xhtml: Added.
        * fast/body-propagation/overflow/001.html: Added.
        * fast/body-propagation/overflow/002-xhtml.xhtml: Added.
        * fast/body-propagation/overflow/002.html: Added.
        * fast/body-propagation/overflow/003-declarative.xhtml: Added.
        * fast/body-propagation/overflow/003-xhtml.xhtml: Added.
        * fast/body-propagation/overflow/003.html: Added.
        * fast/body-propagation/overflow/004-declarative.xhtml: Added.
        * fast/body-propagation/overflow/004-xhtml.xhtml: Added.
        * fast/body-propagation/overflow/004.html: Added.
        * fast/body-propagation/overflow/005-declarative.xhtml: Added.
        * fast/body-propagation/overflow/005-xhtml.xhtml: Added.
        * fast/body-propagation/overflow/005.html: Added.
        * fast/body-propagation/overflow/006-declarative.xhtml: Added.
        * fast/body-propagation/overflow/006-xhtml.xhtml: Added.
        * fast/body-propagation/overflow/006.html: Added.
        * fast/body-propagation/overflow/007-declarative.xhtml: Added.
        * fast/body-propagation/overflow/007-xhtml.xhtml: Added.
        * fast/body-propagation/overflow/007.html: Added.
        * platform/mac/fast/body-propagation: Added.
        * platform/mac/fast/body-propagation/background-color: Added.
        * platform/mac/fast/body-propagation/background-color/001-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/001-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/001-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/001-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/001-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/001-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/002-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/002-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/002-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/002-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/002-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/002-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/003-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/003-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/003-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/003-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/003-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/003-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/003-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/003-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/003-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/004-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/004-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/004-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/004-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/004-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/004-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/004-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/004-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/004-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/005-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/005-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/005-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/005-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/005-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/005-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/005-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/005-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/005-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/006-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/006-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/006-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/006-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/006-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/006-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/006-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/006-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/006-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/007-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/007-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/007-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/007-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/007-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/007-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/007-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/007-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/007-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/008-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/008-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/008-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-color/008-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-color/008-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-color/008-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image: Added.
        * platform/mac/fast/body-propagation/background-image/001-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/001-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/001-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/001-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/001-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/001-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/002-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/002-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/002-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/002-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/002-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/002-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/003-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/003-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/003-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/003-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/003-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/003-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/003-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/003-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/003-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/004-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/004-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/004-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/004-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/004-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/004-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/004-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/004-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/004-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/005-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/005-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/005-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/005-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/005-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/005-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/005-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/005-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/005-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/006-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/006-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/006-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/006-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/006-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/006-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/006-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/006-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/006-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/007-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/007-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/007-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/007-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/007-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/007-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/007-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/007-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/007-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/008-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/008-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/008-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/008-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/008-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/008-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/009-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/009-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/009-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/009-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/009-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/009-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/010-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/010-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/010-expected.txt: Added.
        * platform/mac/fast/body-propagation/background-image/010-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/background-image/010-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/background-image/010-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow: Added.
        * platform/mac/fast/body-propagation/overflow/001-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/001-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/001-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/001-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/001-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/001-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/002-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/002-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/002-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/002-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/002-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/002-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/003-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/003-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/003-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/003-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/003-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/003-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/003-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/003-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/003-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/004-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/004-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/004-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/004-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/004-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/004-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/004-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/004-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/004-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/005-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/005-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/005-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/005-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/005-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/005-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/005-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/005-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/005-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/006-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/006-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/006-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/006-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/006-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/006-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/006-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/006-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/006-xhtml-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/007-declarative-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/007-declarative-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/007-declarative-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/007-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/007-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/007-expected.txt: Added.
        * platform/mac/fast/body-propagation/overflow/007-xhtml-expected.checksum: Added.
        * platform/mac/fast/body-propagation/overflow/007-xhtml-expected.png: Added.
        * platform/mac/fast/body-propagation/overflow/007-xhtml-expected.txt: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37591 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 4e34700..05e972d 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,25 @@
+2008-10-14  David Hyatt  <hyatt@apple.com>
+
+        https://bugs.webkit.org/show_bug.cgi?id=21595
+
+        Clean up background and overflow propagation from the body to the viewport.  Make it match the
+        latest CSS2.1 spec thinking.
+
+        Reviewed by Adam Roben
+
+        Added many tests at fast/body-propagation/.  These are Simon Pieters' tests of propagation handling
+        (available at http://simon.html5.org/test/css/magic-body/).
+
+        * dom/Document.cpp:
+        (WebCore::Document::body):
+        * page/FrameView.cpp:
+        (WebCore::FrameView::layout):
+        * rendering/RenderBox.cpp:
+        (WebCore::RenderBox::styleDidChange):
+        (WebCore::RenderBox::paintRootBoxDecorations):
+        (WebCore::RenderBox::paintBoxDecorations):
+        (WebCore::RenderBox::repaintLayerRectsForImage):
+
 2008-10-14  Dimitri Glazkov  <dglazkov@chromium.org>
 
         Reviewed and landed by Sam Weinig.