1234567891011121314151617181920212223242526272829303132333435 |
- /*
- * Copyright (c) 2020-2022, Andreas Kling <kling@serenityos.org>
- *
- * SPDX-License-Identifier: BSD-2-Clause
- */
- #include <LibWeb/DOM/HTMLCollection.h>
- #include <LibWeb/HTML/HTMLTableCellElement.h>
- #include <LibWeb/HTML/HTMLTableRowElement.h>
- namespace Web::HTML {
- HTMLTableRowElement::HTMLTableRowElement(DOM::Document& document, DOM::QualifiedName qualified_name)
- : HTMLElement(document, move(qualified_name))
- {
- }
- HTMLTableRowElement::~HTMLTableRowElement()
- {
- }
- // https://html.spec.whatwg.org/multipage/tables.html#dom-tr-cells
- NonnullRefPtr<DOM::HTMLCollection> HTMLTableRowElement::cells() const
- {
- // The cells attribute must return an HTMLCollection rooted at this tr element,
- // whose filter matches only td and th elements that are children of the tr element.
- // FIXME: This should return the same HTMLCollection object every time,
- // but that would cause a reference cycle since HTMLCollection refs the root.
- return DOM::HTMLCollection::create(const_cast<HTMLTableRowElement&>(*this), [this](Element const& element) {
- return element.parent() == this
- && is<HTMLTableCellElement>(element);
- });
- }
- }
|