#include "third_party/blink/renderer/core/html/html_iframe_element.h"
#include "base/metrics/histogram_macros.h"
#include "services/network/public/cpp/features.h"
#include "services/network/public/cpp/web_sandbox_flags.h"
#include "services/network/public/mojom/trust_tokens.mojom-blink.h"
#include "services/network/public/mojom/web_sandbox_flags.mojom-blink.h"
#include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/mojom/frame/frame.mojom-blink.h"
#include "third_party/blink/public/mojom/permissions_policy/permissions_policy.mojom-blink.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_html_iframe_element.h"
#include "third_party/blink/renderer/core/css/css_property_names.h"
#include "third_party/blink/renderer/core/css/style_change_reason.h"
#include "third_party/blink/renderer/core/dom/element.h"
#include "third_party/blink/renderer/core/frame/csp/content_security_policy.h"
#include "third_party/blink/renderer/core/frame/local_frame.h"
#include "third_party/blink/renderer/core/html/client_hints_util.h"
#include "third_party/blink/renderer/core/html/html_document.h"
#include "third_party/blink/renderer/core/html/trust_token_attribute_parsing.h"
#include "third_party/blink/renderer/core/html_names.h"
#include "third_party/blink/renderer/core/inspector/console_message.h"
#include "third_party/blink/renderer/core/layout/layout_iframe.h"
#include "third_party/blink/renderer/core/loader/document_loader.h"
#include "third_party/blink/renderer/core/permissions_policy/document_policy_parser.h"
#include "third_party/blink/renderer/core/permissions_policy/iframe_policy.h"
#include "third_party/blink/renderer/core/permissions_policy/permissions_policy_parser.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
#include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
#include "third_party/blink/renderer/platform/json/json_parser.h"
#include "third_party/blink/renderer/platform/network/content_security_policy_parsers.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
namespace blink {
namespace {
String ConvertToReportValue(const AtomicString& value) { … }
}
HTMLIFrameElement::HTMLIFrameElement(Document& document)
: … { … }
void HTMLIFrameElement::Trace(Visitor* visitor) const { … }
HTMLIFrameElement::~HTMLIFrameElement() = default;
const AttrNameToTrustedType& HTMLIFrameElement::GetCheckedAttributeTypes()
const { … }
void HTMLIFrameElement::SetCollapsed(bool collapse) { … }
DOMTokenList* HTMLIFrameElement::sandbox() const { … }
DOMFeaturePolicy* HTMLIFrameElement::featurePolicy() { … }
bool HTMLIFrameElement::IsPresentationAttribute(
const QualifiedName& name) const { … }
void HTMLIFrameElement::CollectStyleForPresentationAttribute(
const QualifiedName& name,
const AtomicString& value,
MutableCSSPropertyValueSet* style) { … }
void HTMLIFrameElement::ParseAttribute(
const AttributeModificationParams& params) { … }
DocumentPolicyFeatureState HTMLIFrameElement::ConstructRequiredPolicy() const { … }
ParsedPermissionsPolicy HTMLIFrameElement::ConstructContainerPolicy() const { … }
bool HTMLIFrameElement::LayoutObjectIsNeeded(const DisplayStyle& style) const { … }
LayoutObject* HTMLIFrameElement::CreateLayoutObject(const ComputedStyle&) { … }
Node::InsertionNotificationRequest HTMLIFrameElement::InsertedInto(
ContainerNode& insertion_point) { … }
void HTMLIFrameElement::RemovedFrom(ContainerNode& insertion_point) { … }
bool HTMLIFrameElement::IsInteractiveContent() const { … }
network::mojom::ReferrerPolicy HTMLIFrameElement::ReferrerPolicyAttribute() { … }
network::mojom::blink::TrustTokenParamsPtr
HTMLIFrameElement::ConstructTrustTokenParams() const { … }
void HTMLIFrameElement::DidChangeAttributes() { … }
}