IRequestContext Methods |
The IRequestContext type exposes the following members.
Name | Description | |
---|---|---|
CanSetPreference |
Returns true if the preference with the specified name can be modified
using SetPreference. As one example preferences set via the command-line
usually cannot be modified. This method must be called on the CEF UI thread.
| |
ClearCertificateExceptions |
Clears all certificate exceptions that were added as part of handling
OnCertificateError(IWebBrowser, IBrowser, CefErrorCode, String, ISslInfo, IRequestCallback). If you call this it is
recommended that you also call CloseAllConnections(ICompletionCallback) or you risk not
being prompted again for server certificates if you reconnect quickly.
| |
ClearSchemeHandlerFactories |
Clear all registered scheme handler factories.
| |
CloseAllConnections |
Clears all active and idle connections that Chromium currently has.
This is only recommended if you have released all other CEF objects but
don't yet want to call Cef.Shutdown().
| |
DidLoadExtension |
Returns true if this context was used to load the extension identified by extensionId. Other contexts sharing the same storage will also have access to the extension (see HasExtension).
This method must be called on the CEF UI thread.
| |
Dispose | Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. (Inherited from IDisposable.) | |
GetAllPreferences |
Returns all preferences as a dictionary. The returned
object contains a copy of the underlying preference values and
modifications to the returned object will not modify the underlying
preference values. This method must be called on the browser process UI
thread.
| |
GetDefaultCookieManager |
Returns the default cookie manager for this object. This will be the global
cookie manager if this object is the global request context. Otherwise,
this will be the default cookie manager used when this request context does
not receive a value via IRequestContextHandler.GetCookieManager().
| |
GetExtension |
Returns the extension matching extensionId or null if no matching extension is accessible in this context (see HasExtension).
This method must be called on the CEF UI thread.
| |
GetExtensions |
Retrieve the list of all extensions that this context has access to (see HasExtension).
extensionIds will be populated with the list of extension ID values.
This method must be called on the CEF UI thread.
| |
GetPreference |
Returns the value for the preference with the specified name. Returns
NULL if the preference does not exist. The returned object contains a copy
of the underlying preference value and modifications to the returned object
will not modify the underlying preference value. This method must be called
on the CEF UI thread.
| |
HasExtension |
Returns true if this context has access to the extension identified by extensionId.
This may not be the context that was used to load the extension (see DidLoadExtension).
This method must be called on the CEF UI thread.
| |
HasPreference |
Returns true if a preference with the specified name exists. This method
must be called on the CEF UI thread.
| |
IsSame |
Returns true if this object is pointing to the same context object.
| |
IsSharingWith |
Returns true if this object is sharing the same storage as the specified context.
| |
LoadExtension |
Load an extension. If extension resources will be read from disk using the default load implementation then rootDirectoy
should be the absolute path to the extension resources directory and manifestJson should be null.
If extension resources will be provided by the client (e.g. via IRequestHandler and/or IExtensionHandler) then rootDirectory
should be a path component unique to the extension (if not absolute this will be internally prefixed with the PK_DIR_RESOURCES path)
and manifestJson should contain the contents that would otherwise be read from the "manifest.json" file on disk.
The loaded extension will be accessible in all contexts sharing the same storage (HasExtension returns true).
However, only the context on which this method was called is considered the loader (DidLoadExtension returns true) and only the
loader will receive IRequestContextHandler callbacks for the extension.
OnExtensionLoaded(IExtension) will be called on load success or
OnExtensionLoadFailed(CefErrorCode) will be called on load failure.
If the extension specifies a background script via the "background" manifest key then OnBeforeBackgroundBrowser(IExtension, String, IBrowserSettings)
will be called to create the background browser. See that method for additional information about background scripts.
For visible extension views the client application should evaluate the manifest to determine the correct extension URL to load and then
load the extension URL in a ChromiumWebBrowser instance after the extension has loaded.
For example, the client can look for the "browser_action" manifest key as documented at https://developer.chrome.com/extensions/browserAction.
Extension URLs take the form "chrome-extension://<extension_id>/<path>"
Browsers that host extensions differ from normal browsers as follows:
- Can access chrome.* JavaScript APIs if allowed by the manifest. Visit chrome://extensions-support for the list of extension APIs currently supported by CEF.
- Main frame navigation to non-extension content is blocked.
- Pinch-zooming is disabled.
- Extension returns the hosted extension.
- CefBrowserHost::IsBackgroundHost returns true for background hosts.
See https://developer.chrome.com/extensions for extension implementation and usage documentation.
| |
PurgePluginListCache |
Tells all renderer processes associated with this context to throw away
their plugin list cache. If reloadPages is true they will also reload
all pages with plugins. RequestContextHandler.OnBeforePluginLoad may
be called to rebuild the plugin list cache.
| |
RegisterSchemeHandlerFactory |
Register a scheme handler factory for the specified schemeName and optional domainName.
An empty domainName value for a standard scheme will cause the factory to match all domain
names. The domainName value will be ignored for non-standard schemes. If schemeName is
a built-in scheme and no handler is returned by factory then the built-in scheme handler
factory will be called. If schemeName is a custom scheme then you must also implement the
CefApp::OnRegisterCustomSchemes() method in all processes. This function may be called multiple
times to change or remove the factory that matches the specified schemeName and optional
domainName.
| |
ResolveHostAsync |
Attempts to resolve origin to a list of associated IP addresses.
| |
ResolveHostCached |
Attempts to resolve origin to a list of associated IP addresses using
cached data. This method must be called on the CEF IO thread. Use
Cef.IOThreadTaskFactory to execute on that thread.
| |
SetPreference |
Set the value associated with preference name. If value is null the
preference will be restored to its default value. If setting the preference
fails then error will be populated with a detailed description of the
problem. This method must be called on the CEF UI thread.
Preferences set via the command-line usually cannot be modified.
|
Name | Description | |
---|---|---|
LoadExtensionFromDirectory |
Load an extension from the given directory. To load a crx file you must unzip it first.
For further details see (Defined by RequestContextExtensions.) | |
LoadExtensionsFromDirectory |
Load extension(s) from the given directory. This methods obtains all the sub directories of rootDirectory
and calls LoadExtension(String, String, IExtensionHandler) if manifest.json
is found in the sub folder. To load crx file(s) you must unzip them first.
For further details see (Defined by RequestContextExtensions.) |