mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-09-20 09:49:15 +03: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
Notes:
sideshowbarker
2024-07-17 02:08:15 +09:00
Author: https://github.com/awesomekling Commit: https://github.com/SerenityOS/serenity/commit/406e3ed849 Pull-request: https://github.com/SerenityOS/serenity/pull/19580
@ -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…
Reference in New Issue
Block a user