Commit cf45df9e authored by commit-queue@webkit.org's avatar commit-queue@webkit.org
Browse files

2010-09-14 Pierre-Antoine LaFayette <plafayet@codeaurora.org>

        Reviewed by Darin Adler.

        REGRESSION (r52839): Incomplete repaint of IMG with text-align:center
        https://bugs.webkit.org/show_bug.cgi?id=40142

        Add pixel tests to verify proper repaint of RenderReplaced as well as non-inline children.

        * fast/repaint/block-layout-inline-children-float-positioned.html: Added.
        * fast/repaint/block-layout-inline-children-replaced.html: Added.
        * platform/mac/fast/repaint/block-layout-inline-children-float-positioned-expected.checksum: Added.
        * platform/mac/fast/repaint/block-layout-inline-children-float-positioned-expected.png: Added.
        * platform/mac/fast/repaint/block-layout-inline-children-float-positioned-expected.txt: Added.
        * platform/mac/fast/repaint/block-layout-inline-children-replaced-expected.checksum: Added.
        * platform/mac/fast/repaint/block-layout-inline-children-replaced-expected.png: Added.
        * platform/mac/fast/repaint/block-layout-inline-children-replaced-expected.txt: Added.
2010-09-14  Pierre-Antoine LaFayette  <plafayet@codeaurora.org>

        Reviewed by Darin Adler.

        REGRESSION (r52839): Incomplete repaint of IMG with text-align:center
        https://bugs.webkit.org/show_bug.cgi?id=40142

        http://trac.webkit.org/changeset/52839 didn't really deal with the inline replaced element case.  This just generalizes to all inline content.

        Patch by: Dave Hyatt

        Tests: fast/repaint/block-layout-inline-children-float-positioned.html
               fast/repaint/block-layout-inline-children-replaced.html

        * rendering/RenderBlockLineLayout.cpp:
        (WebCore::RenderBlock::layoutInlineChildren):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@67463 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent 78d1c87f
2010-09-14 Pierre-Antoine LaFayette <plafayet@codeaurora.org>
Reviewed by Darin Adler.
REGRESSION (r52839): Incomplete repaint of IMG with text-align:center
https://bugs.webkit.org/show_bug.cgi?id=40142
Add pixel tests to verify proper repaint of RenderReplaced as well as non-inline children.
* fast/repaint/block-layout-inline-children-float-positioned.html: Added.
* fast/repaint/block-layout-inline-children-replaced.html: Added.
* platform/mac/fast/repaint/block-layout-inline-children-float-positioned-expected.checksum: Added.
* platform/mac/fast/repaint/block-layout-inline-children-float-positioned-expected.png: Added.
* platform/mac/fast/repaint/block-layout-inline-children-float-positioned-expected.txt: Added.
* platform/mac/fast/repaint/block-layout-inline-children-replaced-expected.checksum: Added.
* platform/mac/fast/repaint/block-layout-inline-children-replaced-expected.png: Added.
* platform/mac/fast/repaint/block-layout-inline-children-replaced-expected.txt: Added.
2010-09-14 Pavel Podivilov <podivilov@chromium.org>
 
Reviewed by Pavel Feldman.
<head>
<title>This is a test for regression against https://bugs.webkit.org/show_bug.cgi?id=40142</title>
<style>
#target {
width: 600px;
height: 100px;
text-align: center;
border: 1px solid #ddd;
}
</style>
</head>
<body style="margin: 0;" onload="runRepaintTest()">
<script>
function repaintTest()
{
document.getElementById("target").innerHTML +=
'<span style="float: right;">the quick brown fox jumped over the lazy dog</span>';
document.getElementById("target").innerHTML +=
'<span style="position: absolute;">the quick brown fox jumped over the lazy dog</span>';
}
</script>
<script src="resources/repaint.js"></script>
<p>This is a test for regression against <a href="https://bugs.webkit.org/show_bug.cgi?id=40142">https://bugs.webkit.org/show_bug.cgi?id=40142</a></p>
<div>
<div id="target"></div>
</div>
</body>
<head>
<title>This is a test for regression against https://bugs.webkit.org/show_bug.cgi?id=40142</title>
<style>
.target {
width: 400px;
height: 150px;
text-align: center;
border: 1px solid #ddd;
}
</style>
</head>
<body style="margin: 0;" onload="runRepaintTest()">
<script>
function repaintTest()
{
document.getElementById("target").innerHTML +=
'<img style="height: 100px;" src="resources/apple.jpg" >';
}
</script>
<script src="resources/repaint.js"></script>
<p>This is a test for regression against <a href="https://bugs.webkit.org/show_bug.cgi?id=40142">https://bugs.webkit.org/show_bug.cgi?id=40142</a></p>
<div>
<div class="target" id="target"></div>
</div>
</body>
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 (0,0) size 800x600
RenderBlock {P} at (0,0) size 800x18
RenderText {#text} at (0,0) size 220x18
text run at (0,0) width 220: "This is a test for regression against "
RenderInline {A} at (0,0) size 305x18 [color=#0000EE]
RenderText {#text} at (220,0) size 305x18
text run at (220,0) width 305: "https://bugs.webkit.org/show_bug.cgi?id=40142"
RenderBlock {DIV} at (0,34) size 800x102
RenderBlock {DIV} at (0,0) size 602x102 [border: (1px solid #DDDDDD)]
RenderBlock (floating) {SPAN} at (309,1) size 292x18
RenderText {#text} at (0,0) size 292x18
text run at (0,0) width 292: "the quick brown fox jumped over the lazy dog"
layer at (1,35) size 292x18
RenderBlock (positioned) {SPAN} at (1,35) size 292x18
RenderText {#text} at (0,0) size 292x18
text run at (0,0) width 292: "the quick brown fox jumped over the lazy dog"
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 (0,0) size 800x600
RenderBlock {P} at (0,0) size 800x18
RenderText {#text} at (0,0) size 220x18
text run at (0,0) width 220: "This is a test for regression against "
RenderInline {A} at (0,0) size 305x18 [color=#0000EE]
RenderText {#text} at (220,0) size 305x18
text run at (220,0) width 305: "https://bugs.webkit.org/show_bug.cgi?id=40142"
RenderBlock {DIV} at (0,34) size 800x152
RenderBlock {DIV} at (0,0) size 402x152 [border: (1px solid #DDDDDD)]
RenderImage {IMG} at (155,1) size 92x100
2010-09-14 Pierre-Antoine LaFayette <plafayet@codeaurora.org>
Reviewed by Darin Adler.
REGRESSION (r52839): Incomplete repaint of IMG with text-align:center
https://bugs.webkit.org/show_bug.cgi?id=40142
http://trac.webkit.org/changeset/52839 didn't really deal with the inline replaced element case. This just generalizes to all inline content.
Patch by: Dave Hyatt
Tests: fast/repaint/block-layout-inline-children-float-positioned.html
fast/repaint/block-layout-inline-children-replaced.html
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutInlineChildren):
2010-09-14 Balazs Kelemen <kb@inf.u-szeged.hu>
 
Reviewed by Andreas Kling.
......@@ -559,6 +559,9 @@ void RenderBlock::layoutInlineChildren(bool relayoutChildren, int& repaintTop, i
Vector<FloatWithRect> floats;
bool hasInlineChild = false;
while (o) {
if (!hasInlineChild && o->isInline())
hasInlineChild = true;
if (o->isReplaced() || o->isFloating() || o->isPositioned()) {
RenderBox* box = toRenderBox(o);
......@@ -580,7 +583,6 @@ void RenderBlock::layoutInlineChildren(bool relayoutChildren, int& repaintTop, i
o->layoutIfNeeded();
}
} else if (o->isText() || (o->isRenderInline() && !endOfInline)) {
hasInlineChild = true;
if (fullLayout || o->selfNeedsLayout())
dirtyLineBoxesForRenderer(o, fullLayout);
o->setNeedsLayout(false);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment