1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-07-02 22:26:53 +02:00

Update to CEF 128.4.8

This commit is contained in:
Salvador Díaz Fau
2024-09-03 17:26:03 +02:00
parent ed52c6144c
commit 55a70a998e
338 changed files with 10558 additions and 16111 deletions
README.md
demos
Delphi_FMX_Windows
FMXTabbedBrowser
FMXToolBoxBrowser
SimpleFMXBrowser
Delphi_VCL
CookieVisitor
CustomResourceBrowser
DOMVisitor
DualBrowser
EditorBrowser
ExternalPumpBrowser
FullScreenBrowser
JavaScript
MDIBrowser
MDIExternalPumpBrowser
MediaRouter
MiniBrowser
MiniBrowserD7
MobileBrowser
NetworkTrackerBrowser
PopupBrowser
PopupBrowser2
PostInspectorBrowser
ResponseFilterBrowser
SchemeRegistrationBrowser
SimpleBrowser
SimpleBrowser2
SimpleExternalPumpBrowser
SubProcess
TabbedBrowser
TabbedBrowser2
TinyBrowser
TinyBrowser2
ToolBoxBrowser
ToolBoxBrowser2
ToolBoxSubProcessBrowser
Lazarus_Linux_Console
Lazarus_Linux_GTK2
Lazarus_Linux_GTK3
TinyBrowser
TinyBrowser2
Lazarus_Mac
ExternalPumpBrowser
Lazarus_Windows
CookieVisitor
CustomResourceBrowser
DOMVisitor
EditorBrowser
ExternalPumpBrowser
FullScreenBrowser
JavaScript
MediaRouter
MiniBrowser
MobileBrowser
NetworkTrackerBrowser
OAuth2Tester
OSRExternalPumpBrowser
PopupBrowser
PopupBrowser2
PostInspectorBrowser
ResponseFilterBrowser
SchemeRegistrationBrowser
SchemeRegistrationBrowser_subprocess
SimpleBrowser
SimpleBrowser2
SimpleExternalPumpBrowser
SimpleOSRBrowser2
SubProcess
TabbedBrowser
TabbedBrowser2
TinyBrowser
TinyBrowser2
ToolBoxBrowser
Lazarus_any_OS
docs
cef4delphi.chm
html
AllClasses.htmlAllConstants.htmlAllIdentifiers.htmlAllTypes.htmlAllUnits.htmlAllVariables.htmlClassHierarchy.htmlcef4delphi.hhccef4delphi.hhkcef4delphi.hhpcef4delphi.logindex.htmluCEFApp.TCefAppOwn.htmluCEFApp.TCustomCefApp.htmluCEFApplicationCore.TCefApplicationCore.htmluCEFApplicationCore.htmluCEFBrowser.TCefBrowserHostRef.htmluCEFBrowserProcessHandler.TCefBrowserProcessHandlerOwn.htmluCEFBrowserProcessHandler.TCefCustomBrowserProcessHandler.htmluCEFBrowserView.TCefBrowserViewRef.htmluCEFBrowserViewComponent.TCEFBrowserViewComponent.htmluCEFBrowserViewComponent.htmluCEFBrowserViewDelegate.TCefBrowserViewDelegateOwn.htmluCEFBrowserViewDelegate.TCefBrowserViewDelegateRef.htmluCEFBrowserViewDelegate.TCustomBrowserViewDelegate.htmluCEFChromiumCore.TChromiumCore.htmluCEFChromiumEvents.htmluCEFChromiumOptions.TChromiumOptions.htmluCEFCommandHandler.TCefCommandHandlerOwn.htmluCEFCommandHandler.TCustomCommandHandler.htmluCEFConstants.htmluCEFDisplayHandler.TCefDisplayHandlerOwn.htmluCEFDisplayHandler.TCustomDisplayHandler.htmluCEFExtension.TCefExtensionRef.htmluCEFExtensionHandler.TCefExtensionHandlerOwn.htmluCEFExtensionHandler.TCefExtensionHandlerRef.htmluCEFExtensionHandler.TCustomExtensionHandler.htmluCEFExtensionHandler.htmluCEFGetExtensionResourceCallback.TCefGetExtensionResourceCallbackRef.htmluCEFGetExtensionResourceCallback.htmluCEFInterfaces.ICefApp.htmluCEFInterfaces.ICefBrowserHost.htmluCEFInterfaces.ICefBrowserProcessHandler.htmluCEFInterfaces.ICefBrowserView.htmluCEFInterfaces.ICefBrowserViewDelegate.htmluCEFInterfaces.ICefCommandHandler.htmluCEFInterfaces.ICefDisplayHandler.htmluCEFInterfaces.ICefExtension.htmluCEFInterfaces.ICefExtensionHandler.htmluCEFInterfaces.ICefGetExtensionResourceCallback.htmluCEFInterfaces.ICefLifeSpanHandler.htmluCEFInterfaces.ICefPermissionHandler.htmluCEFInterfaces.ICefRequestContext.htmluCEFInterfaces.ICefRequestHandler.htmluCEFInterfaces.ICefTaskManager.htmluCEFInterfaces.ICefWindowDelegate.htmluCEFInterfaces.ICefWindowDelegateEvents.htmluCEFInterfaces.IChromiumEvents.htmluCEFInterfaces.htmluCEFLibFunctions.htmluCEFLifeSpanHandler.TCefLifeSpanHandlerOwn.htmluCEFLifeSpanHandler.TCustomLifeSpanHandler.htmluCEFPermissionHandler.TCefPermissionHandlerOwn.htmluCEFPermissionHandler.TCustomPermissionHandler.htmluCEFRequestContext.TCefRequestContextRef.htmluCEFRequestHandler.TCefRequestHandlerOwn.htmluCEFRequestHandler.TCustomRequestHandler.htmluCEFTaskManager.TCefTaskManagerRef.htmluCEFTaskManager.htmluCEFTypes.TCefBrowserHost.htmluCEFTypes.TCefBrowserSettings.htmluCEFTypes.TCefExtension.htmluCEFTypes.TCefExtensionHandler.htmluCEFTypes.TCefGetExtensionResourceCallback.htmluCEFTypes.TCefLinuxWindowProperties.htmluCEFTypes.TCefRequestContext.htmluCEFTypes.TCefRequestContextSettings.htmluCEFTypes.TCefSettings.htmluCEFTypes.TCefTaskInfo.htmluCEFTypes.TCefTaskManager.htmluCEFTypes.TCefWindowDelegate.htmluCEFTypes.TCustomTaskInfo.htmluCEFTypes.TLinuxWindowProperties.htmluCEFTypes.TUrlParts.htmluCEFTypes.htmluCEFViewsFrameworkEvents.htmluCEFWindowComponent.TCEFWindowComponent.htmluCEFWindowDelegate.TCefWindowDelegateOwn.htmluCEFWindowDelegate.TCefWindowDelegateRef.htmluCEFWindowDelegate.TCustomWindowDelegate.htmluCEFZipReader.TCefZipReaderRef.htmluCEFZipReader.htmluCEFv8Value.TCefv8ValueRef.html
packages
source
update_CEF4Delphi.json

@ -14,7 +14,6 @@ object JSExtensionFrm: TJSExtensionFrm
OnCreate = FormCreate
OnShow = FormShow
Position = poScreenCenter
LCLVersion = '3.0.0.3'
object NavControlPnl: TPanel
Left = 0
Height = 21
@ -72,7 +71,6 @@ object JSExtensionFrm: TJSExtensionFrm
OnBeforePopup = Chromium1BeforePopup
OnAfterCreated = Chromium1AfterCreated
OnBeforeClose = Chromium1BeforeClose
OnClose = Chromium1Close
Left = 32
Top = 224
end

@ -40,34 +40,21 @@ type
Chromium1: TChromium;
StatusPnl: TPanel;
Timer1: TTimer;
procedure FormShow(Sender: TObject);
procedure GoBtnClick(Sender: TObject);
procedure Chromium1BeforeContextMenu(Sender: TObject;
const browser: ICefBrowser; const frame: ICefFrame;
const params: ICefContextMenuParams; const model: ICefMenuModel);
procedure Chromium1ContextMenuCommand(Sender: TObject;
const browser: ICefBrowser; const frame: ICefFrame;
const params: ICefContextMenuParams; commandId: Integer;
eventFlags: Cardinal; out Result: Boolean);
procedure Chromium1ProcessMessageReceived(Sender: TObject;
const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId;
const message: ICefProcessMessage; out Result: Boolean);
procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser);
procedure Timer1Timer(Sender: TObject);
procedure Chromium1BeforePopup(Sender: TObject;
const browser: ICefBrowser; const frame: ICefFrame; const targetUrl,
targetFrameName: ustring;
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 FormShow(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser;
var aAction : TCefCloseBrowserAction);
procedure Chromium1BeforeClose(Sender: TObject;
const browser: ICefBrowser);
procedure GoBtnClick(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure Chromium1BeforeContextMenu(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; const model: ICefMenuModel);
procedure Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; eventFlags: Cardinal; out Result: Boolean);
procedure Chromium1ProcessMessageReceived(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const message: ICefProcessMessage; out Result: Boolean);
procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser);
procedure Chromium1BeforePopup(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const targetUrl, targetFrameName: ustring; 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 Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser);
protected
FText : string;
// Variables to control when can we destroy the form safely
@ -77,7 +64,6 @@ type
FOffline : boolean;
procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED;
procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY;
procedure ShowTextViewerMsg(var aMessage : TMessage); message MINIBROWSER_SHOWTEXTVIEWER;
procedure WMMove(var aMessage : TWMMove); message WM_MOVE;
procedure WMMoving(var aMessage : TMessage); message WM_MOVING;
@ -242,11 +228,8 @@ uses
// DESTRUCTION STEPS
// =================
// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers
// the TChromium.OnClose event.
// 2. TChromium.OnClose sends a CEFBROWSER_DESTROY message to destroy CEFWindowParent1
// in the main thread, which triggers the TChromium.OnBeforeClose event.
// 3. TChromium.OnBeforeClose sets FCanClose := True and sends WM_CLOSE to the form.
// 1. FormCloseQuery sets CanClose to FALSE, destroys CEFWindowParent1 and calls TChromium.CloseBrowser which triggers the TChromium.OnBeforeClose event.
// 2. TChromium.OnBeforeClose sets FCanClose := True and sends WM_CLOSE to the form.
procedure CreateGlobalCEFApp;
begin
@ -303,13 +286,6 @@ begin
Result := (targetDisposition in [CEF_WOD_NEW_FOREGROUND_TAB, CEF_WOD_NEW_BACKGROUND_TAB, CEF_WOD_NEW_POPUP, CEF_WOD_NEW_WINDOW]);
end;
procedure TJSExtensionFrm.Chromium1Close(Sender: TObject;
const browser: ICefBrowser; var aAction : TCefCloseBrowserAction);
begin
PostMessage(Handle, CEF_DESTROY, 0, 0);
aAction := cbaDelay;
end;
procedure TJSExtensionFrm.Chromium1ContextMenuCommand(Sender: TObject;
const browser: ICefBrowser; const frame: ICefFrame;
const params: ICefContextMenuParams; commandId: Integer;
@ -420,6 +396,7 @@ begin
FClosing := True;
Visible := False;
Chromium1.CloseBrowser(True);
CEFWindowParent1.Free;
end;
end;
@ -488,9 +465,4 @@ begin
GoBtn.Click;
end;
procedure TJSExtensionFrm.BrowserDestroyMsg(var aMessage : TMessage);
begin
CEFWindowParent1.Free;
end;
end.