1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-11-23 21:34:53 +02:00

Update to CEF 83.3.9

This commit is contained in:
Salvador Díaz Fau
2020-05-23 15:00:44 +02:00
parent 58d988487b
commit c44023cb21
24 changed files with 660 additions and 283 deletions

View File

@@ -54,6 +54,7 @@ uses
type
TCefClientRef = class(TCefBaseRefCountedRef, ICefClient)
protected
procedure GetAudioHandler(var aHandler : ICefAudioHandler); virtual;
procedure GetContextMenuHandler(var aHandler : ICefContextMenuHandler); virtual;
procedure GetDialogHandler(var aHandler : ICefDialogHandler); virtual;
procedure GetDisplayHandler(var aHandler : ICefDisplayHandler); virtual;
@@ -77,6 +78,7 @@ type
TCefClientOwn = class(TCefBaseRefCountedOwn, ICefClient)
protected
procedure GetAudioHandler(var aHandler : ICefAudioHandler); virtual;
procedure GetContextMenuHandler(var aHandler : ICefContextMenuHandler); virtual;
procedure GetDialogHandler(var aHandler : ICefDialogHandler); virtual;
procedure GetDisplayHandler(var aHandler : ICefDisplayHandler); virtual;
@@ -101,6 +103,7 @@ type
TCustomClientHandler = class(TCefClientOwn)
protected
FEvents : Pointer;
FAudioHandler : ICefAudioHandler;
FLoadHandler : ICefLoadHandler;
FFocusHandler : ICefFocusHandler;
FContextMenuHandler : ICefContextMenuHandler;
@@ -115,6 +118,7 @@ type
FDragHandler : ICefDragHandler;
FFindHandler : ICefFindHandler;
procedure GetAudioHandler(var aHandler : ICefAudioHandler); override;
procedure GetContextMenuHandler(var aHandler : ICefContextMenuHandler); override;
procedure GetDialogHandler(var aHandler : ICefDialogHandler); override;
procedure GetDisplayHandler(var aHandler : ICefDisplayHandler); override;
@@ -150,7 +154,7 @@ uses
uCEFFocusHandler, uCEFContextMenuHandler, uCEFDialogHandler, uCEFKeyboardHandler,
uCEFDisplayHandler, uCEFDownloadHandler, uCEFJsDialogHandler,
uCEFLifeSpanHandler, uCEFRequestHandler, uCEFRenderHandler, uCEFDragHandler,
uCEFFindHandler, uCEFConstants, uCEFApplicationCore, uCEFFrame;
uCEFFindHandler, uCEFConstants, uCEFApplicationCore, uCEFFrame, uCEFAudioHandler;
// ******************************************************
@@ -165,6 +169,11 @@ begin
Result := nil;
end;
procedure TCefClientRef.GetAudioHandler(var aHandler : ICefAudioHandler);
begin
aHandler := nil;
end;
procedure TCefClientRef.GetContextMenuHandler(var aHandler : ICefContextMenuHandler);
begin
aHandler := nil;
@@ -246,6 +255,23 @@ end;
// ******************************************************
function cef_client_own_get_audio_handler(self: PCefClient): PCefAudioHandler; stdcall;
var
TempObject : TObject;
TempHandler : ICefAudioHandler;
begin
Result := nil;
TempObject := CefGetObject(self);
if (TempObject <> nil) and (TempObject is TCefClientOwn) then
try
TCefClientOwn(TempObject).GetAudioHandler(TempHandler);
if (TempHandler <> nil) then Result := TempHandler.Wrap;
finally
TempHandler := nil;
end;
end;
function cef_client_own_get_context_menu_handler(self: PCefClient): PCefContextMenuHandler; stdcall;
var
TempObject : TObject;
@@ -491,6 +517,7 @@ begin
with PCefClient(FData)^ do
begin
get_audio_handler := {$IFDEF FPC}@{$ENDIF}cef_client_own_get_audio_handler;
get_context_menu_handler := {$IFDEF FPC}@{$ENDIF}cef_client_own_get_context_menu_handler;
get_dialog_handler := {$IFDEF FPC}@{$ENDIF}cef_client_own_get_dialog_handler;
get_display_handler := {$IFDEF FPC}@{$ENDIF}cef_client_own_get_display_handler;
@@ -508,6 +535,11 @@ begin
end;
end;
procedure TCefClientOwn.GetAudioHandler(var aHandler : ICefAudioHandler);
begin
aHandler := nil;
end;
procedure TCefClientOwn.GetContextMenuHandler(var aHandler : ICefContextMenuHandler);
begin
aHandler := nil;
@@ -608,6 +640,7 @@ begin
end
else
begin
if events.MustCreateAudioHandler then FAudioHandler := TCustomAudioHandler.Create(events);
if events.MustCreateLoadHandler then FLoadHandler := TCustomLoadHandler.Create(events);
if events.MustCreateFocusHandler then FFocusHandler := TCustomFocusHandler.Create(events);
if events.MustCreateContextMenuHandler then FContextMenuHandler := TCustomContextMenuHandler.Create(events);
@@ -636,6 +669,7 @@ procedure TCustomClientHandler.RemoveReferences;
begin
FEvents := nil;
if (FAudioHandler <> nil) then FAudioHandler.RemoveReferences;
if (FLoadHandler <> nil) then FLoadHandler.RemoveReferences;
if (FFocusHandler <> nil) then FFocusHandler.RemoveReferences;
if (FContextMenuHandler <> nil) then FContextMenuHandler.RemoveReferences;
@@ -653,6 +687,7 @@ end;
procedure TCustomClientHandler.InitializeVars;
begin
FAudioHandler := nil;
FLoadHandler := nil;
FFocusHandler := nil;
FContextMenuHandler := nil;
@@ -669,6 +704,14 @@ begin
FEvents := nil;
end;
procedure TCustomClientHandler.GetAudioHandler(var aHandler : ICefAudioHandler);
begin
if (FAudioHandler <> nil) then
aHandler := FAudioHandler
else
aHandler := nil;
end;
procedure TCustomClientHandler.GetContextMenuHandler(var aHandler : ICefContextMenuHandler);
begin
if (FContextMenuHandler <> nil) then