diff --git a/Libraries/LibWeb/Layout/TextNode.cpp b/Libraries/LibWeb/Layout/TextNode.cpp index 07b257c5879..fedb503c94f 100644 --- a/Libraries/LibWeb/Layout/TextNode.cpp +++ b/Libraries/LibWeb/Layout/TextNode.cpp @@ -339,9 +339,6 @@ void TextNode::compute_text_for_rendering() VERIFY_NOT_REACHED(); }(computed_values().white_space()); - if (dom_node().is_editable() && !dom_node().is_uninteresting_whitespace_node()) - collapse = false; - auto parent_element = dom_node().parent_element(); auto const maybe_lang = parent_element ? parent_element->lang() : Optional {}; auto const lang = maybe_lang.has_value() ? maybe_lang.value() : Optional {}; diff --git a/Tests/LibWeb/Layout/expected/text-collapse-inside-contenteditable.txt b/Tests/LibWeb/Layout/expected/text-collapse-inside-contenteditable.txt new file mode 100644 index 00000000000..a9429513bf9 --- /dev/null +++ b/Tests/LibWeb/Layout/expected/text-collapse-inside-contenteditable.txt @@ -0,0 +1,16 @@ +Viewport <#document> at (0,0) content-size 800x600 children: not-inline + BlockContainer at (0,0) content-size 800x34 [BFC] children: not-inline + BlockContainer at (8,8) content-size 784x18 children: not-inline + BlockContainer
at (8,8) content-size 784x18 children: inline + frag 0 from TextNode start: 0, length: 7, rect: [8,8 62.796875x18] baseline: 13.796875 + "foo bar" + TextNode <#text> + BlockContainer <(anonymous)> at (8,26) content-size 784x0 children: inline + TextNode <#text> + +ViewportPaintable (Viewport<#document>) [0,0 800x600] + PaintableWithLines (BlockContainer) [0,0 800x34] + PaintableWithLines (BlockContainer) [8,8 784x18] + PaintableWithLines (BlockContainer
) [8,8 784x18] + TextPaintable (TextNode<#text>) + PaintableWithLines (BlockContainer(anonymous)) [8,26 784x0] diff --git a/Tests/LibWeb/Layout/input/text-collapse-inside-contenteditable.html b/Tests/LibWeb/Layout/input/text-collapse-inside-contenteditable.html new file mode 100644 index 00000000000..22c8d2469c0 --- /dev/null +++ b/Tests/LibWeb/Layout/input/text-collapse-inside-contenteditable.html @@ -0,0 +1,3 @@ + +
foo +bar
diff --git a/Tests/LibWeb/Text/expected/selectionchange-event.txt b/Tests/LibWeb/Text/expected/selectionchange-event.txt index 14e957865e9..ab783ffa7f5 100644 --- a/Tests/LibWeb/Text/expected/selectionchange-event.txt +++ b/Tests/LibWeb/Text/expected/selectionchange-event.txt @@ -1,4 +1,4 @@ Events: +selectionchange anchorNode=<#text > anchorOffset=0 type=Caret focusNode=<#text > focusOffset=0 isCollapsed=true selectionchange anchorNode=<#text > anchorOffset=1 type=Caret focusNode=<#text > focusOffset=1 isCollapsed=true selectionchange anchorNode=<#text > anchorOffset=1 type=Caret focusNode=<#text > focusOffset=1 isCollapsed=true -selectionchange anchorNode=<#text > anchorOffset=2 type=Caret focusNode=<#text > focusOffset=2 isCollapsed=true diff --git a/Tests/LibWeb/Text/input/selectionchange-event.html b/Tests/LibWeb/Text/input/selectionchange-event.html index 0e8c6c39bf0..cc4baf62529 100644 --- a/Tests/LibWeb/Text/input/selectionchange-event.html +++ b/Tests/LibWeb/Text/input/selectionchange-event.html @@ -31,8 +31,6 @@ ); }); - const editable = document.getElementById("editable"); - println("Events:"); internals.click(20, 10);