[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.18-1-697-g2f78b87

mitz at apple.com mitz at apple.com
Wed Jan 20 22:28:24 UTC 2010


The following commit has been merged in the debian/unstable branch:
commit 8d89b150a0164fe862a649026f219f7b46145edc
Author: mitz at apple.com <mitz at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Jan 18 22:20:13 2010 +0000

    REGRESSION (r53420): incomplete repaint of bottom of bugs.webkit.org comment field
    https://bugs.webkit.org/show_bug.cgi?id=33809
    
    Reviewed by Darin Adler.
    
    WebCore:
    
    Test: fast/repaint/trailing-floats-root-line-box-overflow.html
    
    * rendering/RenderBlockLineLayout.cpp:
    (WebCore::RenderBlock::layoutInlineChildren): Copy bottom overflow from the last
    root box to the trailing floats box, which is becoming the last root box. This is
    needed because painting code assumes that the last line in a block is the one with the
    lowest overflow bottom.
    
    LayoutTests:
    
    * fast/repaint/trailing-floats-root-line-box-overflow-expected.checksum: Added.
    * fast/repaint/trailing-floats-root-line-box-overflow-expected.png: Added.
    * fast/repaint/trailing-floats-root-line-box-overflow-expected.txt: Added.
    * fast/repaint/trailing-floats-root-line-box-overflow.html: Added.
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53432 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 32cbb6c..cce7048 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,15 @@
+2010-01-18  Dan Bernstein  <mitz at apple.com>
+
+        Reviewed by Darin Adler.
+
+        REGRESSION (r53420): incomplete repaint of bottom of bugs.webkit.org comment field
+        https://bugs.webkit.org/show_bug.cgi?id=33809
+
+        * fast/repaint/trailing-floats-root-line-box-overflow-expected.checksum: Added.
+        * fast/repaint/trailing-floats-root-line-box-overflow-expected.png: Added.
+        * fast/repaint/trailing-floats-root-line-box-overflow-expected.txt: Added.
+        * fast/repaint/trailing-floats-root-line-box-overflow.html: Added.
+
 2010-01-18  Alexey Proskuryakov  <ap at apple.com>
 
         Rubber-stamped by Adam Roben.
diff --git a/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow-expected.checksum b/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow-expected.checksum
new file mode 100644
index 0000000..3fd721c
--- /dev/null
+++ b/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow-expected.checksum
@@ -0,0 +1 @@
+a3acd4a4fbe46ad46cc888c65e280107
\ No newline at end of file
diff --git a/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow-expected.png b/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow-expected.png
new file mode 100644
index 0000000..c5cd65d
Binary files /dev/null and b/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow-expected.png differ
diff --git a/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow-expected.txt b/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow-expected.txt
new file mode 100644
index 0000000..b51996f
--- /dev/null
+++ b/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow-expected.txt
@@ -0,0 +1,9 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x50 [bgcolor=#FFFF00]
+        RenderBlock {DIV} at (0,50) size 100x100 [bgcolor=#008000]
+        RenderBR {BR} at (100,50) size 0x0
+        RenderBlock (floating) {DIV} at (0,50) size 0x0
diff --git a/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow.html b/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow.html
new file mode 100644
index 0000000..e342b7e
--- /dev/null
+++ b/LayoutTests/fast/repaint/trailing-floats-root-line-box-overflow.html
@@ -0,0 +1,13 @@
+<head>
+    <script src="resources/repaint.js"></script>
+    <script>
+        function repaintTest()
+        {
+            document.getElementById("target").style.display = "none";
+        }
+    </script>
+</head>
+<body onload="runRepaintTest()">
+    <div style="background-color: yellow;"><div style="display: inline-block; width: 100px; height: 100px; background-color: green; margin-top: 50px; margin-bottom: -100px;"></div><br><div style="float: left;"></div></div>
+    <div style="position: absolute; height: 100px; background-color: red; width: 100px;" id="target"></div>
+</body>
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index fcf8993..12661ff 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2010-01-18  Dan Bernstein  <mitz at apple.com>
+
+        Reviewed by Darin Adler.
+
+        REGRESSION (r53420): incomplete repaint of bottom of bugs.webkit.org comment field
+        https://bugs.webkit.org/show_bug.cgi?id=33809
+
+        Test: fast/repaint/trailing-floats-root-line-box-overflow.html
+
+        * rendering/RenderBlockLineLayout.cpp:
+        (WebCore::RenderBlock::layoutInlineChildren): Copy bottom overflow from the last
+        root box to the trailing floats box, which is becoming the last root box. This is
+        needed because painting code assumes that the last line in a block is the one with the
+        lowest overflow bottom.
+
 2010-01-18  Csaba Osztrogonác  <ossy at webkit.org>
 
         [Qt] Unreviewed trivial buildfix. (r53429)
diff --git a/WebCore/rendering/RenderBlockLineLayout.cpp b/WebCore/rendering/RenderBlockLineLayout.cpp
index 066ad8d..2d1dc8c 100644
--- a/WebCore/rendering/RenderBlockLineLayout.cpp
+++ b/WebCore/rendering/RenderBlockLineLayout.cpp
@@ -1127,10 +1127,13 @@ void RenderBlock::layoutInlineChildren(bool relayoutChildren, int& repaintTop, i
             // This has to be done before adding in the bottom border/padding, or the float will
             // include the padding incorrectly. -dwh
             if (checkForFloatsFromLastLine) {
+                int bottomVisualOverflow = lastRootBox()->bottomVisualOverflow();
+                int bottomLayoutOverflow = lastRootBox()->bottomLayoutOverflow();
                 TrailingFloatsRootInlineBox* trailingFloatsLineBox = new (renderArena()) TrailingFloatsRootInlineBox(this);
                 m_lineBoxes.appendLineBox(trailingFloatsLineBox);
                 trailingFloatsLineBox->setConstructed();
                 trailingFloatsLineBox->verticallyAlignBoxes(height());
+                trailingFloatsLineBox->setVerticalOverflowPositions(height(), bottomLayoutOverflow, height(), bottomVisualOverflow, 0);
                 trailingFloatsLineBox->setBlockHeight(height());
             }
             if (lastFloat) {

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list