Title: [280482] trunk
Revision
280482
Author
[email protected]
Date
2021-07-30 10:46:30 -0700 (Fri, 30 Jul 2021)

Log Message

HTMLElement.innerText setter should convert new lines to <br>
https://bugs.webkit.org/show_bug.cgi?id=228605

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

Rebaselined WPT tests that are now passing. Note that those were failing in WebKit but passing in Firefox
and Chrome.

* web-platform-tests/html/dom/elements/the-innertext-and-outertext-properties/innertext-setter-expected.txt:
* web-platform-tests/html/dom/elements/the-innertext-idl-attribute/setter-expected.txt:
* web-platform-tests/innerText/setter-expected.txt:

Source/WebCore:

HTMLElement.innerText setter should convert new lines to <br>:
- https://html.spec.whatwg.org/multipage/dom.html#the-innertext-idl-attribute:dom-innertext-3
- https://html.spec.whatwg.org/multipage/dom.html#rendered-text-fragment

Our innerText setter had some logic that was specific to form elements and specific render
styles that wasn't part of the specification. It was causing us to not replace the new lines
with <br> in some cases. I dropped this logic to align with Blink and Gecko, as those are
passing the same WPT tests.

No new tests, rebaselined existing tests.

* html/HTMLElement.cpp:
(WebCore::HTMLElement::setInnerText):

LayoutTests:

Rebaseline a few tests that changed output.

* editing/pasteboard/smart-paste-paragraph-003-expected.txt:
* platform/mac/editing/input/reveal-caret-of-multiline-input-expected.txt:
* platform/mac/fast/forms/basic-textareas-quirks-expected.txt:
* platform/mac/fast/forms/textarea-scroll-height-expected.txt:
* platform/mac/fast/forms/textarea-scrollbar-expected.txt:
* platform/mac/fast/forms/textarea-scrolled-type-expected.txt:
* platform/mac/fast/forms/textarea-width-expected.txt:
* platform/mac/fast/parser/open-comment-in-textarea-expected.txt:
* platform/mac/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt:
* platform/mac/http/tests/navigation/_javascript_link-frames-expected.txt:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (280481 => 280482)


--- trunk/LayoutTests/ChangeLog	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/ChangeLog	2021-07-30 17:46:30 UTC (rev 280482)
@@ -1,3 +1,23 @@
+2021-07-30  Chris Dumez  <[email protected]>
+
+        HTMLElement.innerText setter should convert new lines to <br>
+        https://bugs.webkit.org/show_bug.cgi?id=228605
+
+        Reviewed by Sam Weinig.
+
+        Rebaseline a few tests that changed output.
+
+        * editing/pasteboard/smart-paste-paragraph-003-expected.txt:
+        * platform/mac/editing/input/reveal-caret-of-multiline-input-expected.txt:
+        * platform/mac/fast/forms/basic-textareas-quirks-expected.txt:
+        * platform/mac/fast/forms/textarea-scroll-height-expected.txt:
+        * platform/mac/fast/forms/textarea-scrollbar-expected.txt:
+        * platform/mac/fast/forms/textarea-scrolled-type-expected.txt:
+        * platform/mac/fast/forms/textarea-width-expected.txt:
+        * platform/mac/fast/parser/open-comment-in-textarea-expected.txt:
+        * platform/mac/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt:
+        * platform/mac/http/tests/navigation/_javascript_link-frames-expected.txt:
+
 2021-07-30  Sihui Liu  <[email protected]>
 
         Layout Test imported/w3c/web-platform-tests/IndexedDB/fire-error-event-exception.html is a Flaky Failure

Modified: trunk/LayoutTests/accessibility/mac/pseudo-element-text-markers-expected.txt (280481 => 280482)


--- trunk/LayoutTests/accessibility/mac/pseudo-element-text-markers-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/accessibility/mac/pseudo-element-text-markers-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -27,17 +27,16 @@
 AXRole: AXStaticText AXValue: ".
 AXRole: AXGroup AXValue:
 AXRole: AXStaticText AXValue: AXRole: AXScrollArea AXValue:
-AXRole: AXWebArea AXValue:
-AXRole: AXGroup AXValue:
-AXRole: AXStaticText AXValue: Hello
-AXRole: AXGroup AXValue:
-AXRole: AXStaticText AXValue: This tests that the pseudo element style:body:before is accessible via the accessibility tree but not via TextMarkers.
-AXRole: AXGroup AXValue:
-AXRole: AXStaticText AXValue: On success, you will see a series of "
-AXRole: AXStaticText AXValue: PASS
-AXRole: AXStaticText AXValue: " messages, followed by "
-AXRole: AXStaticText AXValue: TEST COMPLETE
-AXRole: AXStaticText AXValue: ".
-AXRole: AXGroup AXValue:
+AXRole: AXStaticText AXValue: AXRole: AXWebArea AXValue:
+AXRole: AXStaticText AXValue: AXRole: AXGroup AXValue:
+AXRole: AXStaticText AXValue: AXRole: AXStaticText AXValue: Hello
+AXRole: AXStaticText AXValue: AXRole: AXGroup AXValue:
+AXRole: AXStaticText AXValue: AXRole: AXStaticText AXValue: This tests that the pseudo element style:body:before is accessible via the accessibility tree but not via TextMarkers.
+AXRole: AXStaticText AXValue: AXRole: AXGroup AXValue:
+AXRole: AXStaticText AXValue: AXRole: AXStaticText AXValue: On success, you will see a series of "
+AXRole: AXStaticText AXValue: AXRole: AXStaticText AXValue: PASS
+AXRole: AXStaticText AXValue: AXRole: AXStaticText AXValue: " messages, followed by "
+AXRole: AXStaticText AXValue: AXRole: AXStaticText AXValue: TEST COMPLETE
+AXRole: AXStaticText AXValue: AXRole: AXStaticText AXValue: ".
+AXRole: AXStaticText AXValue: AXRole: AXGroup AXValue:
 
-

Modified: trunk/LayoutTests/editing/pasteboard/smart-paste-paragraph-003-expected.txt (280481 => 280482)


--- trunk/LayoutTests/editing/pasteboard/smart-paste-paragraph-003-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/editing/pasteboard/smart-paste-paragraph-003-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -6,10 +6,8 @@
 EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
 EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
 EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
-EDITING DELEGATE: shouldInsertText:Test paragraph. replacingDOMRange:range from 16 of #text > DIV > #document-fragment to 16 of #text > DIV > #document-fragment givenAction:WebViewInsertActionPasted
+EDITING DELEGATE: shouldInsertText:Test paragraph. replacingDOMRange:range from 2 of DIV > #document-fragment to 2 of DIV > #document-fragment givenAction:WebViewInsertActionPasted
 EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
-EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 32 of #text > DIV > #document-fragment to 32 of #text > DIV > #document-fragment toDOMRange:range from 1 of #text > DIV > #document-fragment to 1 of #text > DIV > #document-fragment affinity:NSSelectionAffinityDownstream stillSelecting:FALSE
-EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
 EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification
 Tests:
 Smart paste when pasting a paragraph between two paragraphs in an input element.

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (280481 => 280482)


--- trunk/LayoutTests/imported/w3c/ChangeLog	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2021-07-30 17:46:30 UTC (rev 280482)
@@ -1,5 +1,19 @@
 2021-07-30  Chris Dumez  <[email protected]>
 
+        HTMLElement.innerText setter should convert new lines to <br>
+        https://bugs.webkit.org/show_bug.cgi?id=228605
+
+        Reviewed by Sam Weinig.
+
+        Rebaselined WPT tests that are now passing. Note that those were failing in WebKit but passing in Firefox
+        and Chrome.
+
+        * web-platform-tests/html/dom/elements/the-innertext-and-outertext-properties/innertext-setter-expected.txt:
+        * web-platform-tests/html/dom/elements/the-innertext-idl-attribute/setter-expected.txt:
+        * web-platform-tests/innerText/setter-expected.txt:
+
+2021-07-30  Chris Dumez  <[email protected]>
+
         Clicking an HTMLLinkElement should not trigger a navigation
         https://bugs.webkit.org/show_bug.cgi?id=228618
 

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/elements/the-innertext-and-outertext-properties/innertext-setter-expected.txt (280481 => 280482)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/elements/the-innertext-and-outertext-properties/innertext-setter-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/elements/the-innertext-and-outertext-properties/innertext-setter-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -3,15 +3,15 @@
 PASS Simplest possible test, detached
 PASS Newlines convert to <br> in non-white-space:pre elements
 PASS Newlines convert to <br> in non-white-space:pre elements, detached
-FAIL Newlines convert to <br> in <pre> element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS Newlines convert to <br> in <pre> element
 PASS Newlines convert to <br> in <pre> element, detached
-FAIL Newlines convert to <br> in <textarea> element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS Newlines convert to <br> in <textarea> element
 PASS Newlines convert to <br> in <textarea> element, detached
-FAIL Newlines convert to <br> in white-space:pre element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS Newlines convert to <br> in white-space:pre element
 PASS Newlines convert to <br> in white-space:pre element, detached
 PASS CRs convert to <br> in non-white-space:pre elements
 PASS CRs convert to <br> in non-white-space:pre elements, detached
-FAIL CRs convert to <br> in <pre> element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS CRs convert to <br> in <pre> element
 PASS CRs convert to <br> in <pre> element, detached
 PASS Newline/CR pair converts to <br> in non-white-space:pre element
 PASS Newline/CR pair converts to <br> in non-white-space:pre element, detached
@@ -19,7 +19,7 @@
 PASS Newline/newline pair converts to two <br>s in non-white-space:pre element, detached
 PASS CR/CR pair converts to two <br>s in non-white-space:pre element
 PASS CR/CR pair converts to two <br>s in non-white-space:pre element, detached
-FAIL CRs convert to <br> in white-space:pre element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS CRs convert to <br> in white-space:pre element
 PASS CRs convert to <br> in white-space:pre element, detached
 PASS < preserved
 PASS < preserved, detached

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/elements/the-innertext-idl-attribute/setter-expected.txt (280481 => 280482)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/elements/the-innertext-idl-attribute/setter-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/html/dom/elements/the-innertext-idl-attribute/setter-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -3,15 +3,15 @@
 PASS Simplest possible test, detached
 PASS Newlines convert to <br> in non-white-space:pre elements
 PASS Newlines convert to <br> in non-white-space:pre elements, detached
-FAIL Newlines convert to <br> in <pre> element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS Newlines convert to <br> in <pre> element
 PASS Newlines convert to <br> in <pre> element, detached
-FAIL Newlines convert to <br> in <textarea> element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS Newlines convert to <br> in <textarea> element
 PASS Newlines convert to <br> in <textarea> element, detached
-FAIL Newlines convert to <br> in white-space:pre element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS Newlines convert to <br> in white-space:pre element
 PASS Newlines convert to <br> in white-space:pre element, detached
 PASS CRs convert to <br> in non-white-space:pre elements
 PASS CRs convert to <br> in non-white-space:pre elements, detached
-FAIL CRs convert to <br> in <pre> element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS CRs convert to <br> in <pre> element
 PASS CRs convert to <br> in <pre> element, detached
 PASS Newline/CR pair converts to <br> in non-white-space:pre element
 PASS Newline/CR pair converts to <br> in non-white-space:pre element, detached
@@ -19,7 +19,7 @@
 PASS Newline/newline pair converts to two <br>s in non-white-space:pre element, detached
 PASS CR/CR pair converts to two <br>s in non-white-space:pre element
 PASS CR/CR pair converts to two <br>s in non-white-space:pre element, detached
-FAIL CRs convert to <br> in white-space:pre element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS CRs convert to <br> in white-space:pre element
 PASS CRs convert to <br> in white-space:pre element, detached
 PASS < preserved
 PASS < preserved, detached

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/innerText/setter-expected.txt (280481 => 280482)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/innerText/setter-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/innerText/setter-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -3,15 +3,15 @@
 PASS Simplest possible test, detached
 PASS Newlines convert to <br> in non-white-space:pre elements
 PASS Newlines convert to <br> in non-white-space:pre elements, detached
-FAIL Newlines convert to <br> in <pre> element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS Newlines convert to <br> in <pre> element
 PASS Newlines convert to <br> in <pre> element, detached
-FAIL Newlines convert to <br> in <textarea> element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS Newlines convert to <br> in <textarea> element
 PASS Newlines convert to <br> in <textarea> element, detached
-FAIL Newlines convert to <br> in white-space:pre element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS Newlines convert to <br> in white-space:pre element
 PASS Newlines convert to <br> in white-space:pre element, detached
 PASS CRs convert to <br> in non-white-space:pre elements
 PASS CRs convert to <br> in non-white-space:pre elements, detached
-FAIL CRs convert to <br> in <pre> element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS CRs convert to <br> in <pre> element
 PASS CRs convert to <br> in <pre> element, detached
 PASS Newline/CR pair converts to <br> in non-white-space:pre element
 PASS Newline/CR pair converts to <br> in non-white-space:pre element, detached
@@ -19,7 +19,7 @@
 PASS Newline/newline pair converts to two <br>s in non-white-space:pre element, detached
 PASS CR/CR pair converts to two <br>s in non-white-space:pre element
 PASS CR/CR pair converts to two <br>s in non-white-space:pre element, detached
-FAIL CRs convert to <br> in white-space:pre element assert_equals: expected "abc<br>def" but got "abc\ndef"
+PASS CRs convert to <br> in white-space:pre element
 PASS CRs convert to <br> in white-space:pre element, detached
 PASS < preserved
 PASS < preserved, detached

Modified: trunk/LayoutTests/platform/ios/fast/forms/textarea-scrollbar-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/ios/fast/forms/textarea-scrollbar-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/ios/fast/forms/textarea-scrollbar-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -10,15 +10,18 @@
 layer at (10,30) size 168x90 clip at (11,31) size 151x88 scrollHeight 130
   RenderTextControl {TEXTAREA} at (2,22) size 168x90 [bgcolor=#FFFFFF] [border: (1px solid #3C3C4399)]
     RenderBlock {DIV} at (6,3) size 141x126
-      RenderText {#text} at (0,0) size 8x56
+      RenderText {#text} at (0,0) size 6x14
         text run at (0,0) width 6: "1"
-        text run at (5,0) width 1: " "
+      RenderBR {BR} at (5,0) size 1x14
+      RenderText {#text} at (0,14) size 7x14
         text run at (0,14) width 7: "2"
-        text run at (6,14) width 1: " "
+      RenderBR {BR} at (6,14) size 1x14
+      RenderText {#text} at (0,28) size 7x14
         text run at (0,28) width 7: "3"
-        text run at (6,28) width 1: " "
+      RenderBR {BR} at (6,28) size 1x14
+      RenderText {#text} at (0,42) size 8x14
         text run at (0,42) width 8: "4"
-        text run at (7,42) width 1: " "
+      RenderBR {BR} at (7,42) size 1x14
       RenderText {#text} at (0,56) size 7x14
         text run at (0,56) width 7: "5"
       RenderText {#text} at (6,56) size 1x14
@@ -37,4 +40,4 @@
         text run at (7,98) width 1: " "
       RenderText {#text} at (0,112) size 0x14
         text run at (0,112) width 0: " "
-caret: position 0 of child 9 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body
+caret: position 0 of child 16 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body

Modified: trunk/LayoutTests/platform/ios/fast/forms/textarea-scrolled-type-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/ios/fast/forms/textarea-scrolled-type-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/ios/fast/forms/textarea-scrolled-type-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -14,46 +14,65 @@
 layer at (10,30) size 168x104 clip at (11,31) size 151x102 scrollY 196 scrollHeight 298
   RenderTextControl {TEXTAREA} at (2,22) size 168x104 [bgcolor=#FFFFFF] [border: (1px solid #3C3C4399)]
     RenderBlock {DIV} at (6,3) size 141x294
-      RenderText {#text} at (0,0) size 40x280
+      RenderText {#text} at (0,0) size 6x14
         text run at (0,0) width 6: "1"
-        text run at (5,0) width 1: " "
+      RenderBR {BR} at (5,0) size 1x14
+      RenderText {#text} at (0,14) size 7x14
         text run at (0,14) width 7: "2"
-        text run at (6,14) width 1: " "
+      RenderBR {BR} at (6,14) size 1x14
+      RenderText {#text} at (0,28) size 7x14
         text run at (0,28) width 7: "3"
-        text run at (6,28) width 1: " "
+      RenderBR {BR} at (6,28) size 1x14
+      RenderText {#text} at (0,42) size 8x14
         text run at (0,42) width 8: "4"
-        text run at (7,42) width 1: " "
+      RenderBR {BR} at (7,42) size 1x14
+      RenderText {#text} at (0,56) size 7x14
         text run at (0,56) width 7: "5"
-        text run at (6,56) width 1: " "
+      RenderBR {BR} at (6,56) size 1x14
+      RenderText {#text} at (0,70) size 8x14
         text run at (0,70) width 8: "6"
-        text run at (7,70) width 1: " "
+      RenderBR {BR} at (7,70) size 1x14
+      RenderText {#text} at (0,84) size 7x14
         text run at (0,84) width 7: "7"
-        text run at (6,84) width 1: " "
+      RenderBR {BR} at (6,84) size 1x14
+      RenderText {#text} at (0,98) size 8x14
         text run at (0,98) width 8: "8"
-        text run at (7,98) width 1: " "
+      RenderBR {BR} at (7,98) size 1x14
+      RenderText {#text} at (0,112) size 8x14
         text run at (0,112) width 8: "9"
-        text run at (7,112) width 1: " "
+      RenderBR {BR} at (7,112) size 1x14
+      RenderText {#text} at (0,126) size 13x14
         text run at (0,126) width 13: "10"
-        text run at (12,126) width 1: " "
+      RenderBR {BR} at (12,126) size 1x14
+      RenderText {#text} at (0,140) size 11x14
         text run at (0,140) width 11: "11"
-        text run at (10,140) width 1: " "
+      RenderBR {BR} at (10,140) size 1x14
+      RenderText {#text} at (0,154) size 12x14
         text run at (0,154) width 12: "12"
-        text run at (11,154) width 1: " "
+      RenderBR {BR} at (11,154) size 1x14
+      RenderText {#text} at (0,168) size 13x14
         text run at (0,168) width 13: "13"
-        text run at (12,168) width 1: " "
+      RenderBR {BR} at (12,168) size 1x14
+      RenderText {#text} at (0,182) size 13x14
         text run at (0,182) width 13: "14"
-        text run at (12,182) width 1: " "
+      RenderBR {BR} at (12,182) size 1x14
+      RenderText {#text} at (0,196) size 13x14
         text run at (0,196) width 13: "15"
-        text run at (12,196) width 1: " "
+      RenderBR {BR} at (12,196) size 1x14
+      RenderText {#text} at (0,210) size 13x14
         text run at (0,210) width 13: "16"
-        text run at (12,210) width 1: " "
+      RenderBR {BR} at (12,210) size 1x14
+      RenderText {#text} at (0,224) size 12x14
         text run at (0,224) width 12: "17"
-        text run at (11,224) width 1: " "
+      RenderBR {BR} at (11,224) size 1x14
+      RenderText {#text} at (0,238) size 40x14
         text run at (0,238) width 40: "18 Pass"
-        text run at (39,238) width 1: " "
+      RenderBR {BR} at (39,238) size 1x14
+      RenderText {#text} at (0,252) size 13x14
         text run at (0,252) width 13: "19"
-        text run at (12,252) width 1: " "
+      RenderBR {BR} at (12,252) size 1x14
+      RenderText {#text} at (0,266) size 14x14
         text run at (0,266) width 14: "20"
-        text run at (13,266) width 1: " "
+      RenderBR {BR} at (13,266) size 1x14
       RenderBR {BR} at (0,280) size 0x14
-caret: position 49 of child 0 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body
+caret: position 7 of child 34 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body

Modified: trunk/LayoutTests/platform/ios/fast/forms/textarea-width-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/ios/fast/forms/textarea-width-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/ios/fast/forms/textarea-width-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -16,5 +16,5 @@
       RenderText {#text} at (0,0) size 454x28
         text run at (0,0) width 454: "1234567890abcdefghijABCDEFGHIJ1234567890abcdefghijABCDEFGHIJ12345X7890abcde"
         text run at (0,14) width 267: "fghijABCDEFGXIJ1234567890abcdefghijABCDEFGHIJ"
-        text run at (266,14) width 1: " "
+      RenderBR {BR} at (266,14) size 1x14
       RenderBR {BR} at (0,28) size 0x14

Modified: trunk/LayoutTests/platform/ios-wk2/editing/input/reveal-caret-of-multiline-input-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/ios-wk2/editing/input/reveal-caret-of-multiline-input-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/ios-wk2/editing/input/reveal-caret-of-multiline-input-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -12,68 +12,98 @@
 layer at (10,30) size 98x146 clip at (11,31) size 81x144 scrollHeight 452
   RenderTextControl {TEXTAREA} at (2,2) size 98x146 [bgcolor=#FFFFFF] [border: (1px solid #3C3C4399)]
     RenderBlock {DIV} at (6,3) size 71x448
-      RenderText {#text} at (0,0) size 15x434
+      RenderText {#text} at (0,0) size 14x14
         text run at (0,0) width 14: "00"
-        text run at (13,0) width 1: " "
+      RenderBR {BR} at (13,0) size 1x14
+      RenderText {#text} at (0,14) size 13x14
         text run at (0,14) width 13: "01"
-        text run at (12,14) width 1: " "
+      RenderBR {BR} at (12,14) size 1x14
+      RenderText {#text} at (0,28) size 14x14
         text run at (0,28) width 14: "02"
-        text run at (13,28) width 1: " "
+      RenderBR {BR} at (13,28) size 1x14
+      RenderText {#text} at (0,42) size 14x14
         text run at (0,42) width 14: "03"
-        text run at (13,42) width 1: " "
+      RenderBR {BR} at (13,42) size 1x14
+      RenderText {#text} at (0,56) size 15x14
         text run at (0,56) width 15: "04"
-        text run at (14,56) width 1: " "
+      RenderBR {BR} at (14,56) size 1x14
+      RenderText {#text} at (0,70) size 14x14
         text run at (0,70) width 14: "05"
-        text run at (13,70) width 1: " "
+      RenderBR {BR} at (13,70) size 1x14
+      RenderText {#text} at (0,84) size 15x14
         text run at (0,84) width 15: "06"
-        text run at (14,84) width 1: " "
+      RenderBR {BR} at (14,84) size 1x14
+      RenderText {#text} at (0,98) size 14x14
         text run at (0,98) width 14: "07"
-        text run at (13,98) width 1: " "
+      RenderBR {BR} at (13,98) size 1x14
+      RenderText {#text} at (0,112) size 15x14
         text run at (0,112) width 15: "08"
-        text run at (14,112) width 1: " "
+      RenderBR {BR} at (14,112) size 1x14
+      RenderText {#text} at (0,126) size 15x14
         text run at (0,126) width 15: "09"
-        text run at (14,126) width 1: " "
+      RenderBR {BR} at (14,126) size 1x14
+      RenderText {#text} at (0,140) size 13x14
         text run at (0,140) width 13: "10"
-        text run at (12,140) width 1: " "
+      RenderBR {BR} at (12,140) size 1x14
+      RenderText {#text} at (0,154) size 11x14
         text run at (0,154) width 11: "11"
-        text run at (10,154) width 1: " "
+      RenderBR {BR} at (10,154) size 1x14
+      RenderText {#text} at (0,168) size 12x14
         text run at (0,168) width 12: "12"
-        text run at (11,168) width 1: " "
+      RenderBR {BR} at (11,168) size 1x14
+      RenderText {#text} at (0,182) size 13x14
         text run at (0,182) width 13: "13"
-        text run at (12,182) width 1: " "
+      RenderBR {BR} at (12,182) size 1x14
+      RenderText {#text} at (0,196) size 13x14
         text run at (0,196) width 13: "14"
-        text run at (12,196) width 1: " "
+      RenderBR {BR} at (12,196) size 1x14
+      RenderText {#text} at (0,210) size 13x14
         text run at (0,210) width 13: "15"
-        text run at (12,210) width 1: " "
+      RenderBR {BR} at (12,210) size 1x14
+      RenderText {#text} at (0,224) size 13x14
         text run at (0,224) width 13: "16"
-        text run at (12,224) width 1: " "
+      RenderBR {BR} at (12,224) size 1x14
+      RenderText {#text} at (0,238) size 12x14
         text run at (0,238) width 12: "17"
-        text run at (11,238) width 1: " "
+      RenderBR {BR} at (11,238) size 1x14
+      RenderText {#text} at (0,252) size 13x14
         text run at (0,252) width 13: "18"
-        text run at (12,252) width 1: " "
+      RenderBR {BR} at (12,252) size 1x14
+      RenderText {#text} at (0,266) size 13x14
         text run at (0,266) width 13: "19"
-        text run at (12,266) width 1: " "
+      RenderBR {BR} at (12,266) size 1x14
+      RenderText {#text} at (0,280) size 14x14
         text run at (0,280) width 14: "20"
-        text run at (13,280) width 1: " "
+      RenderBR {BR} at (13,280) size 1x14
+      RenderText {#text} at (0,294) size 12x14
         text run at (0,294) width 12: "21"
-        text run at (11,294) width 1: " "
+      RenderBR {BR} at (11,294) size 1x14
+      RenderText {#text} at (0,308) size 14x14
         text run at (0,308) width 14: "22"
-        text run at (13,308) width 1: " "
+      RenderBR {BR} at (13,308) size 1x14
+      RenderText {#text} at (0,322) size 14x14
         text run at (0,322) width 14: "23"
-        text run at (13,322) width 1: " "
+      RenderBR {BR} at (13,322) size 1x14
+      RenderText {#text} at (0,336) size 14x14
         text run at (0,336) width 14: "24"
-        text run at (13,336) width 1: " "
+      RenderBR {BR} at (13,336) size 1x14
+      RenderText {#text} at (0,350) size 14x14
         text run at (0,350) width 14: "25"
-        text run at (13,350) width 1: " "
+      RenderBR {BR} at (13,350) size 1x14
+      RenderText {#text} at (0,364) size 14x14
         text run at (0,364) width 14: "26"
-        text run at (13,364) width 1: " "
+      RenderBR {BR} at (13,364) size 1x14
+      RenderText {#text} at (0,378) size 14x14
         text run at (0,378) width 14: "27"
-        text run at (13,378) width 1: " "
+      RenderBR {BR} at (13,378) size 1x14
+      RenderText {#text} at (0,392) size 14x14
         text run at (0,392) width 14: "28"
-        text run at (13,392) width 1: " "
+      RenderBR {BR} at (13,392) size 1x14
+      RenderText {#text} at (0,406) size 14x14
         text run at (0,406) width 14: "29"
-        text run at (13,406) width 1: " "
+      RenderBR {BR} at (13,406) size 1x14
+      RenderText {#text} at (0,420) size 14x14
         text run at (0,420) width 14: "30"
-        text run at (13,420) width 1: " "
+      RenderBR {BR} at (13,420) size 1x14
       RenderBR {BR} at (0,434) size 0x14
-caret: position 36 of child 0 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body
+caret: position 0 of child 24 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body

Modified: trunk/LayoutTests/platform/ios-wk2/fast/forms/textarea-scroll-height-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/ios-wk2/fast/forms/textarea-scroll-height-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/ios-wk2/fast/forms/textarea-scroll-height-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -10,44 +10,59 @@
 layer at (8,8) size 200x200 clip at (9,9) size 183x198 scrollHeight 340
   RenderTextControl {TEXTAREA} at (0,0) size 200x200 [bgcolor=#FFFFFF] [border: (1px solid #3C3C4399)]
     RenderBlock {DIV} at (6,3) size 173x336
-      RenderText {#text} at (0,0) size 83x322
+      RenderText {#text} at (0,0) size 83x14
         text run at (0,0) width 83: "Lots of content."
-        text run at (82,0) width 1: " "
+      RenderBR {BR} at (82,0) size 1x14
+      RenderText {#text} at (0,14) size 83x14
         text run at (0,14) width 83: "Lots of content."
-        text run at (82,14) width 1: " "
+      RenderBR {BR} at (82,14) size 1x14
+      RenderText {#text} at (0,28) size 83x14
         text run at (0,28) width 83: "Lots of content."
-        text run at (82,28) width 1: " "
+      RenderBR {BR} at (82,28) size 1x14
+      RenderText {#text} at (0,42) size 83x14
         text run at (0,42) width 83: "Lots of content."
-        text run at (82,42) width 1: " "
-        text run at (0,56) width 0: " "
+      RenderBR {BR} at (82,42) size 1x14
+      RenderBR {BR} at (0,56) size 0x14
+      RenderText {#text} at (0,70) size 83x14
         text run at (0,70) width 83: "Lots of content."
-        text run at (82,70) width 1: " "
+      RenderBR {BR} at (82,70) size 1x14
+      RenderText {#text} at (0,84) size 83x14
         text run at (0,84) width 83: "Lots of content."
-        text run at (82,84) width 1: " "
-        text run at (0,98) width 0: " "
+      RenderBR {BR} at (82,84) size 1x14
+      RenderBR {BR} at (0,98) size 0x14
+      RenderText {#text} at (0,112) size 83x14
         text run at (0,112) width 83: "Lots of content."
-        text run at (82,112) width 1: " "
+      RenderBR {BR} at (82,112) size 1x14
+      RenderText {#text} at (0,126) size 83x14
         text run at (0,126) width 83: "Lots of content."
-        text run at (82,126) width 1: " "
-        text run at (0,140) width 0: " "
+      RenderBR {BR} at (82,126) size 1x14
+      RenderBR {BR} at (0,140) size 0x14
+      RenderText {#text} at (0,154) size 83x14
         text run at (0,154) width 83: "Lots of content."
-        text run at (82,154) width 1: " "
+      RenderBR {BR} at (82,154) size 1x14
+      RenderText {#text} at (0,168) size 83x14
         text run at (0,168) width 83: "Lots of content."
-        text run at (82,168) width 1: " "
-        text run at (0,182) width 0: " "
+      RenderBR {BR} at (82,168) size 1x14
+      RenderBR {BR} at (0,182) size 0x14
+      RenderText {#text} at (0,196) size 83x14
         text run at (0,196) width 83: "Lots of content."
-        text run at (82,196) width 1: " "
+      RenderBR {BR} at (82,196) size 1x14
+      RenderText {#text} at (0,210) size 83x14
         text run at (0,210) width 83: "Lots of content."
-        text run at (82,210) width 1: " "
-        text run at (0,224) width 0: " "
+      RenderBR {BR} at (82,210) size 1x14
+      RenderBR {BR} at (0,224) size 0x14
+      RenderText {#text} at (0,238) size 83x14
         text run at (0,238) width 83: "Lots of content."
-        text run at (82,238) width 1: " "
+      RenderBR {BR} at (82,238) size 1x14
+      RenderText {#text} at (0,252) size 83x14
         text run at (0,252) width 83: "Lots of content."
-        text run at (82,252) width 1: " "
-        text run at (0,266) width 0: " "
+      RenderBR {BR} at (82,252) size 1x14
+      RenderBR {BR} at (0,266) size 0x14
+      RenderText {#text} at (0,280) size 83x14
         text run at (0,280) width 83: "Lots of content."
-        text run at (82,280) width 1: " "
+      RenderBR {BR} at (82,280) size 1x14
+      RenderText {#text} at (0,294) size 83x14
         text run at (0,294) width 83: "Lots of content."
-        text run at (82,294) width 1: " "
-        text run at (0,308) width 0: " "
+      RenderBR {BR} at (82,294) size 1x14
+      RenderBR {BR} at (0,308) size 0x14
       RenderBR {BR} at (0,322) size 0x14

Modified: trunk/LayoutTests/platform/ios-wk2/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/ios-wk2/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/ios-wk2/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -16,36 +16,40 @@
 layer at (10,50) size 378x62 clip at (11,51) size 376x60
   RenderTextControl {TEXTAREA} at (2,2) size 378x62 [bgcolor=#FFFFFF] [border: (1px solid #3C3C4399)]
     RenderBlock {DIV} at (6,3) size 366x43
-      RenderText {#text} at (339,0) size 365x29
-        text run at (339,0) width 1 RTL: " "
+      RenderText {#text} at (339,0) size 26x14
         text run at (339,0) width 26 RTL: "\x{5E9}\x{5DC}\x{5D5}\x{5DD}!"
+      RenderBR {BR} at (339,0) size 1x14
+      RenderText {#text} at (0,15) size 29x14
         text run at (0,15) width 29: "hello!"
-        text run at (28,15) width 1: " "
+      RenderBR {BR} at (28,15) size 1x14
       RenderBR {BR} at (365,29) size 0x14
 layer at (10,121) size 378x62 clip at (11,122) size 376x60
   RenderTextControl {TEXTAREA} at (2,73) size 378x62 [bgcolor=#FFFFFF] [border: (1px solid #3C3C4399)]
     RenderBlock {DIV} at (6,3) size 366x43
-      RenderText {#text} at (339,0) size 365x29
-        text run at (339,0) width 1 RTL: " "
+      RenderText {#text} at (339,0) size 26x14
         text run at (339,0) width 26 RTL: "\x{5E9}\x{5DC}\x{5D5}\x{5DD}!"
+      RenderBR {BR} at (339,0) size 1x14
+      RenderText {#text} at (0,15) size 29x14
         text run at (0,15) width 29: "hello!"
-        text run at (28,15) width 1: " "
+      RenderBR {BR} at (28,15) size 1x14
       RenderBR {BR} at (0,29) size 0x14
 layer at (10,192) size 378x62 clip at (11,193) size 376x60
   RenderTextControl {TEXTAREA} at (2,144) size 378x62 [bgcolor=#FFFFFF] [border: (1px solid #3C3C4399)]
     RenderBlock {DIV} at (6,3) size 366x43
-      RenderText {#text} at (339,0) size 365x29
-        text run at (339,0) width 1 RTL: " "
+      RenderText {#text} at (339,0) size 26x14
         text run at (339,0) width 26 RTL: "\x{5E9}\x{5DC}\x{5D5}\x{5DD}!"
+      RenderBR {BR} at (339,0) size 1x14
+      RenderText {#text} at (0,15) size 29x14
         text run at (0,15) width 29: "hello!"
-        text run at (28,15) width 1: " "
+      RenderBR {BR} at (28,15) size 1x14
       RenderBR {BR} at (0,29) size 0x14
 layer at (10,263) size 378x62 clip at (11,264) size 376x60
   RenderTextControl {TEXTAREA} at (2,215) size 378x62 [bgcolor=#FFFFFF] [border: (1px solid #3C3C4399)]
     RenderBlock {DIV} at (6,3) size 366x43
-      RenderText {#text} at (339,0) size 365x29
-        text run at (339,0) width 1 RTL: " "
+      RenderText {#text} at (339,0) size 26x14
         text run at (339,0) width 26 RTL: "\x{5E9}\x{5DC}\x{5D5}\x{5DD}!"
+      RenderBR {BR} at (339,0) size 1x14
+      RenderText {#text} at (0,15) size 29x14
         text run at (0,15) width 29: "hello!"
-        text run at (28,15) width 1: " "
+      RenderBR {BR} at (28,15) size 1x14
       RenderBR {BR} at (365,29) size 0x14

Modified: trunk/LayoutTests/platform/mac/editing/input/reveal-caret-of-multiline-input-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac/editing/input/reveal-caret-of-multiline-input-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac/editing/input/reveal-caret-of-multiline-input-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -12,68 +12,98 @@
 layer at (10,28) size 91x136 clip at (11,29) size 74x134 scrollY 98 scrollHeight 420
   RenderTextControl {TEXTAREA} at (2,2) size 91x136 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 70x416
-      RenderText {#text} at (0,0) size 19x403
+      RenderText {#text} at (0,0) size 14x13
         text run at (0,0) width 14: "00"
-        text run at (13,0) width 1: " "
+      RenderBR {BR} at (13,0) size 1x13
+      RenderText {#text} at (0,13) size 13x13
         text run at (0,13) width 13: "01"
-        text run at (12,13) width 1: " "
+      RenderBR {BR} at (12,13) size 1x13
+      RenderText {#text} at (0,26) size 14x13
         text run at (0,26) width 14: "02"
-        text run at (13,26) width 1: " "
+      RenderBR {BR} at (13,26) size 1x13
+      RenderText {#text} at (0,39) size 14x13
         text run at (0,39) width 14: "03"
-        text run at (13,39) width 1: " "
+      RenderBR {BR} at (13,39) size 1x13
+      RenderText {#text} at (0,52) size 15x13
         text run at (0,52) width 15: "04"
-        text run at (14,52) width 1: " "
+      RenderBR {BR} at (14,52) size 1x13
+      RenderText {#text} at (0,65) size 14x13
         text run at (0,65) width 14: "05"
-        text run at (13,65) width 1: " "
+      RenderBR {BR} at (13,65) size 1x13
+      RenderText {#text} at (0,78) size 15x13
         text run at (0,78) width 15: "06"
-        text run at (14,78) width 1: " "
+      RenderBR {BR} at (14,78) size 1x13
+      RenderText {#text} at (0,91) size 14x13
         text run at (0,91) width 14: "07"
-        text run at (13,91) width 1: " "
+      RenderBR {BR} at (13,91) size 1x13
+      RenderText {#text} at (0,104) size 15x13
         text run at (0,104) width 15: "08"
-        text run at (14,104) width 1: " "
+      RenderBR {BR} at (14,104) size 1x13
+      RenderText {#text} at (0,117) size 15x13
         text run at (0,117) width 15: "09"
-        text run at (14,117) width 1: " "
+      RenderBR {BR} at (14,117) size 1x13
+      RenderText {#text} at (0,130) size 13x13
         text run at (0,130) width 13: "10"
-        text run at (12,130) width 1: " "
+      RenderBR {BR} at (12,130) size 1x13
+      RenderText {#text} at (0,143) size 11x13
         text run at (0,143) width 11: "11"
-        text run at (10,143) width 1: " "
+      RenderBR {BR} at (10,143) size 1x13
+      RenderText {#text} at (0,156) size 19x13
         text run at (0,156) width 19: ">12"
-        text run at (18,156) width 1: " "
+      RenderBR {BR} at (18,156) size 1x13
+      RenderText {#text} at (0,169) size 13x13
         text run at (0,169) width 13: "13"
-        text run at (12,169) width 1: " "
+      RenderBR {BR} at (12,169) size 1x13
+      RenderText {#text} at (0,182) size 13x13
         text run at (0,182) width 13: "14"
-        text run at (12,182) width 1: " "
+      RenderBR {BR} at (12,182) size 1x13
+      RenderText {#text} at (0,195) size 13x13
         text run at (0,195) width 13: "15"
-        text run at (12,195) width 1: " "
+      RenderBR {BR} at (12,195) size 1x13
+      RenderText {#text} at (0,208) size 13x13
         text run at (0,208) width 13: "16"
-        text run at (12,208) width 1: " "
+      RenderBR {BR} at (12,208) size 1x13
+      RenderText {#text} at (0,221) size 12x13
         text run at (0,221) width 12: "17"
-        text run at (11,221) width 1: " "
+      RenderBR {BR} at (11,221) size 1x13
+      RenderText {#text} at (0,234) size 13x13
         text run at (0,234) width 13: "18"
-        text run at (12,234) width 1: " "
+      RenderBR {BR} at (12,234) size 1x13
+      RenderText {#text} at (0,247) size 13x13
         text run at (0,247) width 13: "19"
-        text run at (12,247) width 1: " "
+      RenderBR {BR} at (12,247) size 1x13
+      RenderText {#text} at (0,260) size 14x13
         text run at (0,260) width 14: "20"
-        text run at (13,260) width 1: " "
+      RenderBR {BR} at (13,260) size 1x13
+      RenderText {#text} at (0,273) size 12x13
         text run at (0,273) width 12: "21"
-        text run at (11,273) width 1: " "
+      RenderBR {BR} at (11,273) size 1x13
+      RenderText {#text} at (0,286) size 14x13
         text run at (0,286) width 14: "22"
-        text run at (13,286) width 1: " "
+      RenderBR {BR} at (13,286) size 1x13
+      RenderText {#text} at (0,299) size 14x13
         text run at (0,299) width 14: "23"
-        text run at (13,299) width 1: " "
+      RenderBR {BR} at (13,299) size 1x13
+      RenderText {#text} at (0,312) size 14x13
         text run at (0,312) width 14: "24"
-        text run at (13,312) width 1: " "
+      RenderBR {BR} at (13,312) size 1x13
+      RenderText {#text} at (0,325) size 14x13
         text run at (0,325) width 14: "25"
-        text run at (13,325) width 1: " "
+      RenderBR {BR} at (13,325) size 1x13
+      RenderText {#text} at (0,338) size 14x13
         text run at (0,338) width 14: "26"
-        text run at (13,338) width 1: " "
+      RenderBR {BR} at (13,338) size 1x13
+      RenderText {#text} at (0,351) size 14x13
         text run at (0,351) width 14: "27"
-        text run at (13,351) width 1: " "
+      RenderBR {BR} at (13,351) size 1x13
+      RenderText {#text} at (0,364) size 14x13
         text run at (0,364) width 14: "28"
-        text run at (13,364) width 1: " "
+      RenderBR {BR} at (13,364) size 1x13
+      RenderText {#text} at (0,377) size 14x13
         text run at (0,377) width 14: "29"
-        text run at (13,377) width 1: " "
+      RenderBR {BR} at (13,377) size 1x13
+      RenderText {#text} at (0,390) size 14x13
         text run at (0,390) width 14: "30"
-        text run at (13,390) width 1: " "
+      RenderBR {BR} at (13,390) size 1x13
       RenderBR {BR} at (0,403) size 0x13
-caret: position 37 of child 0 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body
+caret: position 1 of child 24 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body

Modified: trunk/LayoutTests/platform/mac/fast/forms/basic-textareas-quirks-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac/fast/forms/basic-textareas-quirks-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac/fast/forms/basic-textareas-quirks-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -669,161 +669,203 @@
 layer at (378,901) size 161x47 clip at (379,902) size 144x30 scrollWidth 186 scrollHeight 212
   RenderTextControl {TEXTAREA} at (16,3) size 162x47 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 140x208
-      RenderText {#text} at (0,0) size 185x195
+      RenderText {#text} at (0,0) size 4x13
         text run at (0,0) width 4: " "
-        text run at (3,0) width 1: " "
+      RenderBR {BR} at (3,0) size 1x13
+      RenderText {#text} at (0,13) size 185x13
         text run at (0,13) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,13) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,26) size 185x13
         text run at (0,26) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,26) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,39) size 185x13
         text run at (0,39) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,39) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,52) size 185x13
         text run at (0,52) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,52) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,65) size 185x13
         text run at (0,65) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,65) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,78) size 185x13
         text run at (0,78) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,78) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,91) size 185x13
         text run at (0,91) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,91) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,104) size 185x13
         text run at (0,104) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,104) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,117) size 185x13
         text run at (0,117) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,117) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,130) size 185x13
         text run at (0,130) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,130) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,143) size 185x13
         text run at (0,143) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,143) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,156) size 185x13
         text run at (0,156) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,156) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,169) size 185x13
         text run at (0,169) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,169) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,182) size 185x13
         text run at (0,182) width 185: "This is a text area with wrap=\"soft\""
-        text run at (184,182) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
       RenderBR {BR} at (0,195) size 0x13
 layer at (378,971) size 161x32 clip at (379,972) size 144x30 scrollHeight 394
   RenderTextControl {TEXTAREA} at (16,3) size 162x32 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 140x390
-      RenderText {#text} at (0,0) size 121x377
+      RenderText {#text} at (0,0) size 4x13
         text run at (0,0) width 4: " "
-        text run at (3,0) width 1: " "
+      RenderBR {BR} at (3,0) size 1x13
+      RenderText {#text} at (0,13) size 121x26
         text run at (0,13) width 118: "This is a text area with"
         text run at (117,13) width 4: " "
         text run at (0,26) width 64: "wrap=\"soft\""
-        text run at (63,26) width 1: " "
+      RenderBR {BR} at (63,26) size 1x13
+      RenderText {#text} at (0,39) size 121x26
         text run at (0,39) width 118: "This is a text area with"
         text run at (117,39) width 4: " "
         text run at (0,52) width 64: "wrap=\"soft\""
-        text run at (63,52) width 1: " "
+      RenderBR {BR} at (63,52) size 1x13
+      RenderText {#text} at (0,65) size 121x26
         text run at (0,65) width 118: "This is a text area with"
         text run at (117,65) width 4: " "
         text run at (0,78) width 64: "wrap=\"soft\""
-        text run at (63,78) width 1: " "
+      RenderBR {BR} at (63,78) size 1x13
+      RenderText {#text} at (0,91) size 121x26
         text run at (0,91) width 118: "This is a text area with"
         text run at (117,91) width 4: " "
         text run at (0,104) width 64: "wrap=\"soft\""
-        text run at (63,104) width 1: " "
+      RenderBR {BR} at (63,104) size 1x13
+      RenderText {#text} at (0,117) size 121x26
         text run at (0,117) width 118: "This is a text area with"
         text run at (117,117) width 4: " "
         text run at (0,130) width 64: "wrap=\"soft\""
-        text run at (63,130) width 1: " "
+      RenderBR {BR} at (63,130) size 1x13
+      RenderText {#text} at (0,143) size 121x26
         text run at (0,143) width 118: "This is a text area with"
         text run at (117,143) width 4: " "
         text run at (0,156) width 64: "wrap=\"soft\""
-        text run at (63,156) width 1: " "
+      RenderBR {BR} at (63,156) size 1x13
+      RenderText {#text} at (0,169) size 121x26
         text run at (0,169) width 118: "This is a text area with"
         text run at (117,169) width 4: " "
         text run at (0,182) width 64: "wrap=\"soft\""
-        text run at (63,182) width 1: " "
+      RenderBR {BR} at (63,182) size 1x13
+      RenderText {#text} at (0,195) size 121x26
         text run at (0,195) width 118: "This is a text area with"
         text run at (117,195) width 4: " "
         text run at (0,208) width 64: "wrap=\"soft\""
-        text run at (63,208) width 1: " "
+      RenderBR {BR} at (63,208) size 1x13
+      RenderText {#text} at (0,221) size 121x26
         text run at (0,221) width 118: "This is a text area with"
         text run at (117,221) width 4: " "
         text run at (0,234) width 64: "wrap=\"soft\""
-        text run at (63,234) width 1: " "
+      RenderBR {BR} at (63,234) size 1x13
+      RenderText {#text} at (0,247) size 121x26
         text run at (0,247) width 118: "This is a text area with"
         text run at (117,247) width 4: " "
         text run at (0,260) width 64: "wrap=\"soft\""
-        text run at (63,260) width 1: " "
+      RenderBR {BR} at (63,260) size 1x13
+      RenderText {#text} at (0,273) size 121x26
         text run at (0,273) width 118: "This is a text area with"
         text run at (117,273) width 4: " "
         text run at (0,286) width 64: "wrap=\"soft\""
-        text run at (63,286) width 1: " "
+      RenderBR {BR} at (63,286) size 1x13
+      RenderText {#text} at (0,299) size 121x26
         text run at (0,299) width 118: "This is a text area with"
         text run at (117,299) width 4: " "
         text run at (0,312) width 64: "wrap=\"soft\""
-        text run at (63,312) width 1: " "
+      RenderBR {BR} at (63,312) size 1x13
+      RenderText {#text} at (0,325) size 121x26
         text run at (0,325) width 118: "This is a text area with"
         text run at (117,325) width 4: " "
         text run at (0,338) width 64: "wrap=\"soft\""
-        text run at (63,338) width 1: " "
+      RenderBR {BR} at (63,338) size 1x13
+      RenderText {#text} at (0,351) size 121x26
         text run at (0,351) width 118: "This is a text area with"
         text run at (117,351) width 4: " "
         text run at (0,364) width 64: "wrap=\"soft\""
-        text run at (63,364) width 1: " "
+      RenderBR {BR} at (63,364) size 1x13
       RenderBR {BR} at (0,377) size 0x13
 layer at (378,1026) size 161x32 clip at (379,1027) size 144x30 scrollHeight 394
   RenderTextControl {TEXTAREA} at (16,3) size 162x32 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 140x390
-      RenderText {#text} at (0,0) size 121x377
+      RenderText {#text} at (0,0) size 4x13
         text run at (0,0) width 4: " "
-        text run at (3,0) width 1: " "
+      RenderBR {BR} at (3,0) size 1x13
+      RenderText {#text} at (0,13) size 121x26
         text run at (0,13) width 118: "This is a text area with"
         text run at (117,13) width 4: " "
         text run at (0,26) width 64: "wrap=\"soft\""
-        text run at (63,26) width 1: " "
+      RenderBR {BR} at (63,26) size 1x13
+      RenderText {#text} at (0,39) size 121x26
         text run at (0,39) width 118: "This is a text area with"
         text run at (117,39) width 4: " "
         text run at (0,52) width 64: "wrap=\"soft\""
-        text run at (63,52) width 1: " "
+      RenderBR {BR} at (63,52) size 1x13
+      RenderText {#text} at (0,65) size 121x26
         text run at (0,65) width 118: "This is a text area with"
         text run at (117,65) width 4: " "
         text run at (0,78) width 64: "wrap=\"soft\""
-        text run at (63,78) width 1: " "
+      RenderBR {BR} at (63,78) size 1x13
+      RenderText {#text} at (0,91) size 121x26
         text run at (0,91) width 118: "This is a text area with"
         text run at (117,91) width 4: " "
         text run at (0,104) width 64: "wrap=\"soft\""
-        text run at (63,104) width 1: " "
+      RenderBR {BR} at (63,104) size 1x13
+      RenderText {#text} at (0,117) size 121x26
         text run at (0,117) width 118: "This is a text area with"
         text run at (117,117) width 4: " "
         text run at (0,130) width 64: "wrap=\"soft\""
-        text run at (63,130) width 1: " "
+      RenderBR {BR} at (63,130) size 1x13
+      RenderText {#text} at (0,143) size 121x26
         text run at (0,143) width 118: "This is a text area with"
         text run at (117,143) width 4: " "
         text run at (0,156) width 64: "wrap=\"soft\""
-        text run at (63,156) width 1: " "
+      RenderBR {BR} at (63,156) size 1x13
+      RenderText {#text} at (0,169) size 121x26
         text run at (0,169) width 118: "This is a text area with"
         text run at (117,169) width 4: " "
         text run at (0,182) width 64: "wrap=\"soft\""
-        text run at (63,182) width 1: " "
+      RenderBR {BR} at (63,182) size 1x13
+      RenderText {#text} at (0,195) size 121x26
         text run at (0,195) width 118: "This is a text area with"
         text run at (117,195) width 4: " "
         text run at (0,208) width 64: "wrap=\"soft\""
-        text run at (63,208) width 1: " "
+      RenderBR {BR} at (63,208) size 1x13
+      RenderText {#text} at (0,221) size 121x26
         text run at (0,221) width 118: "This is a text area with"
         text run at (117,221) width 4: " "
         text run at (0,234) width 64: "wrap=\"soft\""
-        text run at (63,234) width 1: " "
+      RenderBR {BR} at (63,234) size 1x13
+      RenderText {#text} at (0,247) size 121x26
         text run at (0,247) width 118: "This is a text area with"
         text run at (117,247) width 4: " "
         text run at (0,260) width 64: "wrap=\"soft\""
-        text run at (63,260) width 1: " "
+      RenderBR {BR} at (63,260) size 1x13
+      RenderText {#text} at (0,273) size 121x26
         text run at (0,273) width 118: "This is a text area with"
         text run at (117,273) width 4: " "
         text run at (0,286) width 64: "wrap=\"soft\""
-        text run at (63,286) width 1: " "
+      RenderBR {BR} at (63,286) size 1x13
+      RenderText {#text} at (0,299) size 121x26
         text run at (0,299) width 118: "This is a text area with"
         text run at (117,299) width 4: " "
         text run at (0,312) width 64: "wrap=\"soft\""
-        text run at (63,312) width 1: " "
+      RenderBR {BR} at (63,312) size 1x13
+      RenderText {#text} at (0,325) size 121x26
         text run at (0,325) width 118: "This is a text area with"
         text run at (117,325) width 4: " "
         text run at (0,338) width 64: "wrap=\"soft\""
-        text run at (63,338) width 1: " "
+      RenderBR {BR} at (63,338) size 1x13
+      RenderText {#text} at (0,351) size 121x26
         text run at (0,351) width 118: "This is a text area with"
         text run at (117,351) width 4: " "
         text run at (0,364) width 64: "wrap=\"soft\""
-        text run at (63,364) width 1: " "
+      RenderBR {BR} at (63,364) size 1x13
       RenderBR {BR} at (0,377) size 0x13

Modified: trunk/LayoutTests/platform/mac/fast/forms/textarea-scroll-height-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac/fast/forms/textarea-scroll-height-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac/fast/forms/textarea-scroll-height-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -10,44 +10,59 @@
 layer at (8,8) size 200x200 clip at (9,9) size 183x198 scrollHeight 316
   RenderTextControl {TEXTAREA} at (0,0) size 200x200 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 179x312
-      RenderText {#text} at (0,0) size 83x299
+      RenderText {#text} at (0,0) size 83x13
         text run at (0,0) width 83: "Lots of content."
-        text run at (82,0) width 1: " "
+      RenderBR {BR} at (82,0) size 1x13
+      RenderText {#text} at (0,13) size 83x13
         text run at (0,13) width 83: "Lots of content."
-        text run at (82,13) width 1: " "
+      RenderBR {BR} at (82,13) size 1x13
+      RenderText {#text} at (0,26) size 83x13
         text run at (0,26) width 83: "Lots of content."
-        text run at (82,26) width 1: " "
+      RenderBR {BR} at (82,26) size 1x13
+      RenderText {#text} at (0,39) size 83x13
         text run at (0,39) width 83: "Lots of content."
-        text run at (82,39) width 1: " "
-        text run at (0,52) width 0: " "
+      RenderBR {BR} at (82,39) size 1x13
+      RenderBR {BR} at (0,52) size 0x13
+      RenderText {#text} at (0,65) size 83x13
         text run at (0,65) width 83: "Lots of content."
-        text run at (82,65) width 1: " "
+      RenderBR {BR} at (82,65) size 1x13
+      RenderText {#text} at (0,78) size 83x13
         text run at (0,78) width 83: "Lots of content."
-        text run at (82,78) width 1: " "
-        text run at (0,91) width 0: " "
+      RenderBR {BR} at (82,78) size 1x13
+      RenderBR {BR} at (0,91) size 0x13
+      RenderText {#text} at (0,104) size 83x13
         text run at (0,104) width 83: "Lots of content."
-        text run at (82,104) width 1: " "
+      RenderBR {BR} at (82,104) size 1x13
+      RenderText {#text} at (0,117) size 83x13
         text run at (0,117) width 83: "Lots of content."
-        text run at (82,117) width 1: " "
-        text run at (0,130) width 0: " "
+      RenderBR {BR} at (82,117) size 1x13
+      RenderBR {BR} at (0,130) size 0x13
+      RenderText {#text} at (0,143) size 83x13
         text run at (0,143) width 83: "Lots of content."
-        text run at (82,143) width 1: " "
+      RenderBR {BR} at (82,143) size 1x13
+      RenderText {#text} at (0,156) size 83x13
         text run at (0,156) width 83: "Lots of content."
-        text run at (82,156) width 1: " "
-        text run at (0,169) width 0: " "
+      RenderBR {BR} at (82,156) size 1x13
+      RenderBR {BR} at (0,169) size 0x13
+      RenderText {#text} at (0,182) size 83x13
         text run at (0,182) width 83: "Lots of content."
-        text run at (82,182) width 1: " "
+      RenderBR {BR} at (82,182) size 1x13
+      RenderText {#text} at (0,195) size 83x13
         text run at (0,195) width 83: "Lots of content."
-        text run at (82,195) width 1: " "
-        text run at (0,208) width 0: " "
+      RenderBR {BR} at (82,195) size 1x13
+      RenderBR {BR} at (0,208) size 0x13
+      RenderText {#text} at (0,221) size 83x13
         text run at (0,221) width 83: "Lots of content."
-        text run at (82,221) width 1: " "
+      RenderBR {BR} at (82,221) size 1x13
+      RenderText {#text} at (0,234) size 83x13
         text run at (0,234) width 83: "Lots of content."
-        text run at (82,234) width 1: " "
-        text run at (0,247) width 0: " "
+      RenderBR {BR} at (82,234) size 1x13
+      RenderBR {BR} at (0,247) size 0x13
+      RenderText {#text} at (0,260) size 83x13
         text run at (0,260) width 83: "Lots of content."
-        text run at (82,260) width 1: " "
+      RenderBR {BR} at (82,260) size 1x13
+      RenderText {#text} at (0,273) size 83x13
         text run at (0,273) width 83: "Lots of content."
-        text run at (82,273) width 1: " "
-        text run at (0,286) width 0: " "
+      RenderBR {BR} at (82,273) size 1x13
+      RenderBR {BR} at (0,286) size 0x13
       RenderBR {BR} at (0,299) size 0x13

Modified: trunk/LayoutTests/platform/mac/fast/forms/textarea-scrollbar-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac/fast/forms/textarea-scrollbar-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac/fast/forms/textarea-scrollbar-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -10,15 +10,18 @@
 layer at (10,28) size 161x84 clip at (11,29) size 144x82 scrollHeight 121
   RenderTextControl {TEXTAREA} at (2,20) size 161x84 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 140x117
-      RenderText {#text} at (0,0) size 8x52
+      RenderText {#text} at (0,0) size 6x13
         text run at (0,0) width 6: "1"
-        text run at (5,0) width 1: " "
+      RenderBR {BR} at (5,0) size 1x13
+      RenderText {#text} at (0,13) size 7x13
         text run at (0,13) width 7: "2"
-        text run at (6,13) width 1: " "
+      RenderBR {BR} at (6,13) size 1x13
+      RenderText {#text} at (0,26) size 7x13
         text run at (0,26) width 7: "3"
-        text run at (6,26) width 1: " "
+      RenderBR {BR} at (6,26) size 1x13
+      RenderText {#text} at (0,39) size 8x13
         text run at (0,39) width 8: "4"
-        text run at (7,39) width 1: " "
+      RenderBR {BR} at (7,39) size 1x13
       RenderText {#text} at (0,52) size 7x13
         text run at (0,52) width 7: "5"
       RenderText {#text} at (6,52) size 1x13
@@ -37,4 +40,4 @@
         text run at (7,91) width 1: " "
       RenderText {#text} at (0,104) size 0x13
         text run at (0,104) width 0: " "
-caret: position 0 of child 9 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body
+caret: position 0 of child 16 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body

Modified: trunk/LayoutTests/platform/mac/fast/forms/textarea-scrolled-type-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac/fast/forms/textarea-scrolled-type-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac/fast/forms/textarea-scrolled-type-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -14,46 +14,65 @@
 layer at (10,28) size 161x97 clip at (11,29) size 144x95 scrollY 182 scrollHeight 277
   RenderTextControl {TEXTAREA} at (2,20) size 161x97 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 140x273
-      RenderText {#text} at (0,0) size 40x260
+      RenderText {#text} at (0,0) size 6x13
         text run at (0,0) width 6: "1"
-        text run at (5,0) width 1: " "
+      RenderBR {BR} at (5,0) size 1x13
+      RenderText {#text} at (0,13) size 7x13
         text run at (0,13) width 7: "2"
-        text run at (6,13) width 1: " "
+      RenderBR {BR} at (6,13) size 1x13
+      RenderText {#text} at (0,26) size 7x13
         text run at (0,26) width 7: "3"
-        text run at (6,26) width 1: " "
+      RenderBR {BR} at (6,26) size 1x13
+      RenderText {#text} at (0,39) size 8x13
         text run at (0,39) width 8: "4"
-        text run at (7,39) width 1: " "
+      RenderBR {BR} at (7,39) size 1x13
+      RenderText {#text} at (0,52) size 7x13
         text run at (0,52) width 7: "5"
-        text run at (6,52) width 1: " "
+      RenderBR {BR} at (6,52) size 1x13
+      RenderText {#text} at (0,65) size 8x13
         text run at (0,65) width 8: "6"
-        text run at (7,65) width 1: " "
+      RenderBR {BR} at (7,65) size 1x13
+      RenderText {#text} at (0,78) size 7x13
         text run at (0,78) width 7: "7"
-        text run at (6,78) width 1: " "
+      RenderBR {BR} at (6,78) size 1x13
+      RenderText {#text} at (0,91) size 8x13
         text run at (0,91) width 8: "8"
-        text run at (7,91) width 1: " "
+      RenderBR {BR} at (7,91) size 1x13
+      RenderText {#text} at (0,104) size 8x13
         text run at (0,104) width 8: "9"
-        text run at (7,104) width 1: " "
+      RenderBR {BR} at (7,104) size 1x13
+      RenderText {#text} at (0,117) size 13x13
         text run at (0,117) width 13: "10"
-        text run at (12,117) width 1: " "
+      RenderBR {BR} at (12,117) size 1x13
+      RenderText {#text} at (0,130) size 11x13
         text run at (0,130) width 11: "11"
-        text run at (10,130) width 1: " "
+      RenderBR {BR} at (10,130) size 1x13
+      RenderText {#text} at (0,143) size 12x13
         text run at (0,143) width 12: "12"
-        text run at (11,143) width 1: " "
+      RenderBR {BR} at (11,143) size 1x13
+      RenderText {#text} at (0,156) size 13x13
         text run at (0,156) width 13: "13"
-        text run at (12,156) width 1: " "
+      RenderBR {BR} at (12,156) size 1x13
+      RenderText {#text} at (0,169) size 13x13
         text run at (0,169) width 13: "14"
-        text run at (12,169) width 1: " "
+      RenderBR {BR} at (12,169) size 1x13
+      RenderText {#text} at (0,182) size 13x13
         text run at (0,182) width 13: "15"
-        text run at (12,182) width 1: " "
+      RenderBR {BR} at (12,182) size 1x13
+      RenderText {#text} at (0,195) size 13x13
         text run at (0,195) width 13: "16"
-        text run at (12,195) width 1: " "
+      RenderBR {BR} at (12,195) size 1x13
+      RenderText {#text} at (0,208) size 12x13
         text run at (0,208) width 12: "17"
-        text run at (11,208) width 1: " "
+      RenderBR {BR} at (11,208) size 1x13
+      RenderText {#text} at (0,221) size 40x13
         text run at (0,221) width 40: "18 Pass"
-        text run at (39,221) width 1: " "
+      RenderBR {BR} at (39,221) size 1x13
+      RenderText {#text} at (0,234) size 13x13
         text run at (0,234) width 13: "19"
-        text run at (12,234) width 1: " "
+      RenderBR {BR} at (12,234) size 1x13
+      RenderText {#text} at (0,247) size 14x13
         text run at (0,247) width 14: "20"
-        text run at (13,247) width 1: " "
+      RenderBR {BR} at (13,247) size 1x13
       RenderBR {BR} at (0,260) size 0x13
-caret: position 49 of child 0 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body
+caret: position 7 of child 34 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body

Modified: trunk/LayoutTests/platform/mac/fast/forms/textarea-width-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac/fast/forms/textarea-width-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac/fast/forms/textarea-width-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -16,5 +16,5 @@
       RenderText {#text} at (0,0) size 454x24
         text run at (0,0) width 454: "1234567890abcdefghijABCDEFGHIJ1234567890abcdefghijABCDEFGHIJ12345X7890abcde"
         text run at (0,12) width 267: "fghijABCDEFGXIJ1234567890abcdefghijABCDEFGHIJ"
-        text run at (266,12) width 1: " "
+      RenderBR {BR} at (266,12) size 1x12
       RenderBR {BR} at (0,24) size 0x12

Modified: trunk/LayoutTests/platform/mac/fast/parser/open-comment-in-textarea-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac/fast/parser/open-comment-in-textarea-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac/fast/parser/open-comment-in-textarea-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -8,10 +8,11 @@
 layer at (10,10) size 161x32 clip at (11,11) size 144x30 scrollHeight 56
   RenderTextControl {TEXTAREA} at (2,2) size 161x32 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 140x52
-      RenderText {#text} at (0,0) size 139x39
+      RenderText {#text} at (0,0) size 21x13
         text run at (0,0) width 21: "<!--"
-        text run at (20,0) width 1: " "
+      RenderBR {BR} at (20,0) size 1x13
+      RenderText {#text} at (0,13) size 139x26
         text run at (0,13) width 139: "This should be part of the "
         text run at (0,26) width 47: "textarea."
-        text run at (46,26) width 1: " "
+      RenderBR {BR} at (46,26) size 1x13
       RenderBR {BR} at (0,39) size 0x13

Modified: trunk/LayoutTests/platform/mac/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -16,36 +16,40 @@
 layer at (10,46) size 371x58 clip at (11,47) size 369x56
   RenderTextControl {TEXTAREA} at (2,2) size 371x58 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 365x39
-      RenderText {#text} at (336,0) size 365x26
-        text run at (336,0) width 1 RTL: " "
+      RenderText {#text} at (336,0) size 29x13
         text run at (336,0) width 29 RTL: "\x{5E9}\x{5DC}\x{5D5}\x{5DD}!"
+      RenderBR {BR} at (336,0) size 1x13
+      RenderText {#text} at (0,13) size 29x13
         text run at (0,13) width 29: "hello!"
-        text run at (28,13) width 1: " "
+      RenderBR {BR} at (28,13) size 1x13
       RenderBR {BR} at (365,26) size 0x13
 layer at (10,112) size 371x58 clip at (11,113) size 369x56
   RenderTextControl {TEXTAREA} at (2,68) size 371x58 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 365x39
-      RenderText {#text} at (336,0) size 365x26
-        text run at (336,0) width 1 RTL: " "
+      RenderText {#text} at (336,0) size 29x13
         text run at (336,0) width 29 RTL: "\x{5E9}\x{5DC}\x{5D5}\x{5DD}!"
+      RenderBR {BR} at (336,0) size 1x13
+      RenderText {#text} at (0,13) size 29x13
         text run at (0,13) width 29: "hello!"
-        text run at (28,13) width 1: " "
+      RenderBR {BR} at (28,13) size 1x13
       RenderBR {BR} at (0,26) size 0x13
 layer at (10,178) size 371x58 clip at (11,179) size 369x56
   RenderTextControl {TEXTAREA} at (2,134) size 371x58 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 365x39
-      RenderText {#text} at (336,0) size 365x26
-        text run at (336,0) width 1 RTL: " "
+      RenderText {#text} at (336,0) size 29x13
         text run at (336,0) width 29 RTL: "\x{5E9}\x{5DC}\x{5D5}\x{5DD}!"
+      RenderBR {BR} at (336,0) size 1x13
+      RenderText {#text} at (0,13) size 29x13
         text run at (0,13) width 29: "hello!"
-        text run at (28,13) width 1: " "
+      RenderBR {BR} at (28,13) size 1x13
       RenderBR {BR} at (0,26) size 0x13
 layer at (10,244) size 371x58 clip at (11,245) size 369x56
   RenderTextControl {TEXTAREA} at (2,200) size 371x58 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 365x39
-      RenderText {#text} at (336,0) size 365x26
-        text run at (336,0) width 1 RTL: " "
+      RenderText {#text} at (336,0) size 29x13
         text run at (336,0) width 29 RTL: "\x{5E9}\x{5DC}\x{5D5}\x{5DD}!"
+      RenderBR {BR} at (336,0) size 1x13
+      RenderText {#text} at (0,13) size 29x13
         text run at (0,13) width 29: "hello!"
-        text run at (28,13) width 1: " "
+      RenderBR {BR} at (28,13) size 1x13
       RenderBR {BR} at (365,26) size 0x13

Modified: trunk/LayoutTests/platform/mac/http/tests/navigation/_javascript_link-frames-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac/http/tests/navigation/_javascript_link-frames-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac/http/tests/navigation/_javascript_link-frames-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -108,7 +108,7 @@
             RenderBlock {DIV} at (3,3) size 225x26
               RenderText {#text} at (0,0) size 178x13
                 text run at (0,0) width 178: "More initial text before user input."
-                text run at (177,0) width 1: " "
+              RenderBR {BR} at (177,0) size 1x13
               RenderBR {BR} at (0,13) size 0x13
       RenderFrame {FRAME} at (0,540) size 800x60
         layer at (0,0) size 785x90

Modified: trunk/LayoutTests/platform/mac-catalina/editing/input/reveal-caret-of-multiline-input-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac-catalina/editing/input/reveal-caret-of-multiline-input-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac-catalina/editing/input/reveal-caret-of-multiline-input-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -12,68 +12,98 @@
 layer at (10,28) size 91x136 clip at (11,29) size 74x134 scrollY 98 scrollHeight 420
   RenderTextControl {TEXTAREA} at (2,2) size 91x136 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 70x416
-      RenderText {#text} at (0,0) size 20x403
+      RenderText {#text} at (0,0) size 14x13
         text run at (0,0) width 14: "00"
-        text run at (13,0) width 1: " "
+      RenderBR {BR} at (13,0) size 1x13
+      RenderText {#text} at (0,13) size 13x13
         text run at (0,13) width 13: "01"
-        text run at (12,13) width 1: " "
+      RenderBR {BR} at (12,13) size 1x13
+      RenderText {#text} at (0,26) size 14x13
         text run at (0,26) width 14: "02"
-        text run at (13,26) width 1: " "
+      RenderBR {BR} at (13,26) size 1x13
+      RenderText {#text} at (0,39) size 14x13
         text run at (0,39) width 14: "03"
-        text run at (13,39) width 1: " "
+      RenderBR {BR} at (13,39) size 1x13
+      RenderText {#text} at (0,52) size 15x13
         text run at (0,52) width 15: "04"
-        text run at (14,52) width 1: " "
+      RenderBR {BR} at (14,52) size 1x13
+      RenderText {#text} at (0,65) size 14x13
         text run at (0,65) width 14: "05"
-        text run at (13,65) width 1: " "
+      RenderBR {BR} at (13,65) size 1x13
+      RenderText {#text} at (0,78) size 15x13
         text run at (0,78) width 15: "06"
-        text run at (14,78) width 1: " "
+      RenderBR {BR} at (14,78) size 1x13
+      RenderText {#text} at (0,91) size 14x13
         text run at (0,91) width 14: "07"
-        text run at (13,91) width 1: " "
+      RenderBR {BR} at (13,91) size 1x13
+      RenderText {#text} at (0,104) size 15x13
         text run at (0,104) width 15: "08"
-        text run at (14,104) width 1: " "
+      RenderBR {BR} at (14,104) size 1x13
+      RenderText {#text} at (0,117) size 15x13
         text run at (0,117) width 15: "09"
-        text run at (14,117) width 1: " "
+      RenderBR {BR} at (14,117) size 1x13
+      RenderText {#text} at (0,130) size 13x13
         text run at (0,130) width 13: "10"
-        text run at (12,130) width 1: " "
+      RenderBR {BR} at (12,130) size 1x13
+      RenderText {#text} at (0,143) size 11x13
         text run at (0,143) width 11: "11"
-        text run at (10,143) width 1: " "
+      RenderBR {BR} at (10,143) size 1x13
+      RenderText {#text} at (0,156) size 20x13
         text run at (0,156) width 20: ">12"
-        text run at (19,156) width 1: " "
+      RenderBR {BR} at (19,156) size 1x13
+      RenderText {#text} at (0,169) size 13x13
         text run at (0,169) width 13: "13"
-        text run at (12,169) width 1: " "
+      RenderBR {BR} at (12,169) size 1x13
+      RenderText {#text} at (0,182) size 13x13
         text run at (0,182) width 13: "14"
-        text run at (12,182) width 1: " "
+      RenderBR {BR} at (12,182) size 1x13
+      RenderText {#text} at (0,195) size 13x13
         text run at (0,195) width 13: "15"
-        text run at (12,195) width 1: " "
+      RenderBR {BR} at (12,195) size 1x13
+      RenderText {#text} at (0,208) size 13x13
         text run at (0,208) width 13: "16"
-        text run at (12,208) width 1: " "
+      RenderBR {BR} at (12,208) size 1x13
+      RenderText {#text} at (0,221) size 12x13
         text run at (0,221) width 12: "17"
-        text run at (11,221) width 1: " "
+      RenderBR {BR} at (11,221) size 1x13
+      RenderText {#text} at (0,234) size 13x13
         text run at (0,234) width 13: "18"
-        text run at (12,234) width 1: " "
+      RenderBR {BR} at (12,234) size 1x13
+      RenderText {#text} at (0,247) size 13x13
         text run at (0,247) width 13: "19"
-        text run at (12,247) width 1: " "
+      RenderBR {BR} at (12,247) size 1x13
+      RenderText {#text} at (0,260) size 14x13
         text run at (0,260) width 14: "20"
-        text run at (13,260) width 1: " "
+      RenderBR {BR} at (13,260) size 1x13
+      RenderText {#text} at (0,273) size 12x13
         text run at (0,273) width 12: "21"
-        text run at (11,273) width 1: " "
+      RenderBR {BR} at (11,273) size 1x13
+      RenderText {#text} at (0,286) size 14x13
         text run at (0,286) width 14: "22"
-        text run at (13,286) width 1: " "
+      RenderBR {BR} at (13,286) size 1x13
+      RenderText {#text} at (0,299) size 14x13
         text run at (0,299) width 14: "23"
-        text run at (13,299) width 1: " "
+      RenderBR {BR} at (13,299) size 1x13
+      RenderText {#text} at (0,312) size 14x13
         text run at (0,312) width 14: "24"
-        text run at (13,312) width 1: " "
+      RenderBR {BR} at (13,312) size 1x13
+      RenderText {#text} at (0,325) size 14x13
         text run at (0,325) width 14: "25"
-        text run at (13,325) width 1: " "
+      RenderBR {BR} at (13,325) size 1x13
+      RenderText {#text} at (0,338) size 14x13
         text run at (0,338) width 14: "26"
-        text run at (13,338) width 1: " "
+      RenderBR {BR} at (13,338) size 1x13
+      RenderText {#text} at (0,351) size 14x13
         text run at (0,351) width 14: "27"
-        text run at (13,351) width 1: " "
+      RenderBR {BR} at (13,351) size 1x13
+      RenderText {#text} at (0,364) size 14x13
         text run at (0,364) width 14: "28"
-        text run at (13,364) width 1: " "
+      RenderBR {BR} at (13,364) size 1x13
+      RenderText {#text} at (0,377) size 14x13
         text run at (0,377) width 14: "29"
-        text run at (13,377) width 1: " "
+      RenderBR {BR} at (13,377) size 1x13
+      RenderText {#text} at (0,390) size 14x13
         text run at (0,390) width 14: "30"
-        text run at (13,390) width 1: " "
+      RenderBR {BR} at (13,390) size 1x13
       RenderBR {BR} at (0,403) size 0x13
-caret: position 37 of child 0 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body
+caret: position 1 of child 24 {#text} of child 0 {DIV} of {#document-fragment} of child 3 {TEXTAREA} of body

Modified: trunk/LayoutTests/platform/mac-catalina/fast/forms/basic-textareas-quirks-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac-catalina/fast/forms/basic-textareas-quirks-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac-catalina/fast/forms/basic-textareas-quirks-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -669,161 +669,203 @@
 layer at (378,901) size 161x47 clip at (379,902) size 144x30 scrollWidth 186 scrollHeight 212
   RenderTextControl {TEXTAREA} at (16,3) size 162x47 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 140x208
-      RenderText {#text} at (0,0) size 184x195
+      RenderText {#text} at (0,0) size 4x13
         text run at (0,0) width 4: " "
-        text run at (3,0) width 1: " "
+      RenderBR {BR} at (3,0) size 1x13
+      RenderText {#text} at (0,13) size 184x13
         text run at (0,13) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,13) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,26) size 184x13
         text run at (0,26) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,26) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,39) size 184x13
         text run at (0,39) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,39) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,52) size 184x13
         text run at (0,52) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,52) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,65) size 184x13
         text run at (0,65) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,65) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,78) size 184x13
         text run at (0,78) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,78) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,91) size 184x13
         text run at (0,91) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,91) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,104) size 184x13
         text run at (0,104) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,104) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,117) size 184x13
         text run at (0,117) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,117) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,130) size 184x13
         text run at (0,130) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,130) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,143) size 184x13
         text run at (0,143) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,143) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,156) size 184x13
         text run at (0,156) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,156) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,169) size 184x13
         text run at (0,169) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,169) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
+      RenderText {#text} at (0,182) size 184x13
         text run at (0,182) width 184: "This is a text area with wrap=\"soft\""
-        text run at (183,182) width 1: " "
+      RenderBR {BR} at (0,0) size 0x0
       RenderBR {BR} at (0,195) size 0x13
 layer at (378,971) size 161x32 clip at (379,972) size 144x30 scrollHeight 394
   RenderTextControl {TEXTAREA} at (16,3) size 162x32 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 140x390
-      RenderText {#text} at (0,0) size 121x377
+      RenderText {#text} at (0,0) size 4x13
         text run at (0,0) width 4: " "
-        text run at (3,0) width 1: " "
+      RenderBR {BR} at (3,0) size 1x13
+      RenderText {#text} at (0,13) size 121x26
         text run at (0,13) width 118: "This is a text area with"
         text run at (117,13) width 4: " "
         text run at (0,26) width 64: "wrap=\"soft\""
-        text run at (63,26) width 1: " "
+      RenderBR {BR} at (63,26) size 1x13
+      RenderText {#text} at (0,39) size 121x26
         text run at (0,39) width 118: "This is a text area with"
         text run at (117,39) width 4: " "
         text run at (0,52) width 64: "wrap=\"soft\""
-        text run at (63,52) width 1: " "
+      RenderBR {BR} at (63,52) size 1x13
+      RenderText {#text} at (0,65) size 121x26
         text run at (0,65) width 118: "This is a text area with"
         text run at (117,65) width 4: " "
         text run at (0,78) width 64: "wrap=\"soft\""
-        text run at (63,78) width 1: " "
+      RenderBR {BR} at (63,78) size 1x13
+      RenderText {#text} at (0,91) size 121x26
         text run at (0,91) width 118: "This is a text area with"
         text run at (117,91) width 4: " "
         text run at (0,104) width 64: "wrap=\"soft\""
-        text run at (63,104) width 1: " "
+      RenderBR {BR} at (63,104) size 1x13
+      RenderText {#text} at (0,117) size 121x26
         text run at (0,117) width 118: "This is a text area with"
         text run at (117,117) width 4: " "
         text run at (0,130) width 64: "wrap=\"soft\""
-        text run at (63,130) width 1: " "
+      RenderBR {BR} at (63,130) size 1x13
+      RenderText {#text} at (0,143) size 121x26
         text run at (0,143) width 118: "This is a text area with"
         text run at (117,143) width 4: " "
         text run at (0,156) width 64: "wrap=\"soft\""
-        text run at (63,156) width 1: " "
+      RenderBR {BR} at (63,156) size 1x13
+      RenderText {#text} at (0,169) size 121x26
         text run at (0,169) width 118: "This is a text area with"
         text run at (117,169) width 4: " "
         text run at (0,182) width 64: "wrap=\"soft\""
-        text run at (63,182) width 1: " "
+      RenderBR {BR} at (63,182) size 1x13
+      RenderText {#text} at (0,195) size 121x26
         text run at (0,195) width 118: "This is a text area with"
         text run at (117,195) width 4: " "
         text run at (0,208) width 64: "wrap=\"soft\""
-        text run at (63,208) width 1: " "
+      RenderBR {BR} at (63,208) size 1x13
+      RenderText {#text} at (0,221) size 121x26
         text run at (0,221) width 118: "This is a text area with"
         text run at (117,221) width 4: " "
         text run at (0,234) width 64: "wrap=\"soft\""
-        text run at (63,234) width 1: " "
+      RenderBR {BR} at (63,234) size 1x13
+      RenderText {#text} at (0,247) size 121x26
         text run at (0,247) width 118: "This is a text area with"
         text run at (117,247) width 4: " "
         text run at (0,260) width 64: "wrap=\"soft\""
-        text run at (63,260) width 1: " "
+      RenderBR {BR} at (63,260) size 1x13
+      RenderText {#text} at (0,273) size 121x26
         text run at (0,273) width 118: "This is a text area with"
         text run at (117,273) width 4: " "
         text run at (0,286) width 64: "wrap=\"soft\""
-        text run at (63,286) width 1: " "
+      RenderBR {BR} at (63,286) size 1x13
+      RenderText {#text} at (0,299) size 121x26
         text run at (0,299) width 118: "This is a text area with"
         text run at (117,299) width 4: " "
         text run at (0,312) width 64: "wrap=\"soft\""
-        text run at (63,312) width 1: " "
+      RenderBR {BR} at (63,312) size 1x13
+      RenderText {#text} at (0,325) size 121x26
         text run at (0,325) width 118: "This is a text area with"
         text run at (117,325) width 4: " "
         text run at (0,338) width 64: "wrap=\"soft\""
-        text run at (63,338) width 1: " "
+      RenderBR {BR} at (63,338) size 1x13
+      RenderText {#text} at (0,351) size 121x26
         text run at (0,351) width 118: "This is a text area with"
         text run at (117,351) width 4: " "
         text run at (0,364) width 64: "wrap=\"soft\""
-        text run at (63,364) width 1: " "
+      RenderBR {BR} at (63,364) size 1x13
       RenderBR {BR} at (0,377) size 0x13
 layer at (378,1026) size 161x32 clip at (379,1027) size 144x30 scrollHeight 394
   RenderTextControl {TEXTAREA} at (16,3) size 162x32 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 140x390
-      RenderText {#text} at (0,0) size 121x377
+      RenderText {#text} at (0,0) size 4x13
         text run at (0,0) width 4: " "
-        text run at (3,0) width 1: " "
+      RenderBR {BR} at (3,0) size 1x13
+      RenderText {#text} at (0,13) size 121x26
         text run at (0,13) width 118: "This is a text area with"
         text run at (117,13) width 4: " "
         text run at (0,26) width 64: "wrap=\"soft\""
-        text run at (63,26) width 1: " "
+      RenderBR {BR} at (63,26) size 1x13
+      RenderText {#text} at (0,39) size 121x26
         text run at (0,39) width 118: "This is a text area with"
         text run at (117,39) width 4: " "
         text run at (0,52) width 64: "wrap=\"soft\""
-        text run at (63,52) width 1: " "
+      RenderBR {BR} at (63,52) size 1x13
+      RenderText {#text} at (0,65) size 121x26
         text run at (0,65) width 118: "This is a text area with"
         text run at (117,65) width 4: " "
         text run at (0,78) width 64: "wrap=\"soft\""
-        text run at (63,78) width 1: " "
+      RenderBR {BR} at (63,78) size 1x13
+      RenderText {#text} at (0,91) size 121x26
         text run at (0,91) width 118: "This is a text area with"
         text run at (117,91) width 4: " "
         text run at (0,104) width 64: "wrap=\"soft\""
-        text run at (63,104) width 1: " "
+      RenderBR {BR} at (63,104) size 1x13
+      RenderText {#text} at (0,117) size 121x26
         text run at (0,117) width 118: "This is a text area with"
         text run at (117,117) width 4: " "
         text run at (0,130) width 64: "wrap=\"soft\""
-        text run at (63,130) width 1: " "
+      RenderBR {BR} at (63,130) size 1x13
+      RenderText {#text} at (0,143) size 121x26
         text run at (0,143) width 118: "This is a text area with"
         text run at (117,143) width 4: " "
         text run at (0,156) width 64: "wrap=\"soft\""
-        text run at (63,156) width 1: " "
+      RenderBR {BR} at (63,156) size 1x13
+      RenderText {#text} at (0,169) size 121x26
         text run at (0,169) width 118: "This is a text area with"
         text run at (117,169) width 4: " "
         text run at (0,182) width 64: "wrap=\"soft\""
-        text run at (63,182) width 1: " "
+      RenderBR {BR} at (63,182) size 1x13
+      RenderText {#text} at (0,195) size 121x26
         text run at (0,195) width 118: "This is a text area with"
         text run at (117,195) width 4: " "
         text run at (0,208) width 64: "wrap=\"soft\""
-        text run at (63,208) width 1: " "
+      RenderBR {BR} at (63,208) size 1x13
+      RenderText {#text} at (0,221) size 121x26
         text run at (0,221) width 118: "This is a text area with"
         text run at (117,221) width 4: " "
         text run at (0,234) width 64: "wrap=\"soft\""
-        text run at (63,234) width 1: " "
+      RenderBR {BR} at (63,234) size 1x13
+      RenderText {#text} at (0,247) size 121x26
         text run at (0,247) width 118: "This is a text area with"
         text run at (117,247) width 4: " "
         text run at (0,260) width 64: "wrap=\"soft\""
-        text run at (63,260) width 1: " "
+      RenderBR {BR} at (63,260) size 1x13
+      RenderText {#text} at (0,273) size 121x26
         text run at (0,273) width 118: "This is a text area with"
         text run at (117,273) width 4: " "
         text run at (0,286) width 64: "wrap=\"soft\""
-        text run at (63,286) width 1: " "
+      RenderBR {BR} at (63,286) size 1x13
+      RenderText {#text} at (0,299) size 121x26
         text run at (0,299) width 118: "This is a text area with"
         text run at (117,299) width 4: " "
         text run at (0,312) width 64: "wrap=\"soft\""
-        text run at (63,312) width 1: " "
+      RenderBR {BR} at (63,312) size 1x13
+      RenderText {#text} at (0,325) size 121x26
         text run at (0,325) width 118: "This is a text area with"
         text run at (117,325) width 4: " "
         text run at (0,338) width 64: "wrap=\"soft\""
-        text run at (63,338) width 1: " "
+      RenderBR {BR} at (63,338) size 1x13
+      RenderText {#text} at (0,351) size 121x26
         text run at (0,351) width 118: "This is a text area with"
         text run at (117,351) width 4: " "
         text run at (0,364) width 64: "wrap=\"soft\""
-        text run at (63,364) width 1: " "
+      RenderBR {BR} at (63,364) size 1x13
       RenderBR {BR} at (0,377) size 0x13

Modified: trunk/LayoutTests/platform/mac-catalina/fast/parser/open-comment-in-textarea-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac-catalina/fast/parser/open-comment-in-textarea-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac-catalina/fast/parser/open-comment-in-textarea-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -8,10 +8,11 @@
 layer at (10,10) size 161x32 clip at (11,11) size 144x30 scrollHeight 56
   RenderTextControl {TEXTAREA} at (2,2) size 161x32 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
     RenderBlock {DIV} at (3,3) size 140x52
-      RenderText {#text} at (0,0) size 139x39
+      RenderText {#text} at (0,0) size 22x13
         text run at (0,0) width 22: "<!--"
-        text run at (21,0) width 1: " "
+      RenderBR {BR} at (21,0) size 1x13
+      RenderText {#text} at (0,13) size 139x26
         text run at (0,13) width 139: "This should be part of the "
         text run at (0,26) width 47: "textarea."
-        text run at (46,26) width 1: " "
+      RenderBR {BR} at (46,26) size 1x13
       RenderBR {BR} at (0,39) size 0x13

Modified: trunk/LayoutTests/platform/mac-catalina/http/tests/navigation/_javascript_link-frames-expected.txt (280481 => 280482)


--- trunk/LayoutTests/platform/mac-catalina/http/tests/navigation/_javascript_link-frames-expected.txt	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/LayoutTests/platform/mac-catalina/http/tests/navigation/_javascript_link-frames-expected.txt	2021-07-30 17:46:30 UTC (rev 280482)
@@ -108,7 +108,7 @@
             RenderBlock {DIV} at (3,3) size 225x26
               RenderText {#text} at (0,0) size 178x13
                 text run at (0,0) width 178: "More initial text before user input."
-                text run at (177,0) width 1: " "
+              RenderBR {BR} at (177,0) size 1x13
               RenderBR {BR} at (0,13) size 0x13
       RenderFrame {FRAME} at (0,540) size 800x60
         layer at (0,0) size 785x90

Modified: trunk/Source/WebCore/ChangeLog (280481 => 280482)


--- trunk/Source/WebCore/ChangeLog	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/Source/WebCore/ChangeLog	2021-07-30 17:46:30 UTC (rev 280482)
@@ -1,5 +1,26 @@
 2021-07-30  Chris Dumez  <[email protected]>
 
+        HTMLElement.innerText setter should convert new lines to <br>
+        https://bugs.webkit.org/show_bug.cgi?id=228605
+
+        Reviewed by Sam Weinig.
+
+        HTMLElement.innerText setter should convert new lines to <br>:
+        - https://html.spec.whatwg.org/multipage/dom.html#the-innertext-idl-attribute:dom-innertext-3
+        - https://html.spec.whatwg.org/multipage/dom.html#rendered-text-fragment
+
+        Our innerText setter had some logic that was specific to form elements and specific render
+        styles that wasn't part of the specification. It was causing us to not replace the new lines
+        with <br> in some cases. I dropped this logic to align with Blink and Gecko, as those are
+        passing the same WPT tests.
+
+        No new tests, rebaselined existing tests.
+
+        * html/HTMLElement.cpp:
+        (WebCore::HTMLElement::setInnerText):
+
+2021-07-30  Chris Dumez  <[email protected]>
+
         Clicking an HTMLLinkElement should not trigger a navigation
         https://bugs.webkit.org/show_bug.cgi?id=228618
 

Modified: trunk/Source/WebCore/html/HTMLElement.cpp (280481 => 280482)


--- trunk/Source/WebCore/html/HTMLElement.cpp	2021-07-30 17:30:58 UTC (rev 280481)
+++ trunk/Source/WebCore/html/HTMLElement.cpp	2021-07-30 17:46:30 UTC (rev 280482)
@@ -566,22 +566,6 @@
         return { };
     }
 
-    // FIXME: Do we need to be able to detect preserveNewline style even when there's no renderer?
-    // FIXME: Can the renderer be out of date here? Do we need to call updateStyleIfNeeded?
-    // For example, for the contents of textarea elements that are display:none?
-    auto* r = renderer();
-    if ((r && r->style().preserveNewline()) || (isConnected() && isTextControlInnerTextElement())) {
-        if (!text.contains('\r')) {
-            stringReplaceAll(text);
-            return { };
-        }
-        String textWithConsistentLineBreaks = text;
-        textWithConsistentLineBreaks.replace("\r\n", "\n");
-        textWithConsistentLineBreaks.replace('\r', '\n');
-        stringReplaceAll(textWithConsistentLineBreaks);
-        return { };
-    }
-
     // FIXME: This should use replaceAll(), after we fix that to work properly for DocumentFragment.
     // Add text nodes and <br> elements.
     auto fragment = textToFragment(document(), text);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to