mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-03 23:25:20 +00:00
LibWeb: Don't iterate over text content inside replaced elements
This fixes an issue where whitespace inside embedded <svg> elements would create unexpected whitespace text content on the page. When combined with something like `white-space: pre-wrap`, it ended up generating a lot of surprising vertical offsets.
This commit is contained in:
@@ -68,7 +68,7 @@ void InlineLevelIterator::exit_node_with_box_model_metrics()
|
||||
// This is similar to Layout::Node::next_in_pre_order() but will not descend into inline-block nodes.
|
||||
Layout::Node const* InlineLevelIterator::next_inline_node_in_pre_order(Layout::Node const& current, Layout::Node const* stay_within)
|
||||
{
|
||||
if (current.first_child() && current.first_child()->is_inline() && !current.is_inline_block()) {
|
||||
if (current.first_child() && current.first_child()->is_inline() && !current.is_inline_block() && !current.is_replaced_box()) {
|
||||
if (!current.is_box() || !static_cast<Box const&>(current).is_out_of_flow(m_inline_formatting_context))
|
||||
return current.first_child();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user