You've already forked CEF4Delphi
mirror of
https://github.com/salvadordf/CEF4Delphi.git
synced 2025-11-23 21:34:53 +02:00
Update to CEF 75.0.7
This commit is contained in:
@@ -56,18 +56,9 @@ type
|
||||
protected
|
||||
function OnBeforeBrowse(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; user_gesture, isRedirect: Boolean): Boolean; virtual;
|
||||
function OnOpenUrlFromTab(const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean): Boolean; virtual;
|
||||
function OnBeforeResourceLoad(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const callback: ICefRequestCallback): TCefReturnValue; virtual;
|
||||
function GetResourceHandler(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest): ICefResourceHandler; virtual;
|
||||
procedure OnResourceRedirect(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; var newUrl: ustring); virtual;
|
||||
function OnResourceResponse(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse): Boolean; virtual;
|
||||
function GetResourceResponseFilter(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse): ICefResponseFilter; virtual;
|
||||
procedure OnResourceLoadComplete(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; status: TCefUrlRequestStatus; receivedContentLength: Int64); virtual;
|
||||
procedure GetResourceRequestHandler(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; is_navigation, is_download: boolean; const request_initiator: ustring; var disable_default_handling: boolean; var aResourceRequestHandler : ICefResourceRequestHandler); virtual;
|
||||
function GetAuthCredentials(const browser: ICefBrowser; const frame: ICefFrame; isProxy: Boolean; const host: ustring; port: Integer; const realm, scheme: ustring; const callback: ICefAuthCallback): Boolean; virtual;
|
||||
function CanGetCookies(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest): boolean; virtual;
|
||||
function CanSetCookie(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const cookie : PCefCookie): boolean; virtual;
|
||||
function OnQuotaRequest(const browser: ICefBrowser; const originUrl: ustring; newSize: Int64; const callback: ICefRequestCallback): Boolean; virtual;
|
||||
function GetCookieManager(const browser: ICefBrowser; const mainUrl: ustring): ICefCookieManager; virtual;
|
||||
procedure OnProtocolExecution(const browser: ICefBrowser; const url: ustring; out allowOsExecution: Boolean); virtual;
|
||||
function OnCertificateError(const browser: ICefBrowser; certError: TCefErrorcode; const requestUrl: ustring; const sslInfo: ICefSslInfo; const callback: ICefRequestCallback): Boolean; virtual;
|
||||
function OnSelectClientCertificate(const browser: ICefBrowser; isProxy: boolean; const host: ustring; port: integer; certificatesCount: NativeUInt; const certificates: TCefX509CertificateArray; const callback: ICefSelectClientCertificateCallback): boolean; virtual;
|
||||
procedure OnPluginCrashed(const browser: ICefBrowser; const pluginPath: ustring); virtual;
|
||||
@@ -82,32 +73,26 @@ type
|
||||
|
||||
TCustomRequestHandler = class(TCefRequestHandlerOwn)
|
||||
protected
|
||||
FEvents : Pointer;
|
||||
FEvents : Pointer;
|
||||
FResourceRequestHandler : ICefResourceRequestHandler;
|
||||
|
||||
function OnBeforeBrowse(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; user_gesture, isRedirect: Boolean): Boolean; override;
|
||||
function OnOpenUrlFromTab(const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean): Boolean; override;
|
||||
function OnBeforeResourceLoad(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const callback: ICefRequestCallback): TCefReturnValue; override;
|
||||
function GetResourceHandler(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest): ICefResourceHandler; override;
|
||||
procedure OnResourceRedirect(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; var newUrl: ustring); override;
|
||||
function OnResourceResponse(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse): Boolean; override;
|
||||
function GetResourceResponseFilter(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse): ICefResponseFilter; override;
|
||||
procedure OnResourceLoadComplete(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; status: TCefUrlRequestStatus; receivedContentLength: Int64); override;
|
||||
procedure GetResourceRequestHandler(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; is_navigation, is_download: boolean; const request_initiator: ustring; var disable_default_handling: boolean; var aResourceRequestHandler : ICefResourceRequestHandler); override;
|
||||
function GetAuthCredentials(const browser: ICefBrowser; const frame: ICefFrame; isProxy: Boolean; const host: ustring; port: Integer; const realm, scheme: ustring; const callback: ICefAuthCallback): Boolean; override;
|
||||
function CanGetCookies(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest): boolean; override;
|
||||
function CanSetCookie(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const cookie : PCefCookie): boolean; override;
|
||||
function OnQuotaRequest(const browser: ICefBrowser; const originUrl: ustring; newSize: Int64; const callback: ICefRequestCallback): Boolean; override;
|
||||
procedure OnProtocolExecution(const browser: ICefBrowser; const url: ustring; out allowOsExecution: Boolean); override;
|
||||
function OnCertificateError(const browser: ICefBrowser; certError: TCefErrorcode; const requestUrl: ustring; const sslInfo: ICefSslInfo; const callback: ICefRequestCallback): Boolean; override;
|
||||
function OnSelectClientCertificate(const browser: ICefBrowser; isProxy: boolean; const host: ustring; port: integer; certificatesCount: NativeUInt; const certificates: TCefX509CertificateArray; const callback: ICefSelectClientCertificateCallback): boolean; override;
|
||||
procedure OnPluginCrashed(const browser: ICefBrowser; const pluginPath: ustring); override;
|
||||
procedure OnRenderViewReady(const browser: ICefBrowser); override;
|
||||
procedure OnRenderProcessTerminated(const browser: ICefBrowser; status: TCefTerminationStatus); override;
|
||||
|
||||
procedure RemoveReferences; override;
|
||||
procedure InitializeVars;
|
||||
|
||||
public
|
||||
constructor Create(const events: Pointer); reintroduce; virtual;
|
||||
destructor Destroy; override;
|
||||
procedure BeforeDestruction; override;
|
||||
procedure RemoveReferences; override;
|
||||
end;
|
||||
|
||||
implementation
|
||||
@@ -120,7 +105,7 @@ uses
|
||||
{$ENDIF}
|
||||
uCEFMiscFunctions, uCEFLibFunctions, uCEFBrowser, uCEFFrame, uCEFRequest, uCEFRequestCallback,
|
||||
uCEFResponse, uCEFAuthCallback, uCEFSslInfo, uCEFSelectClientCertificateCallback, uCEFX509Certificate,
|
||||
uCEFApplication;
|
||||
uCEFApplication, uCEFResourceRequestHandler;
|
||||
|
||||
function cef_request_handler_on_before_browse(self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
@@ -162,118 +147,40 @@ begin
|
||||
user_gesture <> 0));
|
||||
end;
|
||||
|
||||
function cef_request_handler_on_before_resource_load(self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
frame : PCefFrame;
|
||||
request : PCefRequest;
|
||||
callback : PCefRequestCallback): TCefReturnValue; stdcall;
|
||||
function cef_request_handler_get_resource_request_handler( self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
frame : PCefFrame;
|
||||
request : PCefRequest;
|
||||
is_navigation : Integer;
|
||||
is_download : Integer;
|
||||
const request_initiator : PCefString;
|
||||
disable_default_handling : PInteger): PCefResourceRequestHandler; stdcall;
|
||||
var
|
||||
TempObject : TObject;
|
||||
TempDisableDefHandling : boolean;
|
||||
TempResourceRequestHandler : ICefResourceRequestHandler;
|
||||
begin
|
||||
Result := RV_CONTINUE;
|
||||
TempObject := CefGetObject(self);
|
||||
|
||||
Result := nil;
|
||||
TempResourceRequestHandler := nil;
|
||||
TempObject := CefGetObject(self);
|
||||
TempDisableDefHandling := disable_default_handling^ <> 0;
|
||||
|
||||
if (TempObject <> nil) and (TempObject is TCefRequestHandlerOwn) then
|
||||
Result := TCefRequestHandlerOwn(TempObject).OnBeforeResourceLoad(TCefBrowserRef.UnWrap(browser),
|
||||
TCefFrameRef.UnWrap(frame),
|
||||
TCefRequestRef.UnWrap(request),
|
||||
TcefRequestCallbackRef.UnWrap(callback));
|
||||
end;
|
||||
try
|
||||
TCefRequestHandlerOwn(TempObject).GetResourceRequestHandler(TCefBrowserRef.UnWrap(browser),
|
||||
TCefFrameRef.UnWrap(frame),
|
||||
TCefRequestRef.UnWrap(request),
|
||||
is_navigation <> 0,
|
||||
is_download <> 0,
|
||||
CefString(request_initiator),
|
||||
TempDisableDefHandling,
|
||||
TempResourceRequestHandler);
|
||||
|
||||
function cef_request_handler_get_resource_handler(self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
frame : PCefFrame;
|
||||
request : PCefRequest): PCefResourceHandler; stdcall;
|
||||
var
|
||||
TempObject : TObject;
|
||||
begin
|
||||
Result := nil;
|
||||
TempObject := CefGetObject(self);
|
||||
|
||||
if (TempObject <> nil) and (TempObject is TCefRequestHandlerOwn) then
|
||||
Result := CefGetData(TCefRequestHandlerOwn(TempObject).GetResourceHandler(TCefBrowserRef.UnWrap(browser),
|
||||
TCefFrameRef.UnWrap(frame),
|
||||
TCefRequestRef.UnWrap(request)));
|
||||
end;
|
||||
|
||||
procedure cef_request_handler_on_resource_redirect(self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
frame : PCefFrame;
|
||||
request : PCefRequest;
|
||||
response : PCefResponse;
|
||||
new_url : PCefString); stdcall;
|
||||
var
|
||||
TempURL : ustring;
|
||||
TempObject : TObject;
|
||||
begin
|
||||
TempURL := CefString(new_url);
|
||||
TempObject := CefGetObject(self);
|
||||
|
||||
if (TempObject <> nil) and (TempObject is TCefRequestHandlerOwn) then
|
||||
TCefRequestHandlerOwn(TempObject).OnResourceRedirect(TCefBrowserRef.UnWrap(browser),
|
||||
TCefFrameRef.UnWrap(frame),
|
||||
TCefRequestRef.UnWrap(request),
|
||||
TCefResponseRef.UnWrap(response),
|
||||
TempURL);
|
||||
|
||||
if (TempURL <> '') then CefStringSet(new_url, TempURL);
|
||||
end;
|
||||
|
||||
function cef_request_handler_on_resource_response(self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
frame : PCefFrame;
|
||||
request : PCefRequest;
|
||||
response : PCefResponse): Integer; stdcall;
|
||||
var
|
||||
TempObject : TObject;
|
||||
begin
|
||||
Result := Ord(False);
|
||||
TempObject := CefGetObject(self);
|
||||
|
||||
if (TempObject <> nil) and (TempObject is TCefRequestHandlerOwn) then
|
||||
Result := Ord(TCefRequestHandlerOwn(TempObject).OnResourceResponse(TCefBrowserRef.UnWrap(browser),
|
||||
TCefFrameRef.UnWrap(frame),
|
||||
TCefRequestRef.UnWrap(request),
|
||||
TCefResponseRef.UnWrap(response)));
|
||||
end;
|
||||
|
||||
function cef_request_handler_get_resource_response_filter(self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
frame : PCefFrame;
|
||||
request : PCefRequest;
|
||||
response : PCefResponse): PCefResponseFilter; stdcall;
|
||||
var
|
||||
TempObject : TObject;
|
||||
begin
|
||||
Result := nil;
|
||||
TempObject := CefGetObject(self);
|
||||
|
||||
if (TempObject <> nil) and (TempObject is TCefRequestHandlerOwn) then
|
||||
Result := CefGetData(TCefRequestHandlerOwn(TempObject).GetResourceResponseFilter(TCefBrowserRef.UnWrap(browser),
|
||||
TCefFrameRef.UnWrap(frame),
|
||||
TCefRequestRef.UnWrap(request),
|
||||
TCefResponseRef.UnWrap(response)));
|
||||
end;
|
||||
|
||||
procedure cef_request_handler_on_resource_load_complete(self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
frame : PCefFrame;
|
||||
request : PCefRequest;
|
||||
response : PCefResponse;
|
||||
status : TCefUrlRequestStatus;
|
||||
received_content_length : Int64); stdcall;
|
||||
var
|
||||
TempObject : TObject;
|
||||
begin
|
||||
TempObject := CefGetObject(self);
|
||||
|
||||
if (TempObject <> nil) and (TempObject is TCefRequestHandlerOwn) then
|
||||
TCefRequestHandlerOwn(TempObject).OnResourceLoadComplete(TCefBrowserRef.UnWrap(browser),
|
||||
TCefFrameRef.UnWrap(frame),
|
||||
TCefRequestRef.UnWrap(request),
|
||||
TCefResponseRef.UnWrap(response),
|
||||
status,
|
||||
received_content_length);
|
||||
Result := CefGetData(TempResourceRequestHandler);
|
||||
disable_default_handling^ := Ord(TempDisableDefHandling);
|
||||
finally
|
||||
TempResourceRequestHandler := nil;
|
||||
end;
|
||||
end;
|
||||
|
||||
function cef_request_handler_get_auth_credentials( self : PCefRequestHandler;
|
||||
@@ -302,40 +209,6 @@ begin
|
||||
TCefAuthCallbackRef.UnWrap(callback)));
|
||||
end;
|
||||
|
||||
function cef_request_handler_can_get_cookies(self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
frame : PCefFrame;
|
||||
request : PCefRequest): Integer; stdcall;
|
||||
var
|
||||
TempObject : TObject;
|
||||
begin
|
||||
Result := Ord(True);
|
||||
TempObject := CefGetObject(self);
|
||||
|
||||
if (TempObject <> nil) and (TempObject is TCefRequestHandlerOwn) then
|
||||
Result := Ord(TCefRequestHandlerOwn(TempObject).CanGetCookies(TCefBrowserRef.UnWrap(browser),
|
||||
TCefFrameRef.UnWrap(frame),
|
||||
TCefRequestRef.UnWrap(request)));
|
||||
end;
|
||||
|
||||
function cef_request_handler_can_set_cookie( self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
frame : PCefFrame;
|
||||
request : PCefRequest;
|
||||
const cookie : PCefCookie): Integer; stdcall;
|
||||
var
|
||||
TempObject : TObject;
|
||||
begin
|
||||
Result := Ord(True);
|
||||
TempObject := CefGetObject(self);
|
||||
|
||||
if (TempObject <> nil) and (TempObject is TCefRequestHandlerOwn) then
|
||||
Result := Ord(TCefRequestHandlerOwn(TempObject).CanSetCookie(TCefBrowserRef.UnWrap(browser),
|
||||
TCefFrameRef.UnWrap(frame),
|
||||
TCefRequestRef.UnWrap(request),
|
||||
cookie));
|
||||
end;
|
||||
|
||||
function cef_request_handler_on_quota_request( self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
const origin_url : PCefString;
|
||||
@@ -354,25 +227,6 @@ begin
|
||||
TCefRequestCallbackRef.UnWrap(callback)));
|
||||
end;
|
||||
|
||||
procedure cef_request_handler_on_protocol_execution( self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
const url : PCefString;
|
||||
allow_os_execution : PInteger); stdcall;
|
||||
var
|
||||
allow : Boolean;
|
||||
TempObject : TObject;
|
||||
begin
|
||||
allow := allow_os_execution^ <> 0;
|
||||
TempObject := CefGetObject(self);
|
||||
|
||||
if (TempObject <> nil) and (TempObject is TCefRequestHandlerOwn) then
|
||||
TCefRequestHandlerOwn(TempObject).OnProtocolExecution(TCefBrowserRef.UnWrap(browser),
|
||||
CefString(url),
|
||||
allow);
|
||||
|
||||
allow_os_execution^ := Ord(allow);
|
||||
end;
|
||||
|
||||
function cef_request_handler_on_certificate_error( self : PCefRequestHandler;
|
||||
browser : PCefBrowser;
|
||||
cert_error : TCefErrorcode;
|
||||
@@ -498,17 +352,9 @@ begin
|
||||
begin
|
||||
on_before_browse := {$IFDEF FPC}@{$ENDIF}cef_request_handler_on_before_browse;
|
||||
on_open_urlfrom_tab := {$IFDEF FPC}@{$ENDIF}cef_request_handler_on_open_urlfrom_tab;
|
||||
on_before_resource_load := {$IFDEF FPC}@{$ENDIF}cef_request_handler_on_before_resource_load;
|
||||
get_resource_handler := {$IFDEF FPC}@{$ENDIF}cef_request_handler_get_resource_handler;
|
||||
on_resource_redirect := {$IFDEF FPC}@{$ENDIF}cef_request_handler_on_resource_redirect;
|
||||
on_resource_response := {$IFDEF FPC}@{$ENDIF}cef_request_handler_on_resource_response;
|
||||
get_resource_response_filter := {$IFDEF FPC}@{$ENDIF}cef_request_handler_get_resource_response_filter;
|
||||
on_resource_load_complete := {$IFDEF FPC}@{$ENDIF}cef_request_handler_on_resource_load_complete;
|
||||
get_resource_request_handler := {$IFDEF FPC}@{$ENDIF}cef_request_handler_get_resource_request_handler;
|
||||
get_auth_credentials := {$IFDEF FPC}@{$ENDIF}cef_request_handler_get_auth_credentials;
|
||||
can_get_cookies := {$IFDEF FPC}@{$ENDIF}cef_request_handler_can_get_cookies;
|
||||
can_set_cookie := {$IFDEF FPC}@{$ENDIF}cef_request_handler_can_set_cookie;
|
||||
on_quota_request := {$IFDEF FPC}@{$ENDIF}cef_request_handler_on_quota_request;
|
||||
on_protocol_execution := {$IFDEF FPC}@{$ENDIF}cef_request_handler_on_protocol_execution;
|
||||
on_certificate_error := {$IFDEF FPC}@{$ENDIF}cef_request_handler_on_certificate_error;
|
||||
on_select_client_certificate := {$IFDEF FPC}@{$ENDIF}cef_request_handler_on_select_client_certificate;
|
||||
on_plugin_crashed := {$IFDEF FPC}@{$ENDIF}cef_request_handler_on_plugin_crashed;
|
||||
@@ -529,27 +375,6 @@ begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
function TCefRequestHandlerOwn.CanGetCookies(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest): boolean;
|
||||
begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function TCefRequestHandlerOwn.CanSetCookie(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const cookie : PCefCookie): boolean;
|
||||
begin
|
||||
Result := True;
|
||||
end;
|
||||
|
||||
function TCefRequestHandlerOwn.GetCookieManager(const browser : ICefBrowser;
|
||||
const mainUrl : ustring): ICefCookieManager;
|
||||
begin
|
||||
Result := nil;
|
||||
end;
|
||||
|
||||
function TCefRequestHandlerOwn.OnBeforeBrowse(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
@@ -559,14 +384,6 @@ begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
function TCefRequestHandlerOwn.OnBeforeResourceLoad(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const callback : ICefRequestCallback): TCefReturnValue;
|
||||
begin
|
||||
Result := RV_CONTINUE;
|
||||
end;
|
||||
|
||||
function TCefRequestHandlerOwn.OnCertificateError(const browser : ICefBrowser;
|
||||
certError : TCefErrorcode;
|
||||
const requestUrl : ustring;
|
||||
@@ -596,11 +413,16 @@ begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
function TCefRequestHandlerOwn.GetResourceHandler(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest): ICefResourceHandler;
|
||||
procedure TCefRequestHandlerOwn.GetResourceRequestHandler(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
is_navigation : boolean;
|
||||
is_download : boolean;
|
||||
const request_initiator : ustring;
|
||||
var disable_default_handling : boolean;
|
||||
var aResourceRequestHandler : ICefResourceRequestHandler);
|
||||
begin
|
||||
Result := nil;
|
||||
aResourceRequestHandler := nil;
|
||||
end;
|
||||
|
||||
procedure TCefRequestHandlerOwn.OnPluginCrashed(const browser : ICefBrowser;
|
||||
@@ -609,13 +431,6 @@ begin
|
||||
//
|
||||
end;
|
||||
|
||||
procedure TCefRequestHandlerOwn.OnProtocolExecution(const browser : ICefBrowser;
|
||||
const url : ustring;
|
||||
out allowOsExecution : Boolean);
|
||||
begin
|
||||
//
|
||||
end;
|
||||
|
||||
function TCefRequestHandlerOwn.OnQuotaRequest(const browser : ICefBrowser;
|
||||
const originUrl : ustring;
|
||||
newSize : Int64;
|
||||
@@ -635,41 +450,6 @@ begin
|
||||
//
|
||||
end;
|
||||
|
||||
procedure TCefRequestHandlerOwn.OnResourceRedirect(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const response : ICefResponse;
|
||||
var newUrl : ustring);
|
||||
begin
|
||||
//
|
||||
end;
|
||||
|
||||
function TCefRequestHandlerOwn.OnResourceResponse(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const response : ICefResponse): Boolean;
|
||||
begin
|
||||
Result := False;
|
||||
end;
|
||||
|
||||
function TCefRequestHandlerOwn.GetResourceResponseFilter(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const response : ICefResponse): ICefResponseFilter;
|
||||
begin
|
||||
Result := nil;
|
||||
end;
|
||||
|
||||
procedure TCefRequestHandlerOwn.OnResourceLoadComplete(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const response : ICefResponse;
|
||||
status : TCefUrlRequestStatus;
|
||||
receivedContentLength : Int64);
|
||||
begin
|
||||
//
|
||||
end;
|
||||
|
||||
procedure TCefRequestHandlerOwn.RemoveReferences;
|
||||
begin
|
||||
//
|
||||
@@ -681,19 +461,30 @@ constructor TCustomRequestHandler.Create(const events: Pointer);
|
||||
begin
|
||||
inherited Create;
|
||||
|
||||
FEvents := events;
|
||||
InitializeVars;
|
||||
|
||||
FEvents := events;
|
||||
FResourceRequestHandler := TCustomResourceRequestHandler.Create(FEvents);
|
||||
end;
|
||||
|
||||
destructor TCustomRequestHandler.Destroy;
|
||||
procedure TCustomRequestHandler.BeforeDestruction;
|
||||
begin
|
||||
RemoveReferences;
|
||||
InitializeVars;
|
||||
|
||||
inherited Destroy;
|
||||
inherited BeforeDestruction;
|
||||
end;
|
||||
|
||||
procedure TCustomRequestHandler.RemoveReferences;
|
||||
begin
|
||||
FEvents := nil;
|
||||
|
||||
if (FResourceRequestHandler <> nil) then FResourceRequestHandler.RemoveReferences;
|
||||
end;
|
||||
|
||||
procedure TCustomRequestHandler.InitializeVars;
|
||||
begin
|
||||
FResourceRequestHandler := nil;
|
||||
FEvents := nil;
|
||||
end;
|
||||
|
||||
function TCustomRequestHandler.GetAuthCredentials(const browser : ICefBrowser;
|
||||
@@ -711,37 +502,6 @@ begin
|
||||
Result := inherited GetAuthCredentials(browser, frame, isProxy, host, port, realm, scheme, callback);
|
||||
end;
|
||||
|
||||
function TCustomRequestHandler.CanGetCookies(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest): boolean;
|
||||
begin
|
||||
if (FEvents <> nil) then
|
||||
Result := IChromiumEvents(FEvents).doCanGetCookies(browser, frame, request)
|
||||
else
|
||||
Result := inherited CanGetCookies(browser, frame, request);
|
||||
end;
|
||||
|
||||
function TCustomRequestHandler.CanSetCookie(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const cookie : PCefCookie): boolean;
|
||||
begin
|
||||
if (FEvents <> nil) then
|
||||
Result := IChromiumEvents(FEvents).doCanSetCookie(browser, frame, request, cookie)
|
||||
else
|
||||
Result := inherited CanSetCookie(browser, frame, request, cookie);
|
||||
end;
|
||||
|
||||
function TCustomRequestHandler.GetResourceHandler(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest): ICefResourceHandler;
|
||||
begin
|
||||
if (FEvents <> nil) then
|
||||
Result := IChromiumEvents(FEvents).doOnGetResourceHandler(browser, frame, request)
|
||||
else
|
||||
Result := inherited GetResourceHandler(browser, frame, request);
|
||||
end;
|
||||
|
||||
function TCustomRequestHandler.OnBeforeBrowse(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
@@ -754,17 +514,6 @@ begin
|
||||
Result := inherited OnBeforeBrowse(browser, frame, request, user_gesture, isRedirect);
|
||||
end;
|
||||
|
||||
function TCustomRequestHandler.OnBeforeResourceLoad(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const callback : ICefRequestCallback): TCefReturnValue;
|
||||
begin
|
||||
if (FEvents <> nil) then
|
||||
Result := IChromiumEvents(FEvents).doOnBeforeResourceLoad(browser, frame, request, callback)
|
||||
else
|
||||
Result := inherited OnBeforeResourceLoad(browser, frame, request, callback);
|
||||
end;
|
||||
|
||||
function TCustomRequestHandler.OnCertificateError(const browser : ICefBrowser;
|
||||
certError : TCefErrorcode;
|
||||
const requestUrl : ustring;
|
||||
@@ -789,6 +538,44 @@ begin
|
||||
Result := inherited OnOpenUrlFromTab(browser, frame, targetUrl, targetDisposition, userGesture);
|
||||
end;
|
||||
|
||||
procedure TCustomRequestHandler.GetResourceRequestHandler(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
is_navigation : boolean;
|
||||
is_download : boolean;
|
||||
const request_initiator : ustring;
|
||||
var disable_default_handling : boolean;
|
||||
var aResourceRequestHandler : ICefResourceRequestHandler);
|
||||
var
|
||||
TempUseInternalHandler : boolean;
|
||||
begin
|
||||
if (FEvents <> nil) then
|
||||
|
||||
begin
|
||||
|
||||
TempUseInternalHandler := True;
|
||||
|
||||
|
||||
IChromiumEvents(FEvents).doOnGetResourceRequestHandler(browser, frame, request,
|
||||
|
||||
is_navigation, is_download,
|
||||
|
||||
request_initiator,
|
||||
|
||||
disable_default_handling,
|
||||
|
||||
aResourceRequestHandler,
|
||||
|
||||
TempUseInternalHandler);
|
||||
|
||||
|
||||
if TempUseInternalHandler then
|
||||
|
||||
begin
|
||||
|
||||
if (FResourceRequestHandler <> nil) then
|
||||
|
||||
aResourceRequestHandler := FResourceRequestHandler
|
||||
|
||||
else
|
||||
|
||||
@@ -808,13 +595,6 @@ begin
|
||||
|
||||
function TCustomRequestHandler.OnSelectClientCertificate(const browser : ICefBrowser;
|
||||
isProxy : boolean;
|
||||
procedure TCustomRequestHandler.OnProtocolExecution(const browser : ICefBrowser;
|
||||
const url : ustring;
|
||||
out allowOsExecution : Boolean);
|
||||
begin
|
||||
if (FEvents <> nil) then IChromiumEvents(FEvents).doOnProtocolExecution(browser, url, allowOsExecution);
|
||||
end;
|
||||
|
||||
const host : ustring;
|
||||
port : integer;
|
||||
certificatesCount : NativeUInt;
|
||||
@@ -836,46 +616,4 @@ begin
|
||||
const originUrl : ustring;
|
||||
newSize : Int64;
|
||||
const callback : ICefRequestCallback): Boolean;
|
||||
procedure TCustomRequestHandler.OnResourceRedirect(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const response : ICefResponse;
|
||||
var newUrl : ustring);
|
||||
begin
|
||||
if (FEvents <> nil) then IChromiumEvents(FEvents).doOnResourceRedirect(browser, frame, request, response, newUrl);
|
||||
end;
|
||||
|
||||
function TCustomRequestHandler.OnResourceResponse(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const response : ICefResponse): Boolean;
|
||||
begin
|
||||
if (FEvents <> nil) then
|
||||
Result := IChromiumEvents(FEvents).doOnResourceResponse(browser, frame, request, response)
|
||||
else
|
||||
Result := inherited OnResourceResponse(browser, frame, request, response);
|
||||
end;
|
||||
|
||||
function TCustomRequestHandler.GetResourceResponseFilter(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const response : ICefResponse): ICefResponseFilter;
|
||||
begin
|
||||
if (FEvents <> nil) then
|
||||
Result := IChromiumEvents(FEvents).doOnGetResourceResponseFilter(browser, frame, request, response)
|
||||
else
|
||||
Result := inherited GetResourceResponseFilter(browser, frame, request, response);
|
||||
end;
|
||||
|
||||
procedure TCustomRequestHandler.OnResourceLoadComplete(const browser : ICefBrowser;
|
||||
const frame : ICefFrame;
|
||||
const request : ICefRequest;
|
||||
const response : ICefResponse;
|
||||
status : TCefUrlRequestStatus;
|
||||
receivedContentLength : Int64);
|
||||
begin
|
||||
if (FEvents <> nil) then
|
||||
IChromiumEvents(FEvents).doOnResourceLoadComplete(browser, frame, request, response, status, receivedContentLength);
|
||||
end;
|
||||
|
||||
begin
|
||||
|
||||
Reference in New Issue
Block a user