HTMLIFrameElement.h [plain text]
#pragma once
#include "FeaturePolicy.h"
#include "HTMLFrameElementBase.h"
namespace WebCore {
class DOMTokenList;
class RenderIFrame;
class HTMLIFrameElement final : public HTMLFrameElementBase {
WTF_MAKE_ISO_ALLOCATED(HTMLIFrameElement);
public:
static Ref<HTMLIFrameElement> create(const QualifiedName&, Document&);
DOMTokenList& sandbox();
RenderIFrame* renderer() const;
void setReferrerPolicyForBindings(const AtomString&);
String referrerPolicyForBindings() const;
ReferrerPolicy referrerPolicy() const final;
const FeaturePolicy& featurePolicy() const;
private:
HTMLIFrameElement(const QualifiedName&, Document&);
int defaultTabIndex() const final;
void parseAttribute(const QualifiedName&, const AtomString&) final;
bool isPresentationAttribute(const QualifiedName&) const final;
void collectStyleForPresentationAttribute(const QualifiedName&, const AtomString&, MutableStyleProperties&) final;
bool isInteractiveContent() const final { return true; }
bool rendererIsNeeded(const RenderStyle&) final;
RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
std::unique_ptr<DOMTokenList> m_sandbox;
mutable Optional<FeaturePolicy> m_featurePolicy;
};
}