Title: [93985] branches/chromium/835

Diff

Copied: branches/chromium/835/LayoutTests/fast/forms/textarea-placeholder-relayout-assertion-expected.txt (from rev 93802, trunk/LayoutTests/fast/forms/textarea-placeholder-relayout-assertion-expected.txt) (0 => 93985)


--- branches/chromium/835/LayoutTests/fast/forms/textarea-placeholder-relayout-assertion-expected.txt	                        (rev 0)
+++ branches/chromium/835/LayoutTests/fast/forms/textarea-placeholder-relayout-assertion-expected.txt	2011-08-29 17:37:48 UTC (rev 93985)
@@ -0,0 +1,4 @@
+PASS if not crashed.
+
+>
+000000AA00A000A0A0A00A0000A0A00AAAAAA00AAAAAAA0A0AA00A00A000A0AA000AA0

Copied: branches/chromium/835/LayoutTests/fast/forms/textarea-placeholder-relayout-assertion.html (from rev 93802, trunk/LayoutTests/fast/forms/textarea-placeholder-relayout-assertion.html) (0 => 93985)


--- branches/chromium/835/LayoutTests/fast/forms/textarea-placeholder-relayout-assertion.html	                        (rev 0)
+++ branches/chromium/835/LayoutTests/fast/forms/textarea-placeholder-relayout-assertion.html	2011-08-29 17:37:48 UTC (rev 93985)
@@ -0,0 +1,19 @@
+<script>
+if (window.layoutTestController) {
+    layoutTestController.waitUntilDone();
+    layoutTestController.dumpAsText();
+}
+
+function removeTextArea() {
+    var child = document.getElementById('test');
+    child.parentNode.removeChild(child);
+    if (window.layoutTestController) {
+        setTimeout("layoutTestController.notifyDone();", 0);
+    }
+}
+
+setTimeout(removeTextArea, 0);
+</script>
+<p>PASS if not crashed.</p>
+><fieldset><fieldset><button><fieldset><fieldset><select>A00000AA0A000<textarea></textarea>
+<figure><fieldset>000000AA00A000A0A0A00A0000A0A00AAAAAA00AAAAAAA0A0AA00A00A000A0AA000AA0<textarea id="test" placeholder="default disabled">A0AA000AAA0AA00AAAA0<track><center></center>

Modified: branches/chromium/835/Source/WebCore/rendering/RenderTextControl.cpp (93984 => 93985)


--- branches/chromium/835/Source/WebCore/rendering/RenderTextControl.cpp	2011-08-29 17:31:52 UTC (rev 93984)
+++ branches/chromium/835/Source/WebCore/rendering/RenderTextControl.cpp	2011-08-29 17:37:48 UTC (rev 93985)
@@ -430,8 +430,12 @@
     RenderObject* placeholderRenderer = placeholder ? placeholder->renderer() : 0;
     if (!placeholderRenderer)
         return 0;
-    if (relayoutChildren)
-        placeholderRenderer->setNeedsLayout(true);
+    if (relayoutChildren) {
+        // The markParents arguments should be false because this function is
+        // called from layout() of the parent and the placeholder layout doesn't
+        // affect the parent layout.
+        placeholderRenderer->setChildNeedsLayout(true, false);
+    }
     return placeholderRenderer;
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to