mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-13 01:59:14 +03: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:
parent
7b4a86ab80
commit
28eec22c83
Notes:
sideshowbarker
2024-07-17 09:30:28 +09:00
Author: https://github.com/awesomekling Commit: https://github.com/SerenityOS/serenity/commit/28eec22c83
@ -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();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user