1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 17:47:44 +00:00

LibWeb: Add Paintable::stacking_context_rooted_here()

This is a convenience helper that lets you get the stacking context
rooted at a given paintable, without checking that the paintable is a
box first.
This commit is contained in:
Andreas Kling 2023-07-14 10:02:19 +02:00
parent 2138c164c9
commit 268492413a
3 changed files with 12 additions and 2 deletions

View file

@ -444,7 +444,7 @@ Gfx::FloatPoint StackingContext::compute_transform_origin() const
template<typename U, typename Callback>
static TraversalDecision for_each_in_inclusive_subtree_of_type_within_same_stacking_context_in_reverse(Paintable const& paintable, Callback callback)
{
if (is<PaintableBox>(paintable) && static_cast<PaintableBox const&>(paintable).stacking_context()) {
if (paintable.stacking_context_rooted_here()) {
// Note: Include the stacking context (so we can hit test it), but don't recurse into it.
if (auto decision = callback(static_cast<U const&>(paintable)); decision != TraversalDecision::Continue)
return decision;