mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 22:37:35 +00:00
LibWeb: Implement hit testing a bit closer to spec
We now perform hit testing in reverse paint order as described in CSS2's section about the z-index property.
This commit is contained in:
parent
0401d7da36
commit
15ed0ebdc6
4 changed files with 74 additions and 26 deletions
|
@ -80,15 +80,9 @@ bool Node::establishes_stacking_context() const
|
|||
return computed_values().opacity() < 1.0f;
|
||||
}
|
||||
|
||||
HitTestResult Node::hit_test(const Gfx::IntPoint& position, HitTestType type) const
|
||||
HitTestResult Node::hit_test(Gfx::IntPoint const&, HitTestType) const
|
||||
{
|
||||
HitTestResult result;
|
||||
for_each_child_in_paint_order([&](auto& child) {
|
||||
auto child_result = child.hit_test(position, type);
|
||||
if (child_result.layout_node)
|
||||
result = child_result;
|
||||
});
|
||||
return result;
|
||||
VERIFY_NOT_REACHED();
|
||||
}
|
||||
|
||||
HTML::BrowsingContext const& Node::browsing_context() const
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue