[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.22-985-g3c00f00
eric at webkit.org
eric at webkit.org
Wed Mar 17 18:43:07 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit f9937c2dae70d2aa1addfbb21b0e84f0b6e10147
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Mar 16 04:41:27 2010 +0000
2010-03-15 Valters Svabe <vsvabe at gmail.com>
Reviewed by Darin Adler.
:after selector displays in wrong place with nested div
https://bugs.webkit.org/show_bug.cgi?id=32288
* fast/css-generated-content/block-after-expected.txt: Added.
* fast/css-generated-content/block-after.html: Added.
2010-03-15 Valters Svabe <vsvabe at gmail.com>
Reviewed by Darin Adler.
:after selector displays in wrong place with nested div
https://bugs.webkit.org/show_bug.cgi?id=32288
Make sure we don't append things after :after-generated content, if
it's inside an anonymous block.
Test: fast/css-generated-content/block-after.html
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::addChild):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@56033 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 2310130..e3657ac 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,13 @@
+2010-03-15 Valters Svabe <vsvabe at gmail.com>
+
+ Reviewed by Darin Adler.
+
+ :after selector displays in wrong place with nested div
+ https://bugs.webkit.org/show_bug.cgi?id=32288
+
+ * fast/css-generated-content/block-after-expected.txt: Added.
+ * fast/css-generated-content/block-after.html: Added.
+
2010-03-15 Chris Fleizach <cfleizach at apple.com>
Unreviewed.
diff --git a/LayoutTests/fast/css-generated-content/block-after-expected.txt b/LayoutTests/fast/css-generated-content/block-after-expected.txt
new file mode 100644
index 0000000..7cfe9e1
--- /dev/null
+++ b/LayoutTests/fast/css-generated-content/block-after-expected.txt
@@ -0,0 +1,5 @@
+Bug 32288 - :after selector displays in wrong place with nested div
+
+First.
+Second.
+PASS
diff --git a/LayoutTests/fast/css-generated-content/block-after.html b/LayoutTests/fast/css-generated-content/block-after.html
new file mode 100644
index 0000000..a016f1b
--- /dev/null
+++ b/LayoutTests/fast/css-generated-content/block-after.html
@@ -0,0 +1,40 @@
+<html>
+<head>
+ <style>
+ div {
+ margin: 0px;
+ padding: 0px;
+ border: none;
+ }
+ div.a:after {
+ content: 'This sentence should be after "First." and "Second."';
+ color: red;
+ }
+ </style>
+ <script>
+ if (window.layoutTestController)
+ layoutTestController.dumpAsText();
+
+ function test(){
+ var first = document.getElementById("first");
+ var second = document.getElementById("second");
+
+ //Test whether the first and second lines are laid out sequentially.
+ //If there is something between them then it must be the css generated
+ //content which means this bug is not fixed.
+ if(second.offsetTop != first.offsetTop + first.offsetHeight)
+ document.getElementById("result").innerHTML = "FAIL";
+ else
+ document.getElementById("result").innerHTML = "PASS";
+ }
+ </script>
+</head>
+<body onload="test()">
+ <p>Bug <a href="https://bugs.webkit.org/show_bug.cgi?id=32288">32288</a> - :after selector displays in wrong place with nested div</p>
+ <div class="a" id="container">
+ <div id="first">First.</div>
+ <div id="second">Second.</div>
+ </div>
+ <p id="result"></div>
+</body>
+</html>
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index d8ef2b9..dcb6484 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2010-03-15 Valters Svabe <vsvabe at gmail.com>
+
+ Reviewed by Darin Adler.
+
+ :after selector displays in wrong place with nested div
+ https://bugs.webkit.org/show_bug.cgi?id=32288
+
+ Make sure we don't append things after :after-generated content, if
+ it's inside an anonymous block.
+
+ Test: fast/css-generated-content/block-after.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::addChild):
+
2010-03-15 Leandro Pereira <leandro at profusion.mobi>
Reviewed by Eric Seidel.
diff --git a/WebCore/rendering/RenderBlock.cpp b/WebCore/rendering/RenderBlock.cpp
index e4a30a5..1551c49 100644
--- a/WebCore/rendering/RenderBlock.cpp
+++ b/WebCore/rendering/RenderBlock.cpp
@@ -261,8 +261,14 @@ void RenderBlock::updateBeforeAfterContent(PseudoId pseudoId)
void RenderBlock::addChild(RenderObject* newChild, RenderObject* beforeChild)
{
// Make sure we don't append things after :after-generated content if we have it.
- if (!beforeChild && isAfterContent(lastChild()))
- beforeChild = lastChild();
+ if (!beforeChild) {
+ RenderObject* lastRenderer = lastChild();
+
+ if (isAfterContent(lastRenderer))
+ beforeChild = lastRenderer;
+ else if (lastRenderer && lastRenderer->isAnonymousBlock() && isAfterContent(lastRenderer->lastChild()))
+ beforeChild = lastRenderer->lastChild();
+ }
bool madeBoxesNonInline = false;
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list