#include "extensions/browser/extension_web_contents_observer.h"
#include "base/check.h"
#include "components/sessions/content/session_tab_helper.h"
#include "content/public/browser/child_process_security_policy.h"
#include "content/public/browser/navigation_handle.h"
#include "content/public/browser/render_frame_host.h"
#include "content/public/browser/render_process_host.h"
#include "content/public/browser/web_contents.h"
#include "content/public/common/url_constants.h"
#include "extensions/browser/extension_api_frame_id_map.h"
#include "extensions/browser/extension_frame_host.h"
#include "extensions/browser/extension_prefs.h"
#include "extensions/browser/extension_registry.h"
#include "extensions/browser/extension_util.h"
#include "extensions/browser/extensions_browser_client.h"
#include "extensions/browser/kiosk/kiosk_delegate.h"
#include "extensions/browser/process_manager.h"
#include "extensions/browser/renderer_startup_helper.h"
#include "extensions/browser/script_injection_tracker.h"
#include "extensions/browser/view_type_utils.h"
#include "extensions/common/constants.h"
#include "extensions/common/extension.h"
#include "extensions/common/extension_id.h"
#include "extensions/common/mojom/view_type.mojom.h"
#include "third_party/blink/public/common/associated_interfaces/associated_interface_provider.h"
#include "third_party/blink/public/mojom/autoplay/autoplay.mojom.h"
#include "url/origin.h"
namespace extensions {
ExtensionWebContentsObserver* ExtensionWebContentsObserver::GetForWebContents(
content::WebContents* web_contents) { … }
void ExtensionWebContentsObserver::BindLocalFrameHost(
mojo::PendingAssociatedReceiver<mojom::LocalFrameHost> receiver,
content::RenderFrameHost* render_frame_host) { … }
std::unique_ptr<ExtensionFrameHost>
ExtensionWebContentsObserver::CreateExtensionFrameHost(
content::WebContents* web_contents) { … }
void ExtensionWebContentsObserver::ListenToWindowIdChangesFrom(
sessions::SessionTabHelper* helper) { … }
void ExtensionWebContentsObserver::Initialize() { … }
ExtensionWebContentsObserver::ExtensionWebContentsObserver(
content::WebContents* web_contents)
: … { … }
ExtensionWebContentsObserver::~ExtensionWebContentsObserver() { … }
void ExtensionWebContentsObserver::InitializeRenderFrame(
content::RenderFrameHost* render_frame_host) { … }
content::WebContents* ExtensionWebContentsObserver::GetAssociatedWebContents()
const { … }
void ExtensionWebContentsObserver::RenderFrameCreated(
content::RenderFrameHost* render_frame_host) { … }
void ExtensionWebContentsObserver::RenderFrameDeleted(
content::RenderFrameHost* render_frame_host) { … }
void ExtensionWebContentsObserver::ReadyToCommitNavigation(
content::NavigationHandle* navigation_handle) { … }
void ExtensionWebContentsObserver::DidFinishNavigation(
content::NavigationHandle* navigation_handle) { … }
void ExtensionWebContentsObserver::MediaPictureInPictureChanged(
bool is_picture_in_picture) { … }
void ExtensionWebContentsObserver::PepperInstanceCreated() { … }
void ExtensionWebContentsObserver::PepperInstanceDeleted() { … }
const Extension* ExtensionWebContentsObserver::GetExtensionFromFrame(
content::RenderFrameHost* render_frame_host,
bool verify_url) const { … }
mojom::LocalFrame* ExtensionWebContentsObserver::GetLocalFrame(
content::RenderFrameHost* render_frame_host) { … }
mojom::LocalFrame& ExtensionWebContentsObserver::GetLocalFrameChecked(
content::RenderFrameHost* render_frame_host) { … }
void ExtensionWebContentsObserver::OnWindowIdChanged(SessionID id) { … }
}