CEF4Delphi/docs/html/uCEFInterfaces.ICefRequestHandler.html
2024-02-24 12:01:31 +01:00

186 lines
20 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<title>cef4delphi: uCEFInterfaces: Interface ICefRequestHandler</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="generator" content="PasDoc 0.16.0-snapshot">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<link rel="StyleSheet" type="text/css" href="pasdoc.css">
</head>
<body>
<span id="ICefRequestHandler"></span><h1 class="cio">Interface ICefRequestHandler</h1>
<div class="sections">
<div class="one_section"><a class="section" href="#PasDoc-Description">Description</a></div><div class="one_section"><a class="section" href="#PasDoc-Hierarchy">Hierarchy</a></div><div class="one_section">Fields</div><div class="one_section"><a class="section" href="#PasDoc-Methods">Methods</a></div><div class="one_section">Properties</div></div>
<span id="PasDoc-Description"></span><h2 class="unit">Unit</h2>
<p class="unitlink">
<a href="uCEFInterfaces.html">uCEFInterfaces</a></p>
<h2 class="declaration">Declaration</h2>
<p class="declaration">
<code>type ICefRequestHandler = interface(<a class="normal" href="uCEFInterfaces.ICefBaseRefCounted.html">ICefBaseRefCounted</a>)</code></p>
<h2 class="description">Description</h2>
<p>
Implement this interface to handle events related to browser requests. The functions of this interface will be called on the thread indicated. </p>
<p>
<p>UNKNOWN
<p>&lt;see href=&quot;<a href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h">https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_request_handler_capi.h</a>&quot;&gt;CEF source file: /include/capi/cef_request_handler_capi.h (cef_request_handler_t))</p>
<span id="PasDoc-Hierarchy"></span><h2 class="hierarchy">Hierarchy</h2>
<ul class="hierarchy"><li class="ancestor">IInterface</li>
<li class="ancestor"><a class="normal" href="uCEFInterfaces.ICefBaseRefCounted.html">ICefBaseRefCounted</a></li>
<li class="thisitem">ICefRequestHandler</li></ul><h2 class="overview">Overview</h2>
<span id="PasDoc-Methods"></span><h3 class="summary">Methods</h3>
<table class="summary wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>function <strong><a href="uCEFInterfaces.ICefRequestHandler.html#OnBeforeBrowse-ICefBrowser-ICefFrame-ICefRequest-Boolean-Boolean-">OnBeforeBrowse</a></strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; const frame: <a href="uCEFInterfaces.ICefFrame.html">ICefFrame</a>; const request: <a href="uCEFInterfaces.ICefRequest.html">ICefRequest</a>; user_gesture, isRedirect: Boolean): Boolean;</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>function <strong><a href="uCEFInterfaces.ICefRequestHandler.html#OnOpenUrlFromTab-ICefBrowser-ICefFrame-ustring-TCefWindowOpenDisposition-Boolean-">OnOpenUrlFromTab</a></strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; const frame: <a href="uCEFInterfaces.ICefFrame.html">ICefFrame</a>; const targetUrl: <a href="uCEFTypes.html#ustring">ustring</a>; targetDisposition: <a href="uCEFTypes.html#TCefWindowOpenDisposition">TCefWindowOpenDisposition</a>; userGesture: Boolean): Boolean;</code></td>
</tr>
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFInterfaces.ICefRequestHandler.html#GetResourceRequestHandler-ICefBrowser-ICefFrame-ICefRequest-boolean-boolean-ustring-boolean-ICefResourceRequestHandler-">GetResourceRequestHandler</a></strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; const frame: <a href="uCEFInterfaces.ICefFrame.html">ICefFrame</a>; const request: <a href="uCEFInterfaces.ICefRequest.html">ICefRequest</a>; is_navigation, is_download: boolean; const request_initiator: <a href="uCEFTypes.html#ustring">ustring</a>; var disable_default_handling: boolean; var aResourceRequestHandler : <a href="uCEFInterfaces.ICefResourceRequestHandler.html">ICefResourceRequestHandler</a>);</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>function <strong><a href="uCEFInterfaces.ICefRequestHandler.html#GetAuthCredentials-ICefBrowser-ustring-Boolean-ustring-Integer-ustring-ustring-ICefAuthCallback-">GetAuthCredentials</a></strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; const originUrl: <a href="uCEFTypes.html#ustring">ustring</a>; isProxy: Boolean; const host: <a href="uCEFTypes.html#ustring">ustring</a>; port: Integer; const realm, scheme: <a href="uCEFTypes.html#ustring">ustring</a>; const callback: <a href="uCEFInterfaces.ICefAuthCallback.html">ICefAuthCallback</a>): Boolean;</code></td>
</tr>
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>function <strong><a href="uCEFInterfaces.ICefRequestHandler.html#OnCertificateError-ICefBrowser-TCefErrorcode-ustring-ICefSslInfo-ICefCallback-">OnCertificateError</a></strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; certError: <a href="uCEFTypes.html#TCefErrorCode">TCefErrorcode</a>; const requestUrl: <a href="uCEFTypes.html#ustring">ustring</a>; const sslInfo: <a href="uCEFInterfaces.ICefSslInfo.html">ICefSslInfo</a>; const callback: <a href="uCEFInterfaces.ICefCallback.html">ICefCallback</a>): Boolean;</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>function <strong><a href="uCEFInterfaces.ICefRequestHandler.html#OnSelectClientCertificate-ICefBrowser-boolean-ustring-integer-NativeUInt-TCefX509CertificateArray-ICefSelectClientCertificateCallback-">OnSelectClientCertificate</a></strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; isProxy: boolean; const host: <a href="uCEFTypes.html#ustring">ustring</a>; port: integer; certificatesCount: <a href="uCEFTypes.html#NativeUInt">NativeUInt</a>; const certificates: <a href="uCEFInterfaces.html#TCefX509CertificateArray">TCefX509CertificateArray</a>; const callback: <a href="uCEFInterfaces.ICefSelectClientCertificateCallback.html">ICefSelectClientCertificateCallback</a>): boolean;</code></td>
</tr>
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFInterfaces.ICefRequestHandler.html#OnRenderViewReady-ICefBrowser-">OnRenderViewReady</a></strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>);</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFInterfaces.ICefRequestHandler.html#OnRenderProcessTerminated-ICefBrowser-TCefTerminationStatus-">OnRenderProcessTerminated</a></strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; status: <a href="uCEFTypes.html#TCefTerminationStatus">TCefTerminationStatus</a>);</code></td>
</tr>
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFInterfaces.ICefRequestHandler.html#OnDocumentAvailableInMainFrame-ICefBrowser-">OnDocumentAvailableInMainFrame</a></strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>);</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFInterfaces.ICefRequestHandler.html#RemoveReferences">RemoveReferences</a></strong>;</code></td>
</tr>
</table>
<h2 class="description">Description</h2>
<h3 class="detail">Methods</h3>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="OnBeforeBrowse-ICefBrowser-ICefFrame-ICefRequest-Boolean-Boolean-"></span><code>function <strong>OnBeforeBrowse</strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; const frame: <a href="uCEFInterfaces.ICefFrame.html">ICefFrame</a>; const request: <a href="uCEFInterfaces.ICefRequest.html">ICefRequest</a>; user_gesture, isRedirect: Boolean): Boolean;</code></td>
</tr>
<tr><td colspan="2">
<p>
Called on the UI thread before browser navigation. Return true (1) to cancel the navigation or false (0) to allow the navigation to proceed. The |request| object cannot be modified in this callback. ICefLoadHandler.OnLoadingStateChange will be called twice in all cases. If the navigation is allowed ICefLoadHandler.OnLoadStart and ICefLoadHandler.OnLoadEnd will be called. If the navigation is canceled ICefLoadHandler.OnLoadError will be called with an |errorCode| value of ERR_ABORTED. The |user_gesture| value will be true (1) if the browser navigated via explicit user gesture (e.g. clicking a link) or false (0) if it navigated automatically (e.g. via the DomContentLoaded event). </p>
<h6 class="description_section">Attributes</h6>
<dl class="attributes">
<dt>GUID['{050877A9-D1F8-4EB3-B58E-50DC3E3D39FD}']</dt>
<dd></dd>
</dl>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="OnOpenUrlFromTab-ICefBrowser-ICefFrame-ustring-TCefWindowOpenDisposition-Boolean-"></span><code>function <strong>OnOpenUrlFromTab</strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; const frame: <a href="uCEFInterfaces.ICefFrame.html">ICefFrame</a>; const targetUrl: <a href="uCEFTypes.html#ustring">ustring</a>; targetDisposition: <a href="uCEFTypes.html#TCefWindowOpenDisposition">TCefWindowOpenDisposition</a>; userGesture: Boolean): Boolean;</code></td>
</tr>
<tr><td colspan="2">
<p>
Called on the UI thread before OnBeforeBrowse in certain limited cases where navigating a new or different browser might be desirable. This includes user-initiated navigation that might open in a special way (e.g. links clicked via middle-click or ctrl + left-click) and certain types of cross-origin navigation initiated from the renderer process (e.g. navigating the top-level frame to/from a file URL). The |browser| and |frame| values represent the source of the navigation. The |target_disposition| value indicates where the user intended to navigate the browser based on standard Chromium behaviors (e.g. current tab, new tab, etc). The |user_gesture| value will be true (1) if the browser navigated via explicit user gesture (e.g. clicking a link) or false (0) if it navigated automatically (e.g. via the DomContentLoaded event). Return true (1) to cancel the navigation or false (0) to allow the navigation to proceed in the source browser's top-level frame. </p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="GetResourceRequestHandler-ICefBrowser-ICefFrame-ICefRequest-boolean-boolean-ustring-boolean-ICefResourceRequestHandler-"></span><code>procedure <strong>GetResourceRequestHandler</strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; const frame: <a href="uCEFInterfaces.ICefFrame.html">ICefFrame</a>; const request: <a href="uCEFInterfaces.ICefRequest.html">ICefRequest</a>; is_navigation, is_download: boolean; const request_initiator: <a href="uCEFTypes.html#ustring">ustring</a>; var disable_default_handling: boolean; var aResourceRequestHandler : <a href="uCEFInterfaces.ICefResourceRequestHandler.html">ICefResourceRequestHandler</a>);</code></td>
</tr>
<tr><td colspan="2">
<p>
Called on the browser process IO thread before a resource request is initiated. The |browser| and |frame| values represent the source of the request. |request| represents the request contents and cannot be modified in this callback. |is_navigation| will be true (1) if the resource request is a navigation. |is_download| will be true (1) if the resource request is a download. |request_initiator| is the origin (scheme + domain) of the page that initiated the request. Set |disable_default_handling| to true (1) to disable default handling of the request, in which case it will need to be handled via ICefResourceRequestHandler.GetResourceHandler or it will be canceled. To allow the resource load to proceed with default handling return NULL. To specify a handler for the resource return a ICefResourceRequestHandler object. If this callback returns NULL the same function will be called on the associated ICefRequestContextHandler, if any. </p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="GetAuthCredentials-ICefBrowser-ustring-Boolean-ustring-Integer-ustring-ustring-ICefAuthCallback-"></span><code>function <strong>GetAuthCredentials</strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; const originUrl: <a href="uCEFTypes.html#ustring">ustring</a>; isProxy: Boolean; const host: <a href="uCEFTypes.html#ustring">ustring</a>; port: Integer; const realm, scheme: <a href="uCEFTypes.html#ustring">ustring</a>; const callback: <a href="uCEFInterfaces.ICefAuthCallback.html">ICefAuthCallback</a>): Boolean;</code></td>
</tr>
<tr><td colspan="2">
<p>
Called on the IO thread when the browser needs credentials from the user. |origin_url| is the origin making this authentication request. |isProxy| indicates whether the host is a proxy server. |host| contains the hostname and |port| contains the port number. |realm| is the realm of the challenge and may be NULL. |scheme| is the authentication scheme used, such as &quot;basic&quot; or &quot;digest&quot;, and will be NULL if the source of the request is an FTP server. Return true (1) to continue the request and call ICefAuthCallback.cont() either in this function or at a later time when the authentication information is available. Return false (0) to cancel the request immediately. </p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="OnCertificateError-ICefBrowser-TCefErrorcode-ustring-ICefSslInfo-ICefCallback-"></span><code>function <strong>OnCertificateError</strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; certError: <a href="uCEFTypes.html#TCefErrorCode">TCefErrorcode</a>; const requestUrl: <a href="uCEFTypes.html#ustring">ustring</a>; const sslInfo: <a href="uCEFInterfaces.ICefSslInfo.html">ICefSslInfo</a>; const callback: <a href="uCEFInterfaces.ICefCallback.html">ICefCallback</a>): Boolean;</code></td>
</tr>
<tr><td colspan="2">
<p>
Called on the UI thread to handle requests for URLs with an invalid SSL certificate. Return true (1) and call ICefCallback functions either in this function or at a later time to continue or cancel the request. Return false (0) to cancel the request immediately. If TCefSettings.ignore_certificate_errors is set all invalid certificates will be accepted without calling this function. </p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="OnSelectClientCertificate-ICefBrowser-boolean-ustring-integer-NativeUInt-TCefX509CertificateArray-ICefSelectClientCertificateCallback-"></span><code>function <strong>OnSelectClientCertificate</strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; isProxy: boolean; const host: <a href="uCEFTypes.html#ustring">ustring</a>; port: integer; certificatesCount: <a href="uCEFTypes.html#NativeUInt">NativeUInt</a>; const certificates: <a href="uCEFInterfaces.html#TCefX509CertificateArray">TCefX509CertificateArray</a>; const callback: <a href="uCEFInterfaces.ICefSelectClientCertificateCallback.html">ICefSelectClientCertificateCallback</a>): boolean;</code></td>
</tr>
<tr><td colspan="2">
<p>
Called on the UI thread when a client certificate is being requested for authentication. Return false (0) to use the default behavior and automatically select the first certificate available. Return true (1) and call ICefSelectClientCertificateCallback.Select either in this function or at a later time to select a certificate. Do not call Select or call it with NULL to continue without using any certificate. |isProxy| indicates whether the host is an HTTPS proxy or the origin server. |host| and |port| contains the hostname and port of the SSL server. |certificates| is the list of certificates to choose from; this list has already been pruned by Chromium so that it only contains certificates from issuers that the server trusts. </p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="OnRenderViewReady-ICefBrowser-"></span><code>procedure <strong>OnRenderViewReady</strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>);</code></td>
</tr>
<tr><td colspan="2">
<p>
Called on the browser process UI thread when the render view associated with |browser| is ready to receive/handle IPC messages in the render process. </p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="OnRenderProcessTerminated-ICefBrowser-TCefTerminationStatus-"></span><code>procedure <strong>OnRenderProcessTerminated</strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; status: <a href="uCEFTypes.html#TCefTerminationStatus">TCefTerminationStatus</a>);</code></td>
</tr>
<tr><td colspan="2">
<p>
Called on the browser process UI thread when the render process terminates unexpectedly. |status| indicates how the process terminated. </p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="OnDocumentAvailableInMainFrame-ICefBrowser-"></span><code>procedure <strong>OnDocumentAvailableInMainFrame</strong>(const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>);</code></td>
</tr>
<tr><td colspan="2">
<p>
Called on the browser process UI thread when the window.document object of the main frame has been created. </p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="RemoveReferences"></span><code>procedure <strong>RemoveReferences</strong>;</code></td>
</tr>
<tr><td colspan="2">
<p>
Custom procedure to clear all references. </p>
</td></tr>
</table>
<hr><span class="appinfo"><em>Generated by <a href="https://pasdoc.github.io/">PasDoc 0.16.0-snapshot</a>. </em>
</span>
</body></html>