Chromium Embedded Framework (CEF)  126.2.0+g5c56e98+chromium-126.0.6478.62
CefExtensionHandler Class Reference

Implement this interface to handle events related to browser extensions. More...

#include "include/cef_extension_handler.h"

Inheritance diagram for CefExtensionHandler:
CefBaseRefCounted

Public Member Functions

virtual void OnExtensionLoadFailed (cef_errorcode_t result)
 Called if the CefRequestContext::LoadExtension request fails. More...
 
virtual void OnExtensionLoaded (CefRefPtr< CefExtension > extension)
 Called if the CefRequestContext::LoadExtension request succeeds. More...
 
virtual void OnExtensionUnloaded (CefRefPtr< CefExtension > extension)
 Called after the CefExtension::Unload request has completed. More...
 
virtual bool OnBeforeBackgroundBrowser (CefRefPtr< CefExtension > extension, const CefString &url, CefRefPtr< CefClient > &client, CefBrowserSettings &settings)
 Called when an extension needs a browser to host a background script specified via the "background" manifest key. More...
 
virtual bool OnBeforeBrowser (CefRefPtr< CefExtension > extension, CefRefPtr< CefBrowser > browser, CefRefPtr< CefBrowser > active_browser, int index, const CefString &url, bool active, CefWindowInfo &windowInfo, CefRefPtr< CefClient > &client, CefBrowserSettings &settings)
 Called when an extension API (e.g. More...
 
virtual CefRefPtr< CefBrowserGetActiveBrowser (CefRefPtr< CefExtension > extension, CefRefPtr< CefBrowser > browser, bool include_incognito)
 Called when no tabId is specified to an extension API call that accepts a tabId parameter (e.g. More...
 
virtual bool CanAccessBrowser (CefRefPtr< CefExtension > extension, CefRefPtr< CefBrowser > browser, bool include_incognito, CefRefPtr< CefBrowser > target_browser)
 Called when the tabId associated with |target_browser| is specified to an extension API call that accepts a tabId parameter (e.g. More...
 
virtual bool GetExtensionResource (CefRefPtr< CefExtension > extension, CefRefPtr< CefBrowser > browser, const CefString &file, CefRefPtr< CefGetExtensionResourceCallback > callback)
 Called to retrieve an extension resource that would normally be loaded from disk (e.g. More...
 
- Public Member Functions inherited from CefBaseRefCounted
virtual void AddRef () const =0
 Called to increment the reference count for the object. More...
 
virtual bool Release () const =0
 Called to decrement the reference count for the object. More...
 
virtual bool HasOneRef () const =0
 Returns true if the reference count is 1. More...
 
virtual bool HasAtLeastOneRef () const =0
 Returns true if the reference count is at least 1. More...
 

Additional Inherited Members

- Protected Member Functions inherited from CefBaseRefCounted
virtual ~CefBaseRefCounted ()
 

Detailed Description

Implement this interface to handle events related to browser extensions.

The methods of this class will be called on the UI thread. See CefRequestContext::LoadExtension for information about extension loading.

WARNING: This API is deprecated and will be removed in ~M127.

Member Function Documentation

◆ CanAccessBrowser()

virtual bool CefExtensionHandler::CanAccessBrowser ( CefRefPtr< CefExtension extension,
CefRefPtr< CefBrowser browser,
bool  include_incognito,
CefRefPtr< CefBrowser target_browser 
)
inlinevirtual

Called when the tabId associated with |target_browser| is specified to an extension API call that accepts a tabId parameter (e.g.

chrome.tabs.*). |extension| and |browser| are the source of the API call. Return true to allow access of false to deny access. Access to incognito browsers should not be allowed unless the source extension has incognito access enabled, in which case |include_incognito| will be true.

◆ GetActiveBrowser()

virtual CefRefPtr<CefBrowser> CefExtensionHandler::GetActiveBrowser ( CefRefPtr< CefExtension extension,
CefRefPtr< CefBrowser browser,
bool  include_incognito 
)
inlinevirtual

Called when no tabId is specified to an extension API call that accepts a tabId parameter (e.g.

chrome.tabs.*). |extension| and |browser| are the source of the API call. Return the browser that will be acted on by the API call or return NULL to act on |browser|. The returned browser must share the same CefRequestContext as |browser|. Incognito browsers should not be considered unless the source extension has incognito access enabled, in which case |include_incognito| will be true.

◆ GetExtensionResource()

virtual bool CefExtensionHandler::GetExtensionResource ( CefRefPtr< CefExtension extension,
CefRefPtr< CefBrowser browser,
const CefString file,
CefRefPtr< CefGetExtensionResourceCallback callback 
)
inlinevirtual

Called to retrieve an extension resource that would normally be loaded from disk (e.g.

if a file parameter is specified to chrome.tabs.executeScript). |extension| and |browser| are the source of the resource request. |file| is the requested relative file path. To handle the resource request return true and execute |callback| either synchronously or asynchronously. For the default behavior which reads the resource from the extension directory on disk return false. Localization substitutions will not be applied to resources handled via this method.

◆ OnBeforeBackgroundBrowser()

virtual bool CefExtensionHandler::OnBeforeBackgroundBrowser ( CefRefPtr< CefExtension extension,
const CefString url,
CefRefPtr< CefClient > &  client,
CefBrowserSettings settings 
)
inlinevirtual

Called when an extension needs a browser to host a background script specified via the "background" manifest key.

The browser will have no visible window and cannot be displayed. |extension| is the extension that is loading the background script. |url| is an internally generated reference to an HTML page that will be used to load the background script via a "<script>" src attribute. To allow creation of the browser optionally modify |client| and |settings| and return false. To cancel creation of the browser (and consequently cancel load of the background script) return true. Successful creation will be indicated by a call to CefLifeSpanHandler::OnAfterCreated, and CefBrowserHost::IsBackgroundHost will return true for the resulting browser. See https://developer.chrome.com/extensions/event_pages for more information about extension background script usage.

◆ OnBeforeBrowser()

virtual bool CefExtensionHandler::OnBeforeBrowser ( CefRefPtr< CefExtension extension,
CefRefPtr< CefBrowser browser,
CefRefPtr< CefBrowser active_browser,
int  index,
const CefString url,
bool  active,
CefWindowInfo windowInfo,
CefRefPtr< CefClient > &  client,
CefBrowserSettings settings 
)
inlinevirtual

Called when an extension API (e.g.

chrome.tabs.create) requests creation of a new browser. |extension| and |browser| are the source of the API call. |active_browser| may optionally be specified via the windowId property or returned via the GetActiveBrowser() callback and provides the default |client| and |settings| values for the new browser. |index| is the position value optionally specified via the index property. |url| is the URL that will be loaded in the browser. |active| is true if the new browser should be active when opened. To allow creation of the browser optionally modify |windowInfo|, |client| and |settings| and return false. To cancel creation of the browser return true. Successful creation will be indicated by a call to CefLifeSpanHandler::OnAfterCreated. Any modifications to |windowInfo| will be ignored if |active_browser| is wrapped in a CefBrowserView.

◆ OnExtensionLoaded()

virtual void CefExtensionHandler::OnExtensionLoaded ( CefRefPtr< CefExtension extension)
inlinevirtual

Called if the CefRequestContext::LoadExtension request succeeds.

|extension| is the loaded extension.

◆ OnExtensionLoadFailed()

virtual void CefExtensionHandler::OnExtensionLoadFailed ( cef_errorcode_t  result)
inlinevirtual

Called if the CefRequestContext::LoadExtension request fails.

|result| will be the error code.

◆ OnExtensionUnloaded()

virtual void CefExtensionHandler::OnExtensionUnloaded ( CefRefPtr< CefExtension extension)
inlinevirtual

Called after the CefExtension::Unload request has completed.


The documentation for this class was generated from the following file: