#include "third_party/blink/renderer/core/html/html_frame_owner_element.h"
#include "base/feature_list.h"
#include "base/metrics/field_trial_params.h"
#include "base/metrics/histogram_functions.h"
#include "base/time/time.h"
#include "services/network/public/mojom/content_security_policy.mojom-blink-forward.h"
#include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/common/frame/fenced_frame_sandbox_flags.h"
#include "third_party/blink/public/mojom/fetch/fetch_api_request.mojom-blink.h"
#include "third_party/blink/public/mojom/frame/color_scheme.mojom-blink.h"
#include "third_party/blink/public/mojom/frame/frame.mojom-blink.h"
#include "third_party/blink/public/mojom/frame/frame_owner_properties.mojom-blink.h"
#include "third_party/blink/public/mojom/permissions_policy/permissions_policy.mojom-blink.h"
#include "third_party/blink/public/mojom/timing/resource_timing.mojom-blink-forward.h"
#include "third_party/blink/renderer/core/accessibility/ax_object_cache.h"
#include "third_party/blink/renderer/core/css/style_change_reason.h"
#include "third_party/blink/renderer/core/dom/events/event.h"
#include "third_party/blink/renderer/core/dom/node_computed_style.h"
#include "third_party/blink/renderer/core/events/current_input_event.h"
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
#include "third_party/blink/renderer/core/exported/web_plugin_container_impl.h"
#include "third_party/blink/renderer/core/frame/csp/content_security_policy.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/frame/local_frame.h"
#include "third_party/blink/renderer/core/frame/local_frame_client.h"
#include "third_party/blink/renderer/core/frame/local_frame_view.h"
#include "third_party/blink/renderer/core/frame/remote_frame.h"
#include "third_party/blink/renderer/core/frame/remote_frame_view.h"
#include "third_party/blink/renderer/core/frame/settings.h"
#include "third_party/blink/renderer/core/html/fenced_frame/html_fenced_frame_element.h"
#include "third_party/blink/renderer/core/html/lazy_load_frame_observer.h"
#include "third_party/blink/renderer/core/html/loading_attribute.h"
#include "third_party/blink/renderer/core/html_names.h"
#include "third_party/blink/renderer/core/layout/layout_embedded_content.h"
#include "third_party/blink/renderer/core/loader/document_loader.h"
#include "third_party/blink/renderer/core/loader/frame_load_request.h"
#include "third_party/blink/renderer/core/loader/frame_loader.h"
#include "third_party/blink/renderer/core/loader/url_matcher.h"
#include "third_party/blink/renderer/core/page/page.h"
#include "third_party/blink/renderer/core/page/scrolling/root_scroller_controller.h"
#include "third_party/blink/renderer/core/paint/paint_layer.h"
#include "third_party/blink/renderer/core/timing/dom_window_performance.h"
#include "third_party/blink/renderer/core/timing/window_performance.h"
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
#include "third_party/blink/renderer/platform/instrumentation/resource_coordinator/renderer_resource_coordinator.h"
#include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
#include "third_party/blink/renderer/platform/loader/fetch/fetch_initiator_type_names.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_timing_utils.h"
#include "third_party/blink/renderer/platform/network/network_state_notifier.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
#include "third_party/blink/renderer/platform/scheduler/public/thread_scheduler.h"
#include "third_party/blink/renderer/platform/weborigin/security_origin.h"
namespace blink {
namespace {
PluginSet;
PluginSet& PluginsPendingDispose() { … }
bool DoesParentAllowLazyLoadingChildren(Document& document) { … }
bool IsFrameLazyLoadable(ExecutionContext* context,
const KURL& url,
bool is_loading_attr_lazy,
bool should_lazy_load_children) { … }
bool CheckAndRecordIfShouldLazilyLoadFrame(const Document& document,
bool is_loading_attr_lazy) { … }
}
SubframeLoadingDisabler::SubtreeRootSet&
SubframeLoadingDisabler::DisabledSubtreeRoots() { … }
int HTMLFrameOwnerElement::PluginDisposeSuspendScope::suspend_count_ = …;
void HTMLFrameOwnerElement::PluginDisposeSuspendScope::
PerformDeferredPluginDispose() { … }
HTMLFrameOwnerElement::HTMLFrameOwnerElement(const QualifiedName& tag_name,
Document& document)
: … { … }
const QualifiedName& HTMLFrameOwnerElement::SubResourceAttributeName() const { … }
LayoutEmbeddedContent* HTMLFrameOwnerElement::GetLayoutEmbeddedContent() const { … }
Node::InsertionNotificationRequest HTMLFrameOwnerElement::InsertedInto(
ContainerNode& insertion_point) { … }
void HTMLFrameOwnerElement::RemovedFrom(ContainerNode& insertion_point) { … }
void HTMLFrameOwnerElement::SetContentFrame(Frame& frame) { … }
void HTMLFrameOwnerElement::ClearContentFrame() { … }
void HTMLFrameOwnerElement::DisconnectContentFrame() { … }
HTMLFrameOwnerElement::~HTMLFrameOwnerElement() { … }
Document* HTMLFrameOwnerElement::contentDocument() const { … }
DOMWindow* HTMLFrameOwnerElement::contentWindow() const { … }
void HTMLFrameOwnerElement::SetSandboxFlags(
network::mojom::blink::WebSandboxFlags flags) { … }
bool HTMLFrameOwnerElement::IsKeyboardFocusable(
UpdateBehavior update_behavior) const { … }
void HTMLFrameOwnerElement::DisposePluginSoon(WebPluginContainerImpl* plugin) { … }
void HTMLFrameOwnerElement::UpdateContainerPolicy() { … }
void HTMLFrameOwnerElement::DidChangeContainerPolicy() { … }
void HTMLFrameOwnerElement::UpdateRequiredPolicy() { … }
network::mojom::blink::TrustTokenParamsPtr
HTMLFrameOwnerElement::ConstructTrustTokenParams() const { … }
void HTMLFrameOwnerElement::FrameOwnerPropertiesChanged() { … }
void HTMLFrameOwnerElement::AddResourceTiming(
mojom::blink::ResourceTimingInfoPtr info) { … }
bool HTMLFrameOwnerElement::HasPendingFallbackTimingInfo() const { … }
void HTMLFrameOwnerElement::DidReportResourceTiming() { … }
void HTMLFrameOwnerElement::ReportFallbackResourceTimingIfNeeded() { … }
void HTMLFrameOwnerElement::DispatchLoad() { … }
Document* HTMLFrameOwnerElement::getSVGDocument(
ExceptionState& exception_state) const { … }
void HTMLFrameOwnerElement::SetEmbeddedContentView(
EmbeddedContentView* embedded_content_view) { … }
EmbeddedContentView* HTMLFrameOwnerElement::ReleaseEmbeddedContentView() { … }
bool HTMLFrameOwnerElement::LoadImmediatelyIfLazy() { … }
bool HTMLFrameOwnerElement::LazyLoadIfPossible(
const KURL& url,
const ResourceRequestHead& request,
WebFrameLoadType frame_load_type) { … }
bool HTMLFrameOwnerElement::IsCurrentlyWithinFrameLimit() const { … }
bool HTMLFrameOwnerElement::LoadOrRedirectSubframe(
const KURL& url,
const AtomicString& frame_name,
bool replace_current_item) { … }
void HTMLFrameOwnerElement::CancelPendingLazyLoad() { … }
bool HTMLFrameOwnerElement::ShouldLazyLoadChildren() const { … }
void HTMLFrameOwnerElement::ParseAttribute(
const AttributeModificationParams& params) { … }
bool HTMLFrameOwnerElement::IsAdRelated() const { … }
mojom::blink::ColorScheme HTMLFrameOwnerElement::GetColorScheme() const { … }
void HTMLFrameOwnerElement::SetColorScheme(
mojom::blink::ColorScheme color_scheme) { … }
mojom::blink::PreferredColorScheme
HTMLFrameOwnerElement::GetPreferredColorScheme() const { … }
void HTMLFrameOwnerElement::SetPreferredColorScheme(
mojom::blink::PreferredColorScheme preferred_color_scheme) { … }
void HTMLFrameOwnerElement::Trace(Visitor* visitor) const { … }
ParsedPermissionsPolicy HTMLFrameOwnerElement::GetLegacyFramePolicies() { … }
}