LibWeb: Avoid expensive containing_block lookups in PaintableFragment

The paintable has the containing block cached, so it's better (and less
code in general) to ask for it there.
This commit is contained in:
Andreas Kling 2024-01-27 14:31:47 +01:00
parent ad7e6878fe
commit 8e20a44380

View file

@ -24,8 +24,9 @@ PaintableFragment::PaintableFragment(Layout::LineBoxFragment const& fragment)
CSSPixelRect const PaintableFragment::absolute_rect() const
{
CSSPixelRect rect { {}, size() };
if (m_layout_node->containing_block() && m_layout_node->containing_block()->paintable_box())
rect.set_location(m_layout_node->containing_block()->paintable_box()->absolute_position());
auto const* containing_block = paintable().containing_block();
if (containing_block && containing_block->paintable_box())
rect.set_location(containing_block->paintable_box()->absolute_position());
rect.translate_by(offset());
return rect;
}