Diff
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/nested-columns-expected.png
(Binary files differ)
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/overflow-unsplittable-expected.txt (104347 => 104348)
--- branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/overflow-unsplittable-expected.txt 2012-01-06 23:13:02 UTC (rev 104347)
+++ branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/overflow-unsplittable-expected.txt 2012-01-06 23:16:52 UTC (rev 104348)
@@ -52,25 +52,25 @@
text run at (0,608) width 158: "amet ligula mattis porttitor sit"
text run at (0,632) width 158: "amet id felis. Integer volutpat"
text run at (0,656) width 110: "aliquam odio et feugiat."
-layer at (11,510) size 158x304 backgroundClip at (11,510) size 158x90 clip at (13,512) size 139x88 outlineClip at (0,0) size 800x600 scrollHeight 456
- RenderBlock {DIV} at (3,502) size 158x304 [border: (2px solid #000000)]
- RenderText {#text} at (2,7) size 139x446
- text run at (2,7) width 139: "Aenean diam enim, suscipit"
- text run at (2,31) width 139: "id pellentesque vel, hendrerit"
- text run at (2,55) width 139: "et metus. Suspendisse felis"
- text run at (2,79) width 139: "erat, hendrerit a congue in,"
- text run at (2,103) width 139: "euismod ac erat. Donec"
- text run at (2,127) width 139: "pulvinar venenatis tortor, a"
- text run at (2,151) width 139: "lobortis erat scelerisque et."
- text run at (2,175) width 139: "Class aptent taciti sociosqu"
- text run at (2,199) width 139: "ad litora torquent per conubia"
- text run at (2,223) width 139: "nostra, per inceptos"
- text run at (2,247) width 139: "himenaeos. Aliquam in orci"
- text run at (2,271) width 139: "id felis mollis porta ac et orci."
- text run at (2,295) width 139: "Donec viverra, eros ac mattis"
- text run at (2,319) width 139: "dapibus, quam ante porta"
- text run at (2,343) width 139: "lectus, accumsan"
- text run at (2,367) width 139: "pellentesque nibh metus non"
- text run at (2,391) width 139: "felis. Vivamus sed eros quis"
- text run at (2,415) width 139: "magna scelerisque ultrices ac"
+layer at (11,510) size 159x304 backgroundClip at (11,510) size 159x90 clip at (13,512) size 140x88 outlineClip at (0,0) size 800x600 scrollHeight 456
+ RenderBlock {DIV} at (3,502) size 159x304 [border: (2px solid #000000)]
+ RenderText {#text} at (2,7) size 140x446
+ text run at (2,7) width 140: "Aenean diam enim, suscipit"
+ text run at (2,31) width 140: "id pellentesque vel, hendrerit"
+ text run at (2,55) width 140: "et metus. Suspendisse felis"
+ text run at (2,79) width 140: "erat, hendrerit a congue in,"
+ text run at (2,103) width 140: "euismod ac erat. Donec"
+ text run at (2,127) width 140: "pulvinar venenatis tortor, a"
+ text run at (2,151) width 140: "lobortis erat scelerisque et."
+ text run at (2,175) width 140: "Class aptent taciti sociosqu"
+ text run at (2,199) width 140: "ad litora torquent per conubia"
+ text run at (2,223) width 140: "nostra, per inceptos"
+ text run at (2,247) width 140: "himenaeos. Aliquam in orci"
+ text run at (2,271) width 140: "id felis mollis porta ac et orci."
+ text run at (2,295) width 140: "Donec viverra, eros ac mattis"
+ text run at (2,319) width 140: "dapibus, quam ante porta"
+ text run at (2,343) width 140: "lectus, accumsan"
+ text run at (2,367) width 140: "pellentesque nibh metus non"
+ text run at (2,391) width 140: "felis. Vivamus sed eros quis"
+ text run at (2,415) width 140: "magna scelerisque ultrices ac"
text run at (2,439) width 45: "eget velit."
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/anonymous-split-block-crash-expected.png
(Binary files differ)
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/anonymous-style-inheritance-expected.png
(Binary files differ)
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/clone-anonymous-block-non-inline-child-crash-expected.png
(Binary files differ)
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt (104347 => 104348)
--- branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt 2012-01-06 23:13:02 UTC (rev 104347)
+++ branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-child-complex-splitting-expected.txt 2012-01-06 23:16:52 UTC (rev 104348)
@@ -61,7 +61,7 @@
text run at (233,180) width 121: "Lorem ipsum dolor"
text run at (0,198) width 363: "sit amet, consectetuer adipiscing elit. Nulla varius enim ac"
text run at (0,216) width 20: "mi."
-layer at (8,520) size 760x520
+layer at (8,520) size 760x519
RenderBlock {DIV} at (0,503) size 760x521 [border: (5px solid #800000)]
RenderBlock (anonymous multi-column span) at (5,129) size 750x68
RenderBlock {H2} at (0,19) size 750x29 [bgcolor=#EEEEEE]
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-child-generated-content-expected.png
(Binary files differ)
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt (104347 => 104348)
--- branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt 2012-01-06 23:13:02 UTC (rev 104347)
+++ branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt 2012-01-06 23:16:52 UTC (rev 104348)
@@ -168,7 +168,7 @@
RenderBlock (generated) at (0,430) size 367x20 [bgcolor=#FFFF00]
RenderText at (0,0) size 156x18
text run at (0,0) width 156: "After Generated Content"
-layer at (8,1360) size 760x438
+layer at (8,1360) size 760x437
RenderBlock {DIV} at (0,1343) size 760x439 [border: (5px solid #800000)]
RenderBlock (anonymous multi-column span) at (5,131) size 750x68
RenderBlock {H2} at (0,19) size 750x29 [bgcolor=#EEEEEE]
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-child-property-removal-expected.png
(Binary files differ)
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.png
(Binary files differ)
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt (104347 => 104348)
--- branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt 2012-01-06 23:13:02 UTC (rev 104347)
+++ branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt 2012-01-06 23:16:52 UTC (rev 104348)
@@ -144,7 +144,7 @@
text run at (0,342) width 345: "Suspendisse hendrerit quam nec felis. Sed varius turpis"
text run at (0,360) width 331: "vitae pede. Lorem ipsum dolor sit amet, consectetuer"
text run at (0,378) width 91: "adipiscing elit."
-layer at (8,1266) size 760x418
+layer at (8,1266) size 760x417
RenderBlock {DIV} at (0,1249) size 760x419 [border: (5px solid #800000)]
RenderBlock (anonymous multi-column span) at (5,131) size 750x68
RenderBlock {H2} at (0,19) size 750x29 [bgcolor=#EEEEEE]
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-columns-child-expected.png
(Binary files differ)
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-columns-child-expected.txt (104347 => 104348)
--- branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-columns-child-expected.txt 2012-01-06 23:13:02 UTC (rev 104347)
+++ branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-immediate-columns-child-expected.txt 2012-01-06 23:16:52 UTC (rev 104348)
@@ -240,7 +240,7 @@
text run at (5,671) width 343: "condimentum vestibulum. Suspendisse hendrerit quam"
text run at (5,689) width 362: "nec felis. Sed varius turpis vitae pede. Lorem ipsum dolor"
text run at (5,707) width 229: "sit amet, consectetuer adipiscing elit."
-layer at (8,2003) size 760x444
+layer at (8,2003) size 760x443
RenderBlock {DIV} at (0,1986) size 760x445 [border: (5px solid #800000)]
RenderBlock (anonymous multi-column span) at (5,5) size 750x96
RenderBlock {H2} at (0,19) size 750x57 [bgcolor=#EEEEEE]
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.png
(Binary files differ)
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-as-nested-columns-child-expected.png
(Binary files differ)
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-margin-collapsing-expected.png
(Binary files differ)
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-margin-collapsing-expected.txt (104347 => 104348)
--- branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-margin-collapsing-expected.txt 2012-01-06 23:13:02 UTC (rev 104347)
+++ branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/span/span-margin-collapsing-expected.txt 2012-01-06 23:16:52 UTC (rev 104348)
@@ -1,18 +1,18 @@
-layer at (0,0) size 785x1845
+layer at (0,0) size 785x1853
RenderView at (0,0) size 785x600
-layer at (0,0) size 785x1845
- RenderBlock {HTML} at (0,0) size 785x1845
- RenderBody {BODY} at (8,16) size 769x1813
-layer at (8,16) size 750x400
- RenderBlock {DIV} at (0,0) size 750x400 [bgcolor=#EEEEEE]
- RenderBlock (anonymous multi-column span) at (0,0) size 750x94
- RenderBlock {H2} at (0,19) size 750x56 [bgcolor=#CCCCCC]
+layer at (0,0) size 785x1853
+ RenderBlock {HTML} at (0,0) size 785x1854
+ RenderBody {BODY} at (8,16) size 769x1822
+layer at (8,16) size 750x402
+ RenderBlock {DIV} at (0,0) size 750x402 [bgcolor=#EEEEEE]
+ RenderBlock (anonymous multi-column span) at (0,0) size 750x96
+ RenderBlock {H2} at (0,19) size 750x57 [bgcolor=#CCCCCC]
RenderText {#text} at (0,0) size 687x56
text run at (0,0) width 670: "This is a spanning element at the beginning of the columns block. "
text run at (670,0) width 17: "It"
text run at (0,28) width 527: "should collapse its margins with the top of the page."
-layer at (8,110) size 750x306
- RenderBlock (anonymous multi-column) at (0,94) size 750x306
+layer at (8,112) size 750x306
+ RenderBlock (anonymous multi-column) at (0,95) size 750x307
RenderText {#text} at (0,0) size 363x612
text run at (0,0) width 354: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
text run at (0,18) width 351: "Nulla varius enim ac mi. Curabitur sollicitudin felis quis"
@@ -50,15 +50,15 @@
text run at (0,558) width 354: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
text run at (0,576) width 354: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
text run at (0,594) width 154: "Nulla varius enim ac mi."
-layer at (8,432) size 750x400
- RenderBlock {DIV} at (0,416) size 750x400 [bgcolor=#EEEEEE]
- RenderBlock (anonymous multi-column span) at (0,306) size 750x94
- RenderBlock {H2} at (0,19) size 750x56 [bgcolor=#CCCCCC]
+layer at (8,434) size 750x402
+ RenderBlock {DIV} at (0,417) size 750x403 [bgcolor=#EEEEEE]
+ RenderBlock (anonymous multi-column span) at (0,306) size 750x96
+ RenderBlock {H2} at (0,19) size 750x57 [bgcolor=#CCCCCC]
RenderText {#text} at (0,0) size 696x56
text run at (0,0) width 606: "This is a spanning element at the end of the columns block. "
text run at (606,0) width 90: "It should"
text run at (0,28) width 504: "collapse its margins with the h2 in the next block."
-layer at (8,432) size 750x306
+layer at (8,434) size 750x306
RenderBlock (anonymous multi-column) at (0,0) size 750x306
RenderText {#text} at (0,0) size 363x612
text run at (0,0) width 354: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
@@ -97,16 +97,16 @@
text run at (0,558) width 354: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
text run at (0,576) width 354: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
text run at (0,594) width 154: "Nulla varius enim ac mi."
-layer at (8,848) size 750x400
- RenderBlock {DIV} at (0,832) size 750x400 [bgcolor=#EEEEEE]
- RenderBlock (anonymous multi-column span) at (0,0) size 750x94
- RenderBlock {H2} at (0,19) size 750x56 [bgcolor=#CCCCCC]
+layer at (8,852) size 750x402
+ RenderBlock {DIV} at (0,835) size 750x403 [bgcolor=#EEEEEE]
+ RenderBlock (anonymous multi-column span) at (0,0) size 750x96
+ RenderBlock {H2} at (0,19) size 750x57 [bgcolor=#CCCCCC]
RenderText {#text} at (0,0) size 687x56
text run at (0,0) width 670: "This is a spanning element at the beginning of the columns block. "
text run at (670,0) width 17: "It"
text run at (0,28) width 621: "should collapse its margins with the h2 in the previous block."
-layer at (8,942) size 750x306
- RenderBlock (anonymous multi-column) at (0,94) size 750x306
+layer at (8,948) size 750x306
+ RenderBlock (anonymous multi-column) at (0,95) size 750x307
RenderText {#text} at (0,0) size 363x612
text run at (0,0) width 354: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
text run at (0,18) width 351: "Nulla varius enim ac mi. Curabitur sollicitudin felis quis"
@@ -144,20 +144,20 @@
text run at (0,558) width 354: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
text run at (0,576) width 354: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
text run at (0,594) width 154: "Nulla varius enim ac mi."
-layer at (8,1264) size 750x565
- RenderBlock {DIV} at (0,1248) size 750x565 [bgcolor=#EEEEEE]
- RenderBlock (anonymous multi-column span) at (0,198) size 750x169
- RenderBlock {H2} at (0,19) size 750x56 [bgcolor=#CCCCCC]
+layer at (8,1270) size 750x567
+ RenderBlock {DIV} at (0,1253) size 750x569 [bgcolor=#EEEEEE]
+ RenderBlock (anonymous multi-column span) at (0,198) size 750x172
+ RenderBlock {H2} at (0,19) size 750x57 [bgcolor=#CCCCCC]
RenderText {#text} at (0,0) size 730x56
text run at (0,0) width 640: "This is a spanning element in the middle of the columns block. "
text run at (640,0) width 90: "It should"
text run at (0,28) width 569: "collapse its margins with the spanning element below it."
- RenderBlock {H2} at (0,94) size 750x56 [bgcolor=#CCCCCC]
+ RenderBlock {H2} at (0,95) size 750x57 [bgcolor=#CCCCCC]
RenderText {#text} at (0,0) size 730x56
text run at (0,0) width 640: "This is a spanning element in the middle of the columns block. "
text run at (640,0) width 90: "It should"
text run at (0,28) width 569: "collapse its margins with the spanning element above it."
-layer at (8,1264) size 750x198
+layer at (8,1270) size 750x198
RenderBlock (anonymous multi-column) at (0,0) size 750x198
RenderText {#text} at (0,0) size 363x396
text run at (0,0) width 354: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
@@ -183,8 +183,8 @@
text run at (0,342) width 345: "Suspendisse hendrerit quam nec felis. Sed varius turpis"
text run at (0,360) width 331: "vitae pede. Lorem ipsum dolor sit amet, consectetuer"
text run at (0,378) width 91: "adipiscing elit."
-layer at (8,1631) size 750x198
- RenderBlock (anonymous multi-column) at (0,367) size 750x198
+layer at (8,1639) size 750x198
+ RenderBlock (anonymous multi-column) at (0,369) size 750x199
RenderText {#text} at (0,0) size 363x396
text run at (0,0) width 354: "Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
text run at (0,18) width 351: "Nulla varius enim ac mi. Curabitur sollicitudin felis quis"
Modified: branches/subpixellayout/LayoutTests/platform/mac/fast/multicol/vertical-lr/nested-columns-expected.png
(Binary files differ)
Modified: branches/subpixellayout/Source/WebCore/rendering/RenderLayer.cpp (104347 => 104348)
--- branches/subpixellayout/Source/WebCore/rendering/RenderLayer.cpp 2012-01-06 23:13:02 UTC (rev 104347)
+++ branches/subpixellayout/Source/WebCore/rendering/RenderLayer.cpp 2012-01-06 23:16:52 UTC (rev 104348)
@@ -2220,6 +2220,20 @@
return m_scrollSize.height();
}
+int RenderLayer::pixelSnappedScrollWidth()
+{
+ RenderBox* box = renderBox();
+ ASSERT(box);
+ return snapSizeToPixel(m_scrollSize.width(), box->clientLeft());
+}
+
+int RenderLayer::pixelSnappedScrollHeight()
+{
+ RenderBox* box = renderBox();
+ ASSERT(box);
+ return snapSizeToPixel(m_scrollSize.height(), box->clientTop());
+}
+
LayoutUnit RenderLayer::overflowTop() const
{
RenderBox* box = renderBox();
@@ -2268,9 +2282,9 @@
setScrollOrigin(IntPoint(-m_scrollOverflow.width(), -m_scrollOverflow.height()));
if (needHBar)
- *needHBar = m_scrollSize.width() > box->clientWidth();
+ *needHBar = pixelSnappedScrollWidth() > box->pixelSnappedClientWidth();
if (needVBar)
- *needVBar = m_scrollSize.height() > box->clientHeight();
+ *needVBar = pixelSnappedScrollHeight() > box->pixelSnappedClientHeight();
}
void RenderLayer::updateOverflowStatus(bool horizontalOverflow, bool verticalOverflow)
Modified: branches/subpixellayout/Source/WebCore/rendering/RenderLayer.h (104347 => 104348)
--- branches/subpixellayout/Source/WebCore/rendering/RenderLayer.h 2012-01-06 23:13:02 UTC (rev 104347)
+++ branches/subpixellayout/Source/WebCore/rendering/RenderLayer.h 2012-01-06 23:16:52 UTC (rev 104348)
@@ -282,6 +282,8 @@
LayoutUnit scrollWidth();
LayoutUnit scrollHeight();
+ int pixelSnappedScrollWidth();
+ int pixelSnappedScrollHeight();
void panScrollFromPoint(const LayoutPoint&);
Modified: branches/subpixellayout/Source/WebCore/rendering/RenderTreeAsText.cpp (104347 => 104348)
--- branches/subpixellayout/Source/WebCore/rendering/RenderTreeAsText.cpp 2012-01-06 23:13:02 UTC (rev 104347)
+++ branches/subpixellayout/Source/WebCore/rendering/RenderTreeAsText.cpp 2012-01-06 23:16:52 UTC (rev 104348)
@@ -638,9 +638,9 @@
ts << " scrollX " << l.scrollXOffset();
if (l.scrollYOffset())
ts << " scrollY " << l.scrollYOffset();
- if (l.renderBox() && l.renderBox()->clientWidth() != l.scrollWidth())
+ if (l.renderBox() && l.renderBox()->pixelSnappedClientWidth() != l.pixelSnappedScrollWidth())
ts << " scrollWidth " << l.scrollWidth().toInt();
- if (l.renderBox() && l.renderBox()->clientHeight() != l.scrollHeight())
+ if (l.renderBox() && l.renderBox()->pixelSnappedClientHeight() != l.pixelSnappedScrollHeight())
ts << " scrollHeight " << l.scrollHeight().toInt();
}