Jelajahi Sumber

LibWeb: Don't collapse TextNode if it's editable

Fixes #16127
Baitinq 2 tahun lalu
induk
melakukan
73e87d694e
1 mengubah file dengan 3 tambahan dan 0 penghapusan
  1. 3 0
      Userland/Libraries/LibWeb/Layout/InlineLevelIterator.cpp

+ 3 - 0
Userland/Libraries/LibWeb/Layout/InlineLevelIterator.cpp

@@ -255,6 +255,9 @@ void InlineLevelIterator::enter_text_node(Layout::TextNode const& text_node)
         do_respect_linebreaks = true;
         do_respect_linebreaks = true;
     }
     }
 
 
+    if (text_node.dom_node().is_editable() && !text_node.dom_node().is_uninteresting_whitespace_node())
+        do_collapse = false;
+
     // FIXME: The const_cast here is gross.
     // FIXME: The const_cast here is gross.
     const_cast<TextNode&>(text_node).compute_text_for_rendering(do_collapse);
     const_cast<TextNode&>(text_node).compute_text_for_rendering(do_collapse);