mirror of
https://github.com/RGBCube/serenity
synced 2025-07-24 14:27:35 +00:00
LibWeb: Implement getting the container document of a navigable
Co-authored-by: Aliaksandr Kalenik <kalenik.aliaksandr@gmail.com>
This commit is contained in:
parent
d85bdd3ac5
commit
406e3ed849
2 changed files with 14 additions and 0 deletions
|
@ -193,6 +193,19 @@ JS::GCPtr<NavigableContainer> Navigable::container() const
|
||||||
return NavigableContainer::navigable_container_with_content_navigable(const_cast<Navigable&>(*this));
|
return NavigableContainer::navigable_container_with_content_navigable(const_cast<Navigable&>(*this));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// https://html.spec.whatwg.org/multipage/document-sequences.html#nav-container-document
|
||||||
|
JS::GCPtr<DOM::Document> Navigable::container_document() const
|
||||||
|
{
|
||||||
|
auto container = this->container();
|
||||||
|
|
||||||
|
// 1. If navigable's container is null, then return null.
|
||||||
|
if (!container)
|
||||||
|
return nullptr;
|
||||||
|
|
||||||
|
// 2. Return navigable's container's node document.
|
||||||
|
return container->document();
|
||||||
|
}
|
||||||
|
|
||||||
// https://html.spec.whatwg.org/multipage/document-sequences.html#nav-traversable
|
// https://html.spec.whatwg.org/multipage/document-sequences.html#nav-traversable
|
||||||
JS::GCPtr<TraversableNavigable> Navigable::traversable_navigable() const
|
JS::GCPtr<TraversableNavigable> Navigable::traversable_navigable() const
|
||||||
{
|
{
|
||||||
|
|
|
@ -60,6 +60,7 @@ public:
|
||||||
String target_name() const;
|
String target_name() const;
|
||||||
|
|
||||||
JS::GCPtr<NavigableContainer> container() const;
|
JS::GCPtr<NavigableContainer> container() const;
|
||||||
|
JS::GCPtr<DOM::Document> container_document() const;
|
||||||
|
|
||||||
JS::GCPtr<TraversableNavigable> traversable_navigable() const;
|
JS::GCPtr<TraversableNavigable> traversable_navigable() const;
|
||||||
JS::GCPtr<TraversableNavigable> top_level_traversable();
|
JS::GCPtr<TraversableNavigable> top_level_traversable();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue