[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

simon.fraser at apple.com simon.fraser at apple.com
Wed Dec 22 12:23:09 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 615d7c8206d5dcad9f58ec40c5451675536391de
Author: simon.fraser at apple.com <simon.fraser at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Aug 20 18:49:51 2010 +0000

    2010-08-20  Simon Fraser  <simon.fraser at apple.com>
    
            Reviewed by Dan Bernstein.
    
            Slider labels do not update as you move the sliders on this page
            https://bugs.webkit.org/show_bug.cgi?id=41020
    
            When repainting after layout in a multicol element, we need to adjust the
            repaint rect for the columns.
    
            Test: fast/repaint/multicol-repaint.html
    
            * rendering/RenderBlock.cpp:
            (WebCore::RenderBlock::layoutBlock):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65746 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 2f00bb3..298134e 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,17 @@
+2010-08-20  Simon Fraser  <simon.fraser at apple.com>
+
+        Reviewed by Dan Bernstein.
+
+        Slider labels do not update as you move the sliders on this page
+        https://bugs.webkit.org/show_bug.cgi?id=41020
+        
+        Testcase for repainting inline children on layout, inside a multicol element.
+
+        * fast/repaint/multicol-repaint.html: Added.
+        * platform/mac/fast/repaint/multicol-repaint-expected.checksum: Added.
+        * platform/mac/fast/repaint/multicol-repaint-expected.png: Added.
+        * platform/mac/fast/repaint/multicol-repaint-expected.txt: Added.
+
 2010-08-20  Abhishek Arya  <inferno at chromium.org>
 
         Reviewed by Darin Fisher.
diff --git a/LayoutTests/fast/repaint/multicol-repaint.html b/LayoutTests/fast/repaint/multicol-repaint.html
new file mode 100644
index 0000000..e9f6c2c
--- /dev/null
+++ b/LayoutTests/fast/repaint/multicol-repaint.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+
+<html lang="en">
+<head>
+  <style type="text/css" media="screen">
+
+    .container {
+      width: 400px;
+      height: 100px;
+      border: 1px solid black;
+      font-size: 50px;
+      -webkit-column-count: 2;
+    }
+
+    span {
+      font-family: Ahem;
+    }
+  </style>
+  <script src="resources/repaint.js" type="text/javascript"></script>
+  <script type="text/javascript">
+     function repaintTest()
+     {
+         document.getElementById('a').innerHTML = 'XXXXXX';
+     }
+  </script>
+</head>
+<body onload="runRepaintTest();">
+  
+  <div class="container">
+    &nbsp;<br>
+    <span id="a">x</span>
+  </div>
+</body>
+</html>
diff --git a/LayoutTests/platform/mac/fast/repaint/multicol-repaint-expected.checksum b/LayoutTests/platform/mac/fast/repaint/multicol-repaint-expected.checksum
new file mode 100644
index 0000000..593b3ca
--- /dev/null
+++ b/LayoutTests/platform/mac/fast/repaint/multicol-repaint-expected.checksum
@@ -0,0 +1 @@
+bdf1a811d8d5b2992a9f5e32046d667d
\ No newline at end of file
diff --git a/LayoutTests/platform/mac/fast/repaint/multicol-repaint-expected.png b/LayoutTests/platform/mac/fast/repaint/multicol-repaint-expected.png
new file mode 100644
index 0000000..e02953a
Binary files /dev/null and b/LayoutTests/platform/mac/fast/repaint/multicol-repaint-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/repaint/multicol-repaint-expected.txt b/LayoutTests/platform/mac/fast/repaint/multicol-repaint-expected.txt
new file mode 100644
index 0000000..fd4ca35
--- /dev/null
+++ b/LayoutTests/platform/mac/fast/repaint/multicol-repaint-expected.txt
@@ -0,0 +1,14 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x118
+  RenderBlock {HTML} at (0,0) size 800x118
+    RenderBody {BODY} at (8,8) size 784x102
+layer at (8,8) size 402x102
+  RenderBlock {DIV} at (0,0) size 402x102 [border: (1px solid #000000)]
+    RenderText {#text} at (1,1) size 13x59
+      text run at (1,1) width 13: " "
+    RenderBR {BR} at (14,1) size 0x59
+    RenderInline {SPAN} at (0,0) size 300x50
+      RenderText {#text} at (1,66) size 300x50
+        text run at (1,66) width 300: "XXXXXX"
+    RenderText {#text} at (0,0) size 0x0
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index eb73c9b..b79e8a2 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2010-08-20  Simon Fraser  <simon.fraser at apple.com>
+
+        Reviewed by Dan Bernstein.
+
+        Slider labels do not update as you move the sliders on this page
+        https://bugs.webkit.org/show_bug.cgi?id=41020
+        
+        When repainting after layout in a multicol element, we need to adjust the
+        repaint rect for the columns.
+
+        Test: fast/repaint/multicol-repaint.html
+
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::layoutBlock):
+
 2010-08-20  Jian Li  <jianli at chromium.org>
 
         Reviewed by David Levin.
diff --git a/WebCore/rendering/RenderBlock.cpp b/WebCore/rendering/RenderBlock.cpp
index bbda168..0fc279e 100644
--- a/WebCore/rendering/RenderBlock.cpp
+++ b/WebCore/rendering/RenderBlock.cpp
@@ -1257,8 +1257,8 @@ void RenderBlock::layoutBlock(bool relayoutChildren)
         int repaintRight = max(rightVisualOverflow(), rightLayoutOverflow());
         IntRect repaintRect(repaintLeft, repaintTop, repaintRight - repaintLeft, repaintBottom - repaintTop);
 
-        // FIXME: Deal with multiple column repainting.  We have to split the repaint
-        // rect up into multiple rects if it spans columns.
+        // The repaint rect may be split across columns, in which case adjustRectForColumns() will return the union.
+        adjustRectForColumns(repaintRect);
 
         repaintRect.inflate(maximalOutlineSize(PaintPhaseOutline));
         

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list