mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-07-30 20:59:16 +00:00
LibWeb: Support Element.client{Top,Left,Width,Height}
This commit is contained in:
parent
9d852623f2
commit
3006e15c94
Notes:
sideshowbarker
2024-07-18 03:18:45 +09:00
Author: https://github.com/awesomekling
Commit: 3006e15c94
3 changed files with 42 additions and 0 deletions
|
@ -358,4 +358,36 @@ NonnullRefPtr<Geometry::DOMRect> Element::get_bounding_client_rect() const
|
|||
return Geometry::DOMRect::create(box.absolute_rect().translated(-viewport_offset.x(), -viewport_offset.y()));
|
||||
}
|
||||
|
||||
int Element::client_top() const
|
||||
{
|
||||
if (!layout_node() || !layout_node()->is_box())
|
||||
return 0;
|
||||
auto& box = static_cast<Layout::Box const&>(*layout_node());
|
||||
return box.absolute_rect().top();
|
||||
}
|
||||
|
||||
int Element::client_left() const
|
||||
{
|
||||
if (!layout_node() || !layout_node()->is_box())
|
||||
return 0;
|
||||
auto& box = static_cast<Layout::Box const&>(*layout_node());
|
||||
return box.absolute_rect().left();
|
||||
}
|
||||
|
||||
int Element::client_width() const
|
||||
{
|
||||
if (!layout_node() || !layout_node()->is_box())
|
||||
return 0;
|
||||
auto& box = static_cast<Layout::Box const&>(*layout_node());
|
||||
return box.absolute_rect().width();
|
||||
}
|
||||
|
||||
int Element::client_height() const
|
||||
{
|
||||
if (!layout_node() || !layout_node()->is_box())
|
||||
return 0;
|
||||
auto& box = static_cast<Layout::Box const&>(*layout_node());
|
||||
return box.absolute_rect().height();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue