mirror of
https://github.com/RGBCube/serenity
synced 2025-05-14 14:34:59 +00:00

Which pretty much needs to be done together due to the amount of places where they are compared together. This also involves porting over StackOfOpenElements over to FlyString from DeprecatedFly string to prevent a gazillion calls to `.to_deprecated_fly_string` calls in HTMLParser.
36 lines
897 B
C++
36 lines
897 B
C++
/*
|
|
* Copyright (c) 2023, Jonah Shafran <jonahshafran@gmail.com>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#include <LibWeb/Bindings/ExceptionOrUtils.h>
|
|
#include <LibWeb/MathML/MathMLElement.h>
|
|
#include <LibWeb/MathML/TagNames.h>
|
|
|
|
namespace Web::MathML {
|
|
|
|
MathMLElement::~MathMLElement() = default;
|
|
|
|
MathMLElement::MathMLElement(DOM::Document& document, DOM::QualifiedName qualified_name)
|
|
: DOM::Element(document, move(qualified_name))
|
|
{
|
|
}
|
|
|
|
void MathMLElement::initialize(JS::Realm& realm)
|
|
{
|
|
Base::initialize(realm);
|
|
set_prototype(&Bindings::ensure_web_prototype<Bindings::MathMLElementPrototype>(realm, "MathMLElement"));
|
|
|
|
m_dataset = HTML::DOMStringMap::create(*this);
|
|
}
|
|
|
|
Optional<ARIA::Role> MathMLElement::default_role() const
|
|
{
|
|
// https://www.w3.org/TR/html-aria/#el-math
|
|
if (local_name() == TagNames::math)
|
|
return ARIA::Role::math;
|
|
return {};
|
|
}
|
|
|
|
}
|