1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-09-30 21:28:55 +02:00

Update to CEF 75.0.7

This commit is contained in:
Salvador Díaz Fau
2019-06-16 10:31:13 +02:00
parent 22f4a1d6d8
commit 52fca97884
186 changed files with 4104 additions and 1826 deletions

View File

@@ -79,7 +79,7 @@ type
procedure FormShow(Sender: TObject);
procedure Chromium1ProcessMessageReceived(Sender: TObject;
const browser: ICefBrowser; sourceProcess: TCefProcessId;
const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId;
const message: ICefProcessMessage; out Result: Boolean);
procedure Chromium1BeforeContextMenu(Sender: TObject;
const browser: ICefBrowser; const frame: ICefFrame;
@@ -95,6 +95,7 @@ type
targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean;
const popupFeatures: TCefPopupFeatures; var windowInfo: TCefWindowInfo;
var client: ICefClient; var settings: TCefBrowserSettings;
var extra_info: ICefDictionaryValue;
var noJavascriptAccess: Boolean; var Result: Boolean);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser;
@@ -208,7 +209,9 @@ procedure TJSEvalFrm.Chromium1BeforePopup(Sender: TObject;
targetFrameName: ustring; targetDisposition: TCefWindowOpenDisposition;
userGesture: Boolean; const popupFeatures: TCefPopupFeatures;
var windowInfo: TCefWindowInfo; var client: ICefClient;
var settings: TCefBrowserSettings; var noJavascriptAccess: Boolean;
var settings: TCefBrowserSettings;
var extra_info: ICefDictionaryValue;
var noJavascriptAccess: Boolean;
var Result: Boolean);
begin
// For simplicity, this demo blocks all popup windows and new tabs
@@ -393,9 +396,10 @@ begin
end;
procedure ParseEvalJsAnswer(const pMessage : ICefProcessMessage;
pBrowser : ICefBrowser;
pReturnValue : ICefv8Value;
pException : ICefV8Exception);
const pBrowser : ICefBrowser;
const pFrame : ICefFrame;
const pReturnValue : ICefv8Value;
const pException : ICefV8Exception);
var
pAnswer : ICefProcessMessage;
strResult : String;
@@ -431,10 +435,10 @@ begin
end;
end;
pBrowser.SendProcessMessage(PID_BROWSER, pAnswer);
pFrame.SendProcessMessage(PID_BROWSER, pAnswer);
end;
procedure ParseBinaryValue(const pBrowser : ICefBrowser; const aBinaryValue : ICefBinaryValue);
procedure ParseBinaryValue(const pBrowser : ICefBrowser; const pFrame : ICefFrame; const aBinaryValue : ICefBinaryValue);
var
pAnswer : ICefProcessMessage;
TempBuffer : TBytes;
@@ -461,7 +465,7 @@ begin
'Encoded image : ' + EncodeBase64(TempPointer, TempSize);
if pAnswer.ArgumentList.SetString(0, TempString) then
pBrowser.SendProcessMessage(PID_BROWSER, pAnswer);
pFrame.SendProcessMessage(PID_BROWSER, pAnswer);
end;
end;
except
@@ -474,6 +478,7 @@ begin
end;
procedure RenderProcessHandler_OnProcessMessageReceivedEvent(const pBrowser : ICefBrowser;
const pFrame : ICefFrame;
uSourceProcess : TCefProcessId;
const pMessage : ICefProcessMessage;
var aHandled : boolean);
@@ -499,7 +504,7 @@ begin
if pV8Context.Enter then
begin
pV8Context.Eval(TempScript, '', 1, pReturnValue, pException);
ParseEvalJsAnswer(pMessage, pBrowser, pReturnValue, pException);
ParseEvalJsAnswer(pMessage, pBrowser, pFrame, pReturnValue, pException);
pV8Context.Exit;
end;
end;
@@ -510,7 +515,7 @@ begin
if (pMessage.Name = BINARY_PARAM_JS) then
begin
TempBinValue := pMessage.ArgumentList.GetBinary(0);
ParseBinaryValue(pBrowser, TempBinValue);
ParseBinaryValue(pBrowser, pFrame, TempBinValue);
aHandled := True;
end;
end;
@@ -519,10 +524,12 @@ procedure CreateGlobalCEFApp;
begin
GlobalCEFApp := TCefApplication.Create;
GlobalCEFApp.OnProcessMessageReceived := RenderProcessHandler_OnProcessMessageReceivedEvent;
GlobalCEFApp.DisableFeatures := 'NetworkService';
end;
procedure TJSEvalFrm.Chromium1ProcessMessageReceived(Sender : TObject;
procedure TJSEvalFrm.Chromium1ProcessMessageReceived( Sender : TObject;
const browser : ICefBrowser;
const frame : ICefFrame;
sourceProcess : TCefProcessId;
const message : ICefProcessMessage;
out Result : Boolean);