diff --git a/README.md b/README.md index 06f64ef6..547a9a07 100644 --- a/README.md +++ b/README.md @@ -3,15 +3,15 @@ CEF4Delphi is an open source project created by Salvador Díaz Fau to embed Chro CEF4Delphi is based on DCEF3 and fpCEF3. The original license of those projects still applies to CEF4Delphi. Read the license terms in the LICENSE.md file. -CEF4Delphi uses CEF 127.3.5 which includes Chromium 127.0.6533.120. +CEF4Delphi uses CEF 128.4.8 which includes Chromium 128.0.6613.114. The CEF binaries used by CEF4Delphi are available for download at Spotify : -* [Windows 32 bits](https://cef-builds.spotifycdn.com/cef_binary_127.3.5%2Bg114ea2a%2Bchromium-127.0.6533.120_windows32.tar.bz2) -* [Windows 64 bits](https://cef-builds.spotifycdn.com/cef_binary_127.3.5%2Bg114ea2a%2Bchromium-127.0.6533.120_windows64.tar.bz2) -* [Linux x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_127.3.5%2Bg114ea2a%2Bchromium-127.0.6533.120_linux64.tar.bz2) -* [Linux ARM 32 bits](https://cef-builds.spotifycdn.com/cef_binary_127.3.5%2Bg114ea2a%2Bchromium-127.0.6533.120_linuxarm.tar.bz2) -* [Linux ARM 64 bits](https://cef-builds.spotifycdn.com/cef_binary_127.3.5%2Bg114ea2a%2Bchromium-127.0.6533.120_linuxarm64.tar.bz2) -* [MacOS x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_127.3.5%2Bg114ea2a%2Bchromium-127.0.6533.120_macosx64.tar.bz2) +* [Windows 32 bits](https://cef-builds.spotifycdn.com/cef_binary_128.4.8%2Bg88b5034%2Bchromium-128.0.6613.114_windows32.tar.bz2) +* [Windows 64 bits](https://cef-builds.spotifycdn.com/cef_binary_128.4.8%2Bg88b5034%2Bchromium-128.0.6613.114_windows64.tar.bz2) +* [Linux x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_128.4.8%2Bg88b5034%2Bchromium-128.0.6613.114_linux64.tar.bz2) +* [Linux ARM 32 bits](https://cef-builds.spotifycdn.com/cef_binary_128.4.8%2Bg88b5034%2Bchromium-128.0.6613.114_linuxarm.tar.bz2) +* [Linux ARM 64 bits](https://cef-builds.spotifycdn.com/cef_binary_128.4.8%2Bg88b5034%2Bchromium-128.0.6613.114_linuxarm64.tar.bz2) +* [MacOS x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_128.4.8%2Bg88b5034%2Bchromium-128.0.6613.114_macosx64.tar.bz2) CEF4Delphi was developed and tested on Delphi 12.1 and it has been tested in Delphi 6, Delphi XE, Delphi 10, Delphi 11 and Lazarus 3.4/FPC 3.2.2. CEF4Delphi includes VCL, FireMonkey (FMX) and Lazarus components. diff --git a/demos/Delphi_FMX_Windows/FMXTabbedBrowser/uBrowserFrame.pas b/demos/Delphi_FMX_Windows/FMXTabbedBrowser/uBrowserFrame.pas index 68565d32..652787da 100644 --- a/demos/Delphi_FMX_Windows/FMXTabbedBrowser/uBrowserFrame.pas +++ b/demos/Delphi_FMX_Windows/FMXTabbedBrowser/uBrowserFrame.pas @@ -350,7 +350,7 @@ begin if aIndependent then begin TempCache := GlobalCEFApp.RootCache + '\cache' + inttostr(TBrowserTab(ParentTab).TabID); - TempContext := TCefRequestContextRef.New(TempCache, '', '', False, False, False, FMXChromium1.ReqContextHandler) + TempContext := TCefRequestContextRef.New(TempCache, '', '', False, False, FMXChromium1.ReqContextHandler) end else TempContext := nil; @@ -364,7 +364,8 @@ begin TempRect.Right := round(TempClientRect.Right * TempScale); TempRect.Bottom := round(TempClientRect.Bottom * TempScale); - FMXChromium1.DefaultUrl := FHomepage; + FMXChromium1.DefaultUrl := FHomepage; + FMXChromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; FMXChromium1.CreateBrowser(TempHandle, TempRect, '', TempContext); {$ENDIF} end; diff --git a/demos/Delphi_FMX_Windows/FMXToolBoxBrowser/uChildForm.pas b/demos/Delphi_FMX_Windows/FMXToolBoxBrowser/uChildForm.pas index 9dc06d13..813cb8e4 100644 --- a/demos/Delphi_FMX_Windows/FMXToolBoxBrowser/uChildForm.pas +++ b/demos/Delphi_FMX_Windows/FMXToolBoxBrowser/uChildForm.pas @@ -291,6 +291,8 @@ begin FMXWindowParent := nil; FHomepage := ''; + FMXChromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; + {$IFDEF MSWINDOWS} FCustomWindowState := WindowState; {$ENDIF} diff --git a/demos/Delphi_FMX_Windows/SimpleFMXBrowser/uSimpleFMXBrowser.pas b/demos/Delphi_FMX_Windows/SimpleFMXBrowser/uSimpleFMXBrowser.pas index c5a6266d..b25d505a 100644 --- a/demos/Delphi_FMX_Windows/SimpleFMXBrowser/uSimpleFMXBrowser.pas +++ b/demos/Delphi_FMX_Windows/SimpleFMXBrowser/uSimpleFMXBrowser.pas @@ -379,6 +379,8 @@ begin FClosing := False; FMXWindowParent := nil; + FMXChromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; + {$IFDEF MSWINDOWS} FCustomWindowState := WindowState; {$ENDIF} diff --git a/demos/Delphi_VCL/CookieVisitor/uCookieVisitor.dfm b/demos/Delphi_VCL/CookieVisitor/uCookieVisitor.dfm index 5bf17a34..f98077f2 100644 --- a/demos/Delphi_VCL/CookieVisitor/uCookieVisitor.dfm +++ b/demos/Delphi_VCL/CookieVisitor/uCookieVisitor.dfm @@ -71,7 +71,6 @@ object CookieVisitorFrm: TCookieVisitorFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 32 Top = 224 end diff --git a/demos/Delphi_VCL/CookieVisitor/uCookieVisitor.pas b/demos/Delphi_VCL/CookieVisitor/uCookieVisitor.pas index 1758542e..838f1229 100644 --- a/demos/Delphi_VCL/CookieVisitor/uCookieVisitor.pas +++ b/demos/Delphi_VCL/CookieVisitor/uCookieVisitor.pas @@ -39,7 +39,6 @@ type procedure Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; eventFlags: TCefEventFlags; out Result: Boolean); procedure Chromium1CookiesDeleted(Sender: TObject; numDeleted: Integer); 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1CookieSet(Sender: TObject; aSuccess: Boolean; aID: Integer); procedure Chromium1CookieVisitorDestroyed(Sender: TObject; aID: Integer); @@ -58,7 +57,6 @@ type procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure ShowCookiesMsg(var aMessage : TMessage); message MINIBROWSER_SHOWCOOKIES; procedure CookiesDeletedMsg(var aMessage : TMessage); message MINIBROWSER_COOKIESDELETED; procedure CookieSetMsg(var aMessage : TMessage); message MINIBROWSER_COOKIESET; @@ -94,9 +92,8 @@ uses // TChromium.DeleteCookies triggers TChromium.OnCookiesDeleted when the cookies have been deleted. // 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 @@ -118,11 +115,6 @@ begin AddressBarPnl.Enabled := True; end; -procedure TCookieVisitorFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TCookieVisitorFrm.ShowCookiesMsg(var aMessage : TMessage); begin SimpleTextViewerFrm.Memo1.Lines.Text := FText; // This should be protected by a mutex. @@ -195,13 +187,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 TCookieVisitorFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TCookieVisitorFrm.Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; @@ -300,6 +285,8 @@ begin Visible := False; Chromium1.CloseBrowser(True); + + CEFWindowParent1.Free; end; end; diff --git a/demos/Delphi_VCL/CustomResourceBrowser/uMainForm.pas b/demos/Delphi_VCL/CustomResourceBrowser/uMainForm.pas index 7128e2a4..c13032ab 100644 --- a/demos/Delphi_VCL/CustomResourceBrowser/uMainForm.pas +++ b/demos/Delphi_VCL/CustomResourceBrowser/uMainForm.pas @@ -105,6 +105,8 @@ begin FCanClose := False; FClosing := False; + ChromiumWindow1.ChromiumBrowser.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; + try try TempStream := TStringStream.Create('

test

', TEncoding.UTF8, false); @@ -138,8 +140,11 @@ end; procedure TMainForm.ChromiumWindow1BeforeClose(Sender: TObject); begin - FCanClose := True; - PostMessage(Handle, WM_CLOSE, 0, 0); + if not(FCanClose) then + begin + FCanClose := True; + PostMessage(Handle, WM_CLOSE, 0, 0); + end; end; procedure TMainForm.ChromiumWindow1Close(Sender: TObject); diff --git a/demos/Delphi_VCL/DOMVisitor/uDOMVisitor.dfm b/demos/Delphi_VCL/DOMVisitor/uDOMVisitor.dfm index 881159ff..d1e86c9d 100644 --- a/demos/Delphi_VCL/DOMVisitor/uDOMVisitor.dfm +++ b/demos/Delphi_VCL/DOMVisitor/uDOMVisitor.dfm @@ -99,7 +99,6 @@ object DOMVisitorFrm: TDOMVisitorFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnDevToolsMethodResult = Chromium1DevToolsMethodResult Left = 16 Top = 40 diff --git a/demos/Delphi_VCL/DOMVisitor/uDOMVisitor.pas b/demos/Delphi_VCL/DOMVisitor/uDOMVisitor.pas index 7181bc24..b551c835 100644 --- a/demos/Delphi_VCL/DOMVisitor/uDOMVisitor.pas +++ b/demos/Delphi_VCL/DOMVisitor/uDOMVisitor.pas @@ -74,7 +74,6 @@ type procedure Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; eventFlags: TCefEventFlags; out Result: Boolean); procedure Chromium1ProcessMessageReceived(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const message: ICefProcessMessage; out Result: Boolean); 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1ConsoleMessage(Sender: TObject; const browser: ICefBrowser; level: TCefLogSeverity; const message, source: ustring; line: Integer; out Result: Boolean); procedure Chromium1DevToolsMethodResult(Sender: TObject; const browser: ICefBrowser; message_id: Integer; success: Boolean; const result: ICefValue); @@ -101,7 +100,6 @@ type procedure SetErrorText(const aValue : string); procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure VisitDOMMsg(var aMessage : TMessage); message MINIBROWSER_VISITDOM_PARTIAL; procedure VisitDOM2Msg(var aMessage : TMessage); message MINIBROWSER_VISITDOM_FULL; procedure VisitDOM3Msg(var aMessage : TMessage); message MINIBROWSER_VISITDOM_JS; @@ -210,12 +208,9 @@ 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 +// 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 SimpleDOMIteration(const aDocument: ICefDomDocument); @@ -495,13 +490,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 TDOMVisitorFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TDOMVisitorFrm.Chromium1ConsoleMessage(Sender: TObject; const browser: ICefBrowser; level: TCefLogSeverity; const message, source: ustring; line: Integer; out Result: Boolean); @@ -731,6 +719,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -767,11 +756,6 @@ begin GoBtn.Click; end; -procedure TDOMVisitorFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TDOMVisitorFrm.VisitDOMBtnClick(Sender: TObject); begin PostMessage(Handle, MINIBROWSER_VISITDOM_PARTIAL, 0, 0); diff --git a/demos/Delphi_VCL/DualBrowser/uMainForm.dfm b/demos/Delphi_VCL/DualBrowser/uMainForm.dfm index 1743ba69..e6ea8231 100644 --- a/demos/Delphi_VCL/DualBrowser/uMainForm.dfm +++ b/demos/Delphi_VCL/DualBrowser/uMainForm.dfm @@ -33,7 +33,6 @@ object MainForm: TMainForm Align = alLeft BevelOuter = bvNone TabOrder = 0 - ExplicitHeight = 656 object CEFAddressPnl: TPanel Left = 0 Top = 0 @@ -75,7 +74,6 @@ object MainForm: TMainForm Align = alClient Color = clWhite TabOrder = 1 - ExplicitHeight = 626 end end object WVPnl: TPanel @@ -87,8 +85,6 @@ object MainForm: TMainForm BevelOuter = bvNone ParentBackground = False TabOrder = 1 - ExplicitWidth = 519 - ExplicitHeight = 656 object WVAddressPnl: TPanel Left = 0 Top = 0 @@ -99,7 +95,6 @@ object MainForm: TMainForm Padding.Top = 5 Padding.Bottom = 5 TabOrder = 0 - ExplicitWidth = 519 object WVAddressEdt: TEdit Left = 0 Top = 5 @@ -109,7 +104,6 @@ object MainForm: TMainForm Align = alClient TabOrder = 0 Text = 'http://www.bing.com' - ExplicitWidth = 488 ExplicitHeight = 21 end object WVGoBtn: TButton @@ -122,7 +116,6 @@ object MainForm: TMainForm Caption = 'Go' TabOrder = 1 OnClick = WVGoBtnClick - ExplicitLeft = 488 end end object WVWindowParent1: TWVWindowParent @@ -135,15 +128,12 @@ object MainForm: TMainForm TabStop = True TabOrder = 1 Browser = WVBrowser1 - ExplicitWidth = 519 - ExplicitHeight = 626 end end object Chromium1: TChromium OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnOpenUrlFromTab = Chromium1OpenUrlFromTab Left = 224 Top = 256 diff --git a/demos/Delphi_VCL/DualBrowser/uMainForm.pas b/demos/Delphi_VCL/DualBrowser/uMainForm.pas index 75112484..57e9fdfd 100644 --- a/demos/Delphi_VCL/DualBrowser/uMainForm.pas +++ b/demos/Delphi_VCL/DualBrowser/uMainForm.pas @@ -43,7 +43,6 @@ type procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(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, Result: Boolean); procedure Chromium1OpenUrlFromTab(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean; out Result: Boolean); @@ -63,7 +62,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; public { Public declarations } end; @@ -98,9 +96,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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 @@ -123,6 +120,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end else @@ -171,13 +169,6 @@ begin CEF_WOD_NEW_WINDOW]); end; -procedure TMainForm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TMainForm.Chromium1OpenUrlFromTab(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; @@ -195,11 +186,6 @@ begin CEFWindowParent1.UpdateSize; end; -procedure TMainForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TMainForm.CEFGoBtnClick(Sender: TObject); begin if Chromium1.Initialized then diff --git a/demos/Delphi_VCL/EditorBrowser/uEditorBrowser.dfm b/demos/Delphi_VCL/EditorBrowser/uEditorBrowser.dfm index 09b4a50a..473b16aa 100644 --- a/demos/Delphi_VCL/EditorBrowser/uEditorBrowser.dfm +++ b/demos/Delphi_VCL/EditorBrowser/uEditorBrowser.dfm @@ -332,7 +332,6 @@ object EditorBrowserFrm: TEditorBrowserFrm OnContextMenuCommand = Chromium1ContextMenuCommand OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 56 Top = 144 end diff --git a/demos/Delphi_VCL/EditorBrowser/uEditorBrowser.pas b/demos/Delphi_VCL/EditorBrowser/uEditorBrowser.pas index c82b49b8..228746d7 100644 --- a/demos/Delphi_VCL/EditorBrowser/uEditorBrowser.pas +++ b/demos/Delphi_VCL/EditorBrowser/uEditorBrowser.pas @@ -69,7 +69,6 @@ type procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1LoadEnd(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; httpStatusCode: Integer); procedure Chromium1TextResultAvailable(Sender: TObject; const aText: ustring); @@ -115,7 +114,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; public { Public declarations } end; @@ -143,9 +141,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 @@ -179,6 +176,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -220,13 +218,6 @@ begin model.AddItem(MINIBROWSER_CONTEXTMENU_SHOWDEVTOOLS, 'Show DevTools'); end; -procedure TEditorBrowserFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TEditorBrowserFrm.Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; @@ -487,11 +478,6 @@ begin Caption := 'Editor Browser'; end; -procedure TEditorBrowserFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TEditorBrowserFrm.Timer1Timer(Sender: TObject); begin Timer1.Enabled := False; diff --git a/demos/Delphi_VCL/ExternalPumpBrowser/uExternalPumpBrowser.dfm b/demos/Delphi_VCL/ExternalPumpBrowser/uExternalPumpBrowser.dfm index f58c3e6e..d1089886 100644 --- a/demos/Delphi_VCL/ExternalPumpBrowser/uExternalPumpBrowser.dfm +++ b/demos/Delphi_VCL/ExternalPumpBrowser/uExternalPumpBrowser.dfm @@ -93,7 +93,6 @@ object ExternalPumpBrowserFrm: TExternalPumpBrowserFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 56 Top = 152 end diff --git a/demos/Delphi_VCL/ExternalPumpBrowser/uExternalPumpBrowser.pas b/demos/Delphi_VCL/ExternalPumpBrowser/uExternalPumpBrowser.pas index ff3f202a..ec24e52b 100644 --- a/demos/Delphi_VCL/ExternalPumpBrowser/uExternalPumpBrowser.pas +++ b/demos/Delphi_VCL/ExternalPumpBrowser/uExternalPumpBrowser.pas @@ -32,7 +32,6 @@ type procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(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); @@ -41,7 +40,6 @@ type FClosing : boolean; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -68,9 +66,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 GlobalCEFApp_OnScheduleMessagePumpWork(const aDelayMS : int64); begin @@ -106,6 +103,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -141,12 +139,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 TExternalPumpBrowserFrm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TExternalPumpBrowserFrm.BrowserCreatedMsg(var aMessage : TMessage); begin Caption := 'External Pump Browser'; @@ -155,11 +147,6 @@ begin GoBtn.Click; end; -procedure TExternalPumpBrowserFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TExternalPumpBrowserFrm.GoBtnClick(Sender: TObject); begin Chromium1.LoadURL(URLCbx.Text); diff --git a/demos/Delphi_VCL/FullScreenBrowser/uMainForm.dfm b/demos/Delphi_VCL/FullScreenBrowser/uMainForm.dfm index e469810e..225c644b 100644 --- a/demos/Delphi_VCL/FullScreenBrowser/uMainForm.dfm +++ b/demos/Delphi_VCL/FullScreenBrowser/uMainForm.dfm @@ -32,7 +32,6 @@ object MainForm: TMainForm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 208 Top = 120 end diff --git a/demos/Delphi_VCL/FullScreenBrowser/uMainForm.pas b/demos/Delphi_VCL/FullScreenBrowser/uMainForm.pas index 1bbe2fa0..a515cdf7 100644 --- a/demos/Delphi_VCL/FullScreenBrowser/uMainForm.pas +++ b/demos/Delphi_VCL/FullScreenBrowser/uMainForm.pas @@ -25,7 +25,6 @@ type 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); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure FormShow(Sender: TObject); procedure FormCreate(Sender: TObject); @@ -45,7 +44,6 @@ type procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure HandleKeyUp(const aMsg : TMsg; var aHandled : boolean); procedure HandleKeyDown(const aMsg : TMsg; var aHandled : boolean); @@ -67,9 +65,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 @@ -140,22 +137,11 @@ begin Result := (targetDisposition in [CEF_WOD_NEW_FOREGROUND_TAB, CEF_WOD_NEW_BACKGROUND_TAB, CEF_WOD_NEW_POPUP, CEF_WOD_NEW_WINDOW]); end; -procedure TMainForm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TMainForm.BrowserCreatedMsg(var aMessage : TMessage); begin CEFWindowParent1.UpdateSize; end; -procedure TMainForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TMainForm.Chromium1KeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out Result: Boolean); @@ -203,6 +189,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; diff --git a/demos/Delphi_VCL/JavaScript/CustomTitleBar/uCustomTitleBarExtension.pas b/demos/Delphi_VCL/JavaScript/CustomTitleBar/uCustomTitleBarExtension.pas index bb89d070..d7ebe6b3 100644 --- a/demos/Delphi_VCL/JavaScript/CustomTitleBar/uCustomTitleBarExtension.pas +++ b/demos/Delphi_VCL/JavaScript/CustomTitleBar/uCustomTitleBarExtension.pas @@ -416,6 +416,7 @@ procedure TCTBForm.FormCreate(Sender: TObject); begin FCanClose := False; FClosing := False; + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TCTBForm.BrowserDestroyMsg(var aMessage: TMessage); diff --git a/demos/Delphi_VCL/JavaScript/JSDialog/uJSDialogBrowser.pas b/demos/Delphi_VCL/JavaScript/JSDialog/uJSDialogBrowser.pas index a85c2634..3e7b8679 100644 --- a/demos/Delphi_VCL/JavaScript/JSDialog/uJSDialogBrowser.pas +++ b/demos/Delphi_VCL/JavaScript/JSDialog/uJSDialogBrowser.pas @@ -100,6 +100,7 @@ begin FCallback := nil; FCanClose := False; FClosing := False; + ChromiumWindow1.ChromiumBrowser.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TJSDialogBrowserFrm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); diff --git a/demos/Delphi_VCL/JavaScript/JSEval/uJSEval.dfm b/demos/Delphi_VCL/JavaScript/JSEval/uJSEval.dfm index 22b93d25..affe78e9 100644 --- a/demos/Delphi_VCL/JavaScript/JSEval/uJSEval.dfm +++ b/demos/Delphi_VCL/JavaScript/JSEval/uJSEval.dfm @@ -12,6 +12,7 @@ object JSEvalFrm: TJSEvalFrm Font.Style = [] Position = poScreenCenter OnCloseQuery = FormCloseQuery + OnCreate = FormCreate OnShow = FormShow TextHeight = 13 object CEFWindowParent1: TCEFWindowParent diff --git a/demos/Delphi_VCL/JavaScript/JSEval/uJSEval.pas b/demos/Delphi_VCL/JavaScript/JSEval/uJSEval.pas index cfa19404..ceddffd4 100644 --- a/demos/Delphi_VCL/JavaScript/JSEval/uJSEval.pas +++ b/demos/Delphi_VCL/JavaScript/JSEval/uJSEval.pas @@ -51,6 +51,7 @@ type 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); + procedure FormCreate(Sender: TObject); private { Private declarations } @@ -202,6 +203,11 @@ begin end; end; +procedure TJSEvalFrm.FormCreate(Sender: TObject); +begin + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; +end; + procedure TJSEvalFrm.FormShow(Sender: TObject); begin // GlobalCEFApp.GlobalContextInitialized has to be TRUE before creating any browser diff --git a/demos/Delphi_VCL/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.dfm b/demos/Delphi_VCL/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.dfm index cd0bb3e6..733ebda4 100644 --- a/demos/Delphi_VCL/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.dfm +++ b/demos/Delphi_VCL/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.dfm @@ -66,7 +66,6 @@ object JSExecutingFunctionsFrm: TJSExecutingFunctionsFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 32 Top = 224 end diff --git a/demos/Delphi_VCL/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.pas b/demos/Delphi_VCL/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.pas index d40a5825..e368783e 100644 --- a/demos/Delphi_VCL/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.pas +++ b/demos/Delphi_VCL/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.pas @@ -41,7 +41,6 @@ type 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: TCefEventFlags; out Result: Boolean); 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -50,7 +49,6 @@ type FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -85,9 +83,8 @@ implementation // 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. uses uCEFProcessMessage, uMyV8Handler; @@ -168,12 +165,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 TJSExecutingFunctionsFrm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSExecutingFunctionsFrm.Chromium1ContextMenuCommand( Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; @@ -202,6 +193,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -267,9 +259,4 @@ begin GoBtn.Click; end; -procedure TJSExecutingFunctionsFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/JavaScript/JSExtension/uJSExtension.pas b/demos/Delphi_VCL/JavaScript/JSExtension/uJSExtension.pas index cb7e83ba..ecb3f784 100644 --- a/demos/Delphi_VCL/JavaScript/JSExtension/uJSExtension.pas +++ b/demos/Delphi_VCL/JavaScript/JSExtension/uJSExtension.pas @@ -440,6 +440,7 @@ procedure TJSExtensionFrm.FormCreate(Sender: TObject); begin FCanClose := False; FClosing := False; + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TJSExtensionFrm.FormShow(Sender: TObject); diff --git a/demos/Delphi_VCL/JavaScript/JSExtensionSubProcess/uJSExtension.dfm b/demos/Delphi_VCL/JavaScript/JSExtensionSubProcess/uJSExtension.dfm index 4a66e6db..2ec840b6 100644 --- a/demos/Delphi_VCL/JavaScript/JSExtensionSubProcess/uJSExtension.dfm +++ b/demos/Delphi_VCL/JavaScript/JSExtensionSubProcess/uJSExtension.dfm @@ -28,7 +28,6 @@ object JSExtensionFrm: TJSExtensionFrm Padding.Right = 5 Padding.Bottom = 5 TabOrder = 0 - ExplicitWidth = 974 object Edit1: TEdit Left = 5 Top = 5 @@ -38,7 +37,6 @@ object JSExtensionFrm: TJSExtensionFrm Align = alClient TabOrder = 0 Text = 'http://www.google.com' - ExplicitWidth = 933 ExplicitHeight = 21 end object GoBtn: TButton @@ -51,7 +49,6 @@ object JSExtensionFrm: TJSExtensionFrm Caption = 'Go' TabOrder = 1 OnClick = GoBtnClick - ExplicitLeft = 938 end end object StatusBar1: TStatusBar @@ -63,8 +60,6 @@ object JSExtensionFrm: TJSExtensionFrm item Width = 50 end> - ExplicitTop = 569 - ExplicitWidth = 974 end object CEFWindowParent1: TCEFWindowParent Left = 0 @@ -73,8 +68,6 @@ object JSExtensionFrm: TJSExtensionFrm Height = 540 Align = alClient TabOrder = 2 - ExplicitWidth = 974 - ExplicitHeight = 539 end object Chromium1: TChromium OnProcessMessageReceived = Chromium1ProcessMessageReceived diff --git a/demos/Delphi_VCL/JavaScript/JSExtensionSubProcess/uJSExtension.pas b/demos/Delphi_VCL/JavaScript/JSExtensionSubProcess/uJSExtension.pas index 376ce7c3..3c54b019 100644 --- a/demos/Delphi_VCL/JavaScript/JSExtensionSubProcess/uJSExtension.pas +++ b/demos/Delphi_VCL/JavaScript/JSExtensionSubProcess/uJSExtension.pas @@ -49,10 +49,7 @@ type 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1ContextMenuCommand(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; - const params: ICefContextMenuParams; commandId: Integer; - eventFlags: Cardinal; out Result: Boolean); + procedure Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; eventFlags: TCefEventFlags; out Result: Boolean); protected FText : string; @@ -294,7 +291,7 @@ end; procedure TJSExtensionFrm.Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; - eventFlags: Cardinal; out Result: Boolean); + eventFlags: TCefEventFlags; out Result: Boolean); var TempPoint : TPoint; TempJSCode : string; @@ -408,6 +405,7 @@ procedure TJSExtensionFrm.FormCreate(Sender: TObject); begin FCanClose := False; FClosing := False; + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TJSExtensionFrm.FormShow(Sender: TObject); diff --git a/demos/Delphi_VCL/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.dfm b/demos/Delphi_VCL/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.dfm index 7ee0ac0a..830eb27e 100644 --- a/demos/Delphi_VCL/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.dfm +++ b/demos/Delphi_VCL/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.dfm @@ -74,7 +74,6 @@ object JSExtensionWithFunctionFrm: TJSExtensionWithFunctionFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 32 Top = 224 end diff --git a/demos/Delphi_VCL/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.pas b/demos/Delphi_VCL/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.pas index 21a4978b..9f4302fc 100644 --- a/demos/Delphi_VCL/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.pas +++ b/demos/Delphi_VCL/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.pas @@ -35,7 +35,6 @@ type 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 Chromium1ProcessMessageReceived(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const message: ICefProcessMessage; out Result: Boolean); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -44,7 +43,6 @@ type FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -75,9 +73,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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. {$IFDEF DELPHI12_UP}procedure {$ELSE}class procedure TJSSimpleExtensionFrm.{$ENDIF}GlobalCEFApp_OnWebKitInitializedEvent; @@ -140,13 +137,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 TJSExtensionWithFunctionFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSExtensionWithFunctionFrm.Chromium1ProcessMessageReceived( Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const message: ICefProcessMessage; @@ -169,6 +159,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -228,9 +219,4 @@ begin if (aMessage.wParam = 0) and (GlobalCEFApp <> nil) then GlobalCEFApp.OsmodalLoop := False; end; -procedure TJSExtensionWithFunctionFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.dfm b/demos/Delphi_VCL/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.dfm index 5a0cf9c3..68c2f537 100644 --- a/demos/Delphi_VCL/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.dfm +++ b/demos/Delphi_VCL/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.dfm @@ -63,7 +63,6 @@ object JSExtensionWithObjectParameterFrm: TJSExtensionWithObjectParameterFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 32 Top = 224 end diff --git a/demos/Delphi_VCL/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.pas b/demos/Delphi_VCL/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.pas index d0953595..6e3f9b3e 100644 --- a/demos/Delphi_VCL/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.pas +++ b/demos/Delphi_VCL/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.pas @@ -33,7 +33,6 @@ type 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -42,7 +41,6 @@ type FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -76,9 +74,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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. {$IFDEF DELPHI12_UP}procedure {$ELSE}class procedure TJSSimpleExtensionFrm.{$ENDIF}GlobalCEFApp_OnWebKitInitializedEvent; @@ -145,13 +142,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 TJSExtensionWithObjectParameterFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSExtensionWithObjectParameterFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -162,6 +152,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -221,9 +212,4 @@ begin GoBtn.Click; end; -procedure TJSExtensionWithObjectParameterFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/JavaScript/JSRTTIExtension/uJSRTTIExtension.pas b/demos/Delphi_VCL/JavaScript/JSRTTIExtension/uJSRTTIExtension.pas index e25edcb4..f6612833 100644 --- a/demos/Delphi_VCL/JavaScript/JSRTTIExtension/uJSRTTIExtension.pas +++ b/demos/Delphi_VCL/JavaScript/JSRTTIExtension/uJSRTTIExtension.pas @@ -321,6 +321,7 @@ procedure TJSRTTIExtensionFrm.FormCreate(Sender: TObject); begin FCanClose := False; FClosing := False; + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TJSRTTIExtensionFrm.BrowserDestroyMsg(var aMessage : TMessage); diff --git a/demos/Delphi_VCL/JavaScript/JSSharedMemoryProcMessage/uMainForm.pas b/demos/Delphi_VCL/JavaScript/JSSharedMemoryProcMessage/uMainForm.pas index 90327c65..ef507f2c 100644 --- a/demos/Delphi_VCL/JavaScript/JSSharedMemoryProcMessage/uMainForm.pas +++ b/demos/Delphi_VCL/JavaScript/JSSharedMemoryProcMessage/uMainForm.pas @@ -245,6 +245,8 @@ begin FClosing := False; FCritSection := TCriticalSection.Create; + + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TMainForm.FormDestroy(Sender: TObject); diff --git a/demos/Delphi_VCL/JavaScript/JSSimpleExtension/uJSSimpleExtension.dfm b/demos/Delphi_VCL/JavaScript/JSSimpleExtension/uJSSimpleExtension.dfm index 0049afa3..c4a858ea 100644 --- a/demos/Delphi_VCL/JavaScript/JSSimpleExtension/uJSSimpleExtension.dfm +++ b/demos/Delphi_VCL/JavaScript/JSSimpleExtension/uJSSimpleExtension.dfm @@ -63,7 +63,6 @@ object JSSimpleExtensionFrm: TJSSimpleExtensionFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 32 Top = 224 end diff --git a/demos/Delphi_VCL/JavaScript/JSSimpleExtension/uJSSimpleExtension.pas b/demos/Delphi_VCL/JavaScript/JSSimpleExtension/uJSSimpleExtension.pas index e6f72683..61ef6c9e 100644 --- a/demos/Delphi_VCL/JavaScript/JSSimpleExtension/uJSSimpleExtension.pas +++ b/demos/Delphi_VCL/JavaScript/JSSimpleExtension/uJSSimpleExtension.pas @@ -33,7 +33,6 @@ type 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -42,7 +41,6 @@ type FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -73,9 +71,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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. {$IFDEF DELPHI12_UP}procedure {$ELSE}class procedure TJSSimpleExtensionFrm.{$ENDIF}GlobalCEFApp_OnWebKitInitializedEvent; @@ -182,12 +179,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSSimpleExtensionFrm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSSimpleExtensionFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -198,6 +189,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -207,9 +199,4 @@ begin FClosing := False; end; -procedure TJSSimpleExtensionFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.dfm b/demos/Delphi_VCL/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.dfm index 94eeb1ca..06a375a9 100644 --- a/demos/Delphi_VCL/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.dfm +++ b/demos/Delphi_VCL/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.dfm @@ -63,7 +63,6 @@ object JSSimpleWindowBindingFrm: TJSSimpleWindowBindingFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 32 Top = 224 end diff --git a/demos/Delphi_VCL/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.pas b/demos/Delphi_VCL/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.pas index 98e469d3..88d58067 100644 --- a/demos/Delphi_VCL/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.pas +++ b/demos/Delphi_VCL/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.pas @@ -33,7 +33,6 @@ type 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -42,7 +41,6 @@ type FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -68,9 +66,8 @@ implementation // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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 GlobalCEFApp_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); var @@ -170,13 +167,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSSimpleWindowBindingFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSSimpleWindowBindingFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -187,6 +177,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -196,9 +187,4 @@ begin FClosing := False; end; -procedure TJSSimpleWindowBindingFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.dfm b/demos/Delphi_VCL/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.dfm index 94eeb1ca..06a375a9 100644 --- a/demos/Delphi_VCL/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.dfm +++ b/demos/Delphi_VCL/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.dfm @@ -63,7 +63,6 @@ object JSSimpleWindowBindingFrm: TJSSimpleWindowBindingFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 32 Top = 224 end diff --git a/demos/Delphi_VCL/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.pas b/demos/Delphi_VCL/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.pas index 05123204..4c46c9f5 100644 --- a/demos/Delphi_VCL/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.pas +++ b/demos/Delphi_VCL/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.pas @@ -33,7 +33,6 @@ type 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -43,7 +42,6 @@ type FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -69,9 +67,8 @@ implementation // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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 @@ -171,13 +168,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSSimpleWindowBindingFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSSimpleWindowBindingFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -190,6 +180,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end else @@ -202,9 +193,4 @@ begin FClosing := False; end; -procedure TJSSimpleWindowBindingFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/JSWindowBindingWithArrayBuffer.dproj b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/JSWindowBindingWithArrayBuffer.dproj index a69b374a..c2e043cd 100644 --- a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/JSWindowBindingWithArrayBuffer.dproj +++ b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/JSWindowBindingWithArrayBuffer.dproj @@ -9,6 +9,7 @@ Win32 3 Application + JSWindowBindingWithArrayBuffer true @@ -824,6 +825,9 @@ 1 + + 1 + @@ -1117,6 +1121,7 @@ + True diff --git a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.dfm b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.dfm index 8a4b599b..4db2f1d3 100644 --- a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.dfm +++ b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.dfm @@ -63,7 +63,6 @@ object JSWindowBindingWithArrayBufferFrm: TJSWindowBindingWithArrayBufferFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 32 Top = 224 end diff --git a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.pas b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.pas index 17c5445e..c1899904 100644 --- a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.pas +++ b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.pas @@ -33,7 +33,6 @@ type 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -42,7 +41,6 @@ type FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -71,14 +69,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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. - -procedure FreeCustomArrayBufer(buffer : Pointer); -begin - if (buffer <> nil) then FreeMem(buffer); -end; +// 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 GlobalCEFApp_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); const @@ -86,27 +78,14 @@ const BUFFER_FILL_VALUE = 42; // Some ramdom value to fill the buffer var TempObject : ICefv8Value; - TempCallback : ICefv8ArrayBufferReleaseCallback; TempBuffer : Pointer; begin - // The ArrayBuffer in this demo has a "buffer" pointer but CEF uses a callback to free it when the JS garbage collector is triggered. - // The garbage collector calls ICefv8ArrayBufferReleaseCallback.ReleaseBuffer to free the buffer and - // CEF4Delphi has a TCefFastv8ArrayBufferReleaseCallback class that calls a custom procedure when - // ICefv8ArrayBufferReleaseCallback.ReleaseBuffer is called. - GetMem(TempBuffer, BUFFER_LENGTH); FillChar(TempBuffer^, BUFFER_LENGTH, BUFFER_FILL_VALUE); - // TempCallback will execute FreeCustomArrayBufer when the garbage collector needs to free the buffer inside the "ArrayBuffer". - TempCallback := TCefFastv8ArrayBufferReleaseCallback.Create(FreeCustomArrayBufer); - TempObject := TCefv8ValueRef.NewArrayBuffer(TempBuffer, BUFFER_LENGTH, TempCallback); + TempObject := TCefv8ValueRef.NewArrayBufferWithCopy(TempBuffer, BUFFER_LENGTH); context.Global.SetValueByKey('myobj', TempObject, V8_PROPERTY_ATTRIBUTE_NONE); - - // If you keep a reference to "TempObject" and you need to free the buffer immediately then call TempObject.NeuterArrayBuffer - - // Read this for more information about ICefv8Value : - // https://magpcss.org/ceforum/apidocs3/projects/(default)/CefV8Value.html end; procedure CreateGlobalCEFApp; @@ -195,13 +174,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSWindowBindingWithArrayBufferFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSWindowBindingWithArrayBufferFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -212,6 +184,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -221,9 +194,4 @@ begin FClosing := False; end; -procedure TJSWindowBindingWithArrayBufferFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.dfm b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.dfm index 09284add..98f8d2d8 100644 --- a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.dfm +++ b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.dfm @@ -63,7 +63,6 @@ object JSWindowBindingWithFunctionFrm: TJSWindowBindingWithFunctionFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 32 Top = 224 end diff --git a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.pas b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.pas index be29a989..5bee9f64 100644 --- a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.pas +++ b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.pas @@ -33,7 +33,6 @@ type 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -42,7 +41,6 @@ type FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -71,9 +69,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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 GlobalCEFApp_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); var @@ -175,13 +172,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSWindowBindingWithFunctionFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSWindowBindingWithFunctionFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -192,6 +182,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -201,9 +192,4 @@ begin FClosing := False; end; -procedure TJSWindowBindingWithFunctionFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.dfm b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.dfm index 13e6ce72..23437a0b 100644 --- a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.dfm +++ b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.dfm @@ -63,7 +63,6 @@ object JSWindowBindingWithObjectFrm: TJSWindowBindingWithObjectFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 32 Top = 224 end diff --git a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.pas b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.pas index 85a2bbea..9dd036c9 100644 --- a/demos/Delphi_VCL/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.pas +++ b/demos/Delphi_VCL/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.pas @@ -33,7 +33,6 @@ type 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -42,7 +41,6 @@ type FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -71,9 +69,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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 GlobalCEFApp_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); var @@ -176,13 +173,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSWindowBindingWithObjectFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSWindowBindingWithObjectFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -193,6 +183,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -202,9 +193,4 @@ begin FClosing := False; end; -procedure TJSWindowBindingWithObjectFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/MDIBrowser/uChildForm.dfm b/demos/Delphi_VCL/MDIBrowser/uChildForm.dfm index 8e3e520f..8e52032b 100644 --- a/demos/Delphi_VCL/MDIBrowser/uChildForm.dfm +++ b/demos/Delphi_VCL/MDIBrowser/uChildForm.dfm @@ -78,7 +78,6 @@ object ChildForm: TChildForm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 592 Top = 288 end diff --git a/demos/Delphi_VCL/MDIBrowser/uChildForm.pas b/demos/Delphi_VCL/MDIBrowser/uChildForm.pas index 6c111763..a04c26c1 100644 --- a/demos/Delphi_VCL/MDIBrowser/uChildForm.pas +++ b/demos/Delphi_VCL/MDIBrowser/uChildForm.pas @@ -34,7 +34,6 @@ type procedure Button1Click(Sender: TObject); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1LoadingStateChange(Sender: TObject; const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean); procedure Chromium1StatusMessage(Sender: TObject; const browser: ICefBrowser; const value: ustring); @@ -47,7 +46,6 @@ type protected procedure BrowserCreatedMsg(var aMessage : TMessage); message CEFBROWSER_CREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEFBROWSER_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -63,9 +61,8 @@ implementation // Destruction steps // ================= -// 1. FormCloseQuery calls TChromium.CloseBrowser -// 2. TChromium.OnClose sends a CEF_DESTROY message to destroy CEFWindowParent1 in the main thread. -// 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. uses uCEFRequestContext, uCEFApplication; @@ -99,12 +96,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 TChildForm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEFBROWSER_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TChildForm.Chromium1LoadingStateChange(Sender: TObject; const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean); begin if isLoading then @@ -138,6 +129,7 @@ begin FClosing := True; Panel1.Enabled := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -176,7 +168,7 @@ begin else TempCache := GlobalCEFApp.RootCache + '\cache' + inttostr(MainForm.BrowserCount); - TempContext := TCefRequestContextRef.New(TempCache, '', '', False, False, False, Chromium1.ReqContextHandler) + TempContext := TCefRequestContextRef.New(TempCache, '', '', False, False, Chromium1.ReqContextHandler) end else TempContext := nil; @@ -233,9 +225,4 @@ begin Panel1.Enabled := True; end; -procedure TChildForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/MDIExternalPumpBrowser/uChildForm.dfm b/demos/Delphi_VCL/MDIExternalPumpBrowser/uChildForm.dfm index 8e3e520f..8e52032b 100644 --- a/demos/Delphi_VCL/MDIExternalPumpBrowser/uChildForm.dfm +++ b/demos/Delphi_VCL/MDIExternalPumpBrowser/uChildForm.dfm @@ -78,7 +78,6 @@ object ChildForm: TChildForm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 592 Top = 288 end diff --git a/demos/Delphi_VCL/MDIExternalPumpBrowser/uChildForm.pas b/demos/Delphi_VCL/MDIExternalPumpBrowser/uChildForm.pas index 34a36e19..82c27c21 100644 --- a/demos/Delphi_VCL/MDIExternalPumpBrowser/uChildForm.pas +++ b/demos/Delphi_VCL/MDIExternalPumpBrowser/uChildForm.pas @@ -34,7 +34,6 @@ type procedure FormDestroy(Sender: TObject); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1LoadingStateChange(Sender: TObject; const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean); procedure Chromium1StatusMessage(Sender: TObject; const browser: ICefBrowser; const value: ustring); @@ -47,7 +46,6 @@ type protected procedure BrowserCreatedMsg(var aMessage : TMessage); message CEFBROWSER_CREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEFBROWSER_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -63,9 +61,8 @@ implementation // Destruction steps // ================= -// 1. FormCloseQuery calls TChromium.CloseBrowser -// 2. TChromium.OnClose sends a CEFBROWSER_DESTROY message to destroy CEFWindowParent1 in the main thread. -// 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. uses uCEFRequestContext, uCEFApplication; @@ -100,12 +97,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 TChildForm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEFBROWSER_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TChildForm.Chromium1LoadingStateChange(Sender: TObject; const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean); begin if isLoading then @@ -139,6 +130,7 @@ begin FClosing := True; Panel1.Enabled := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -172,7 +164,7 @@ begin TempCache := GlobalCEFApp.RootCache + '\cache2'; if MainForm.NewContextChk.Checked then - TempContext := TCefRequestContextRef.New(TempCache, '', '', False, False, False) + TempContext := TCefRequestContextRef.New(TempCache, '', '', False, False) else TempContext := nil; @@ -214,9 +206,4 @@ begin Button1.Click; end; -procedure TChildForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/MediaRouter/uMediaRouterFrm.dfm b/demos/Delphi_VCL/MediaRouter/uMediaRouterFrm.dfm index 9b2264c8..cd94483d 100644 --- a/demos/Delphi_VCL/MediaRouter/uMediaRouterFrm.dfm +++ b/demos/Delphi_VCL/MediaRouter/uMediaRouterFrm.dfm @@ -313,7 +313,6 @@ object MediaRouterFrm: TMediaRouterFrm OnMediaSinkDeviceInfo = Chromium1MediaSinkDeviceInfo OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnSinks = Chromium1Sinks OnRoutes = Chromium1Routes OnRouteStateChanged = Chromium1RouteStateChanged diff --git a/demos/Delphi_VCL/MediaRouter/uMediaRouterFrm.pas b/demos/Delphi_VCL/MediaRouter/uMediaRouterFrm.pas index bb5314f7..190bd485 100644 --- a/demos/Delphi_VCL/MediaRouter/uMediaRouterFrm.pas +++ b/demos/Delphi_VCL/MediaRouter/uMediaRouterFrm.pas @@ -62,12 +62,11 @@ type procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction: TCefCloseBrowserAction); procedure Chromium1Sinks(Sender: TObject; const sinks: TCefMediaSinkArray); procedure Chromium1Routes(Sender: TObject; const routes: TCefMediaRouteArray); procedure Chromium1RouteStateChanged(Sender: TObject; const route: ICefMediaRoute; state: TCefMediaRouteConnectionState); procedure Chromium1RouteMessageReceived(Sender: TObject; const route: ICefMediaRoute; const message_: ustring); - procedure Chromium1MediaRouteCreateFinished(Sender: TObject; result: Integer; const error: ustring; const route: ICefMediaRoute); + procedure Chromium1MediaRouteCreateFinished(Sender: TObject; result: TCefMediaRouterCreateResult; const error: ustring; const route: ICefMediaRoute); procedure Chromium1MediaSinkDeviceInfo(Sender: TObject; const ip_address: ustring; port: Integer; const model_name: ustring); procedure Timer1Timer(Sender: TObject); @@ -93,7 +92,6 @@ type FSinks : TCefMediaSinkInfoArray; FRoutes : TCefMediaRouteInfoArray; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure PendingLogLinesMsg(var aMessage : TMessage); message MEDIA_ROUTER_PENDING_LOG_LINES; procedure RefreshSinksMsg(var aMessage : TMessage); message MEDIA_ROUTER_REFRESH_SINKS; procedure RefreshRoutesMsg(var aMessage : TMessage); message MEDIA_ROUTER_REFRESH_ROUTES; @@ -200,15 +198,8 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TMediaRouterFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction: TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TMediaRouterFrm.Chromium1MediaRouteCreateFinished(Sender: TObject; - result: Integer; const error: ustring; const route: ICefMediaRoute); + result: TCefMediaRouterCreateResult; const error: ustring; const route: ICefMediaRoute); var TempMsg, TempID : string; begin @@ -308,6 +299,7 @@ begin Chromium1.ExecuteDevToolsMethod(0, 'Cast.disable', nil); sleep(500); Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -319,6 +311,8 @@ begin FRoutes := nil; FMediaCS := TCriticalSection.Create; FLog := TStringList.Create; + + //Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TMediaRouterFrm.FormDestroy(Sender: TObject); @@ -423,11 +417,6 @@ begin Timer1.Enabled := True; end; -procedure TMediaRouterFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TMediaRouterFrm.PendingLogLinesMsg(var aMessage : TMessage); begin if FClosing then exit; diff --git a/demos/Delphi_VCL/MiniBrowser/MiniBrowser.dpr b/demos/Delphi_VCL/MiniBrowser/MiniBrowser.dpr index 21f4a450..971e16d2 100644 --- a/demos/Delphi_VCL/MiniBrowser/MiniBrowser.dpr +++ b/demos/Delphi_VCL/MiniBrowser/MiniBrowser.dpr @@ -25,6 +25,8 @@ const {$IFDEF WIN32}{$SetPEFlags IMAGE_FILE_LARGE_ADDRESS_AWARE}{$ENDIF} begin + ReportMemoryLeaksOnShutdown := True; + CreateGlobalCEFApp; if GlobalCEFApp.StartMainProcess then diff --git a/demos/Delphi_VCL/MiniBrowser/uMiniBrowser.dfm b/demos/Delphi_VCL/MiniBrowser/uMiniBrowser.dfm index 4d22812c..4ba998cd 100644 --- a/demos/Delphi_VCL/MiniBrowser/uMiniBrowser.dfm +++ b/demos/Delphi_VCL/MiniBrowser/uMiniBrowser.dfm @@ -306,7 +306,6 @@ object MiniBrowserFrm: TMiniBrowserFrm OnDownloadUpdated = Chromium1DownloadUpdated OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnCertificateError = Chromium1CertificateError OnSelectClientCertificate = Chromium1SelectClientCertificate OnBeforeResourceLoad = Chromium1BeforeResourceLoad diff --git a/demos/Delphi_VCL/MiniBrowser/uMiniBrowser.pas b/demos/Delphi_VCL/MiniBrowser/uMiniBrowser.pas index 03189079..b13c3bd0 100644 --- a/demos/Delphi_VCL/MiniBrowser/uMiniBrowser.pas +++ b/demos/Delphi_VCL/MiniBrowser/uMiniBrowser.pas @@ -64,6 +64,7 @@ const MINIBROWSER_CONTEXTMENU_COLORSCHEMESYSTEM = MENU_ID_USER_FIRST + 21; MINIBROWSER_CONTEXTMENU_COLORSCHEMELIGHT = MENU_ID_USER_FIRST + 22; MINIBROWSER_CONTEXTMENU_COLORSCHEMEDARK = MENU_ID_USER_FIRST + 23; + MINIBROWSER_CONTEXTMENU_TASKMANAGER = MENU_ID_USER_FIRST + 24; DEVTOOLS_SCREENSHOT_MSGID = 1001; DEVTOOLS_MHTML_MSGID = 1002; @@ -155,7 +156,6 @@ type procedure Chromium1BeforeDownload(Sender: TObject; const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback; var aResult : boolean); procedure Chromium1DownloadUpdated(Sender: TObject; const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback); procedure Chromium1BeforeResourceLoad(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const callback: ICefCallback; out Result: TCefReturnValue); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1RenderCompMsg(Sender: TObject; var aMessage : TMessage; var aHandled: Boolean); procedure Chromium1LoadingProgressChange(Sender: TObject; const browser: ICefBrowser; const progress: Double); @@ -241,6 +241,8 @@ type procedure ShowDevTools; overload; procedure HideDevTools; + procedure ShowTaskManager; + procedure HandleKeyUp(const aMsg : TMsg; var aHandled : boolean); procedure HandleKeyDown(const aMsg : TMsg; var aHandled : boolean); procedure HandleBrowserInfo(const aResult : ICefValue); @@ -254,7 +256,6 @@ type function ShowSaveFileDialog(var aFilePaths : TStringList) : boolean; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure ShowDevToolsMsg(var aMessage : TMessage); message MINIBROWSER_SHOWDEVTOOLS; procedure HideDevToolsMsg(var aMessage : TMessage); message MINIBROWSER_HIDEDEVTOOLS; procedure CopyAllTextMsg(var aMessage : TMessage); message MINIBROWSER_COPYALLTEXT; @@ -296,13 +297,12 @@ implementation uses uPreferences, uCefStringMultimap, uCEFMiscFunctions, uSimpleTextViewer, uCEFClient, uFindFrm, uCEFDictionaryValue, uDirectorySelector, uSelectCertForm, - uCEFWindowInfoWrapper; + uCEFWindowInfoWrapper, uCEFTaskManager; // 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 GlobalCEFApp_OnUncaughtException(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace); begin @@ -327,7 +327,6 @@ begin GlobalCEFApp.LogSeverity := LOGSEVERITY_INFO; GlobalCEFApp.UncaughtExceptionStackSize := 50; GlobalCEFApp.OnUncaughtException := GlobalCEFApp_OnUncaughtException; - GlobalCEFApp.ChromeRuntime := True; end; procedure TMiniBrowserFrm.BackBtnClick(Sender: TObject); @@ -424,6 +423,7 @@ begin model.AddItem(MINIBROWSER_CONTEXTMENU_JSPRINTDOC, 'Print using Javascript'); model.AddItem(MINIBROWSER_CONTEXTMENU_SHOWRESPONSE, 'Show server headers'); model.AddItem(MINIBROWSER_CONTEXTMENU_BROWSERINFO, 'Browser information...'); + model.AddItem(MINIBROWSER_CONTEXTMENU_TASKMANAGER, 'Task Manager...'); if DevTools.Visible then model.AddItem(MINIBROWSER_CONTEXTMENU_HIDEDEVTOOLS, 'Hide DevTools') @@ -553,18 +553,6 @@ begin Result := False; end; -procedure TMiniBrowserFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - if (browser <> nil) and - (Chromium1.BrowserId = browser.Identifier) and - (CEFWindowParent1 <> nil) then - begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; - end; -end; - procedure TMiniBrowserFrm.Chromium1ConsoleMessage(Sender: TObject; const browser: ICefBrowser; level: TCefLogSeverity; const message_, source: ustring; line: Integer; out Result: Boolean); @@ -670,6 +658,9 @@ begin MINIBROWSER_CONTEXTMENU_COLORSCHEMESYSTEM : Chromium1.SetChromeColorScheme(CEF_COLOR_VARIANT_SYSTEM, 0); + + MINIBROWSER_CONTEXTMENU_TASKMANAGER : + ShowTaskManager; end else case commandId of @@ -1438,10 +1429,7 @@ end; procedure TMiniBrowserFrm.FindText1Click(Sender: TObject); begin - if GlobalCEFApp.ChromeRuntime then - Chromium1.ExecuteChromeCommand(IDC_FIND, CEF_WOD_CURRENT_TAB) - else - FindFrm.Show; + Chromium1.ExecuteChromeCommand(IDC_FIND, CEF_WOD_CURRENT_TAB); end; procedure TMiniBrowserFrm.Flushcookies1Click(Sender: TObject); @@ -1465,9 +1453,7 @@ begin // stored browsers and not only the main browser. Chromium1.CloseAllBrowsers; - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; + CEFWindowParent1.Free; end; end; @@ -1557,11 +1543,6 @@ begin NavControlPnl.Enabled := True; end; -procedure TMiniBrowserFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - FreeAndNil(CEFWindowParent1); -end; - procedure TMiniBrowserFrm.Acceptlanguage1Click(Sender: TObject); var TempLanguageList : ustring; @@ -2018,6 +1999,54 @@ begin end; end; +procedure TMiniBrowserFrm.ShowTaskManager; +var + TempTaskManager : ICefTaskManager; + i : integer; + TempIDs: TCefCustomInt64Array; + TempInfo : TCustomTaskInfo; + TempResult : string; +begin + TempTaskManager := TCefTaskManagerRef.New; + + if assigned(TempTaskManager) and + TempTaskManager.GetTaskIdsList(TempIDs) then + begin + TempResult := 'Task Manager Information :' + CRLF + CRLF; + i := 0; + + while (i < length(TempIDs)) do + begin + if TempTaskManager.GetTaskInfo(TempIDs[i], TempInfo) then + begin + TempResult := TempResult + 'id: ' + inttostr(TempInfo.id) + ', type: '; + + case TempInfo.type_ of + CEF_TASK_TYPE_BROWSER : TempResult := TempResult + 'browser'; + CEF_TASK_TYPE_GPU : TempResult := TempResult + 'GPU'; + CEF_TASK_TYPE_ZYGOTE : TempResult := TempResult + 'zygote'; + CEF_TASK_TYPE_UTILITY : TempResult := TempResult + 'utility'; + CEF_TASK_TYPE_RENDERER : TempResult := TempResult + 'renderer'; + CEF_TASK_TYPE_EXTENSION : TempResult := TempResult + 'extension'; + CEF_TASK_TYPE_GUEST : TempResult := TempResult + 'guest'; + CEF_TASK_TYPE_PLUGIN : TempResult := TempResult + 'plugin'; + CEF_TASK_TYPE_SANDBOX_HELPER : TempResult := TempResult + 'sandbox helper'; + CEF_TASK_TYPE_DEDICATED_WORKER : TempResult := TempResult + 'dedicated worker'; + CEF_TASK_TYPE_SHARED_WORKER : TempResult := TempResult + 'shared worker'; + CEF_TASK_TYPE_SERVICE_WORKER : TempResult := TempResult + 'service worker'; + else TempResult := TempResult + 'unknown'; + end; + + TempResult := TempResult + ', title: ' + TempInfo.title + CRLF; + end; + + inc(i); + end; + + showmessage(TempResult); + end; +end; + procedure TMiniBrowserFrm.WMMove(var aMessage : TWMMove); begin inherited; diff --git a/demos/Delphi_VCL/MiniBrowserD7/uMiniBrowser.pas b/demos/Delphi_VCL/MiniBrowserD7/uMiniBrowser.pas index e7dcbd95..4b706a3b 100644 --- a/demos/Delphi_VCL/MiniBrowserD7/uMiniBrowser.pas +++ b/demos/Delphi_VCL/MiniBrowserD7/uMiniBrowser.pas @@ -341,6 +341,7 @@ begin // used when you call any method or property in TChromium. Chromium1.MultiBrowserMode := True; Chromium1.DefaultURL := MINIBROWSER_HOMEPAGE; + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TMiniBrowserFrm.FormShow(Sender: TObject); diff --git a/demos/Delphi_VCL/MobileBrowser/uMobileBrowser.dfm b/demos/Delphi_VCL/MobileBrowser/uMobileBrowser.dfm index dc27f4ef..7af2acbe 100644 --- a/demos/Delphi_VCL/MobileBrowser/uMobileBrowser.dfm +++ b/demos/Delphi_VCL/MobileBrowser/uMobileBrowser.dfm @@ -454,9 +454,6 @@ object Form1: TForm1 'https://coveryourtracks.eff.org/' 'https://ipleak.com/full-report/' 'https://xsinator.com/testing.html') - ExplicitLeft = 392 - ExplicitTop = 16 - ExplicitWidth = 145 end end object CEFWindowParent1: TCEFWindowParent @@ -479,7 +476,6 @@ object Form1: TForm1 OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnOpenUrlFromTab = Chromium1OpenUrlFromTab OnDevToolsMethodResult = Chromium1DevToolsMethodResult Left = 56 diff --git a/demos/Delphi_VCL/MobileBrowser/uMobileBrowser.pas b/demos/Delphi_VCL/MobileBrowser/uMobileBrowser.pas index 3572df49..ddf0a9ec 100644 --- a/demos/Delphi_VCL/MobileBrowser/uMobileBrowser.pas +++ b/demos/Delphi_VCL/MobileBrowser/uMobileBrowser.pas @@ -62,7 +62,6 @@ type procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(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, Result: Boolean); procedure Chromium1OpenUrlFromTab(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean; out Result: Boolean); @@ -83,7 +82,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure HandleSetUserAgentResult(aSuccess : boolean; const aResult: ICefValue); procedure HandleSetTouchEmulationEnabledResult(aSuccess : boolean; const aResult: ICefValue); @@ -113,9 +111,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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. const DEVTOOLS_SETUSERAGENTOVERRIDE_MSGID = 1; @@ -130,7 +127,6 @@ begin GlobalCEFApp.cache := 'cache'; GlobalCEFApp.EnablePrintPreview := True; GlobalCEFApp.EnableGPU := True; - GlobalCEFApp.ChromeRuntime := True; {$IFDEF DEBUG} GlobalCEFApp.LogFile := 'debug.log'; GlobalCEFApp.LogSeverity := LOGSEVERITY_INFO; @@ -146,10 +142,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); - - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; + CEFWindowParent1.Free; end; end; @@ -203,13 +196,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 TForm1.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TForm1.Chromium1DevToolsMethodResult(Sender: TObject; const browser: ICefBrowser; message_id: Integer; success: Boolean; const result: ICefValue); @@ -262,11 +248,6 @@ begin AddressPnl.Enabled := True; end; -procedure TForm1.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TForm1.GoBtnClick(Sender: TObject); begin // This will load the URL in the edit box diff --git a/demos/Delphi_VCL/NetworkTrackerBrowser/uMainForm.dfm b/demos/Delphi_VCL/NetworkTrackerBrowser/uMainForm.dfm index 131ddc81..b8ee1f48 100644 --- a/demos/Delphi_VCL/NetworkTrackerBrowser/uMainForm.dfm +++ b/demos/Delphi_VCL/NetworkTrackerBrowser/uMainForm.dfm @@ -94,7 +94,6 @@ object MainForm: TMainForm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnOpenUrlFromTab = Chromium1OpenUrlFromTab OnDevToolsMethodResult = Chromium1DevToolsMethodResult OnDevToolsRawEvent = Chromium1DevToolsRawEvent diff --git a/demos/Delphi_VCL/NetworkTrackerBrowser/uMainForm.pas b/demos/Delphi_VCL/NetworkTrackerBrowser/uMainForm.pas index 7d280079..db558405 100644 --- a/demos/Delphi_VCL/NetworkTrackerBrowser/uMainForm.pas +++ b/demos/Delphi_VCL/NetworkTrackerBrowser/uMainForm.pas @@ -40,7 +40,6 @@ type procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(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, Result: Boolean); procedure Chromium1OpenUrlFromTab(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean; out Result: Boolean); @@ -63,7 +62,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure AddLogLine(const aLogLine: string); public @@ -95,9 +93,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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 TMainForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin @@ -108,6 +105,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -174,13 +172,6 @@ begin CEF_WOD_NEW_WINDOW]); end; -procedure TMainForm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TMainForm.Chromium1DevToolsMethodResult(Sender: TObject; const browser: ICefBrowser; message_id: Integer; success: Boolean; const result: ICefValue); @@ -221,11 +212,6 @@ begin AddressPnl.Enabled := True; end; -procedure TMainForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TMainForm.GoBtnClick(Sender: TObject); begin // This will load the URL in the edit box diff --git a/demos/Delphi_VCL/PopupBrowser/PopupBrowser.dproj b/demos/Delphi_VCL/PopupBrowser/PopupBrowser.dproj index 600b3384..79826c95 100644 --- a/demos/Delphi_VCL/PopupBrowser/PopupBrowser.dproj +++ b/demos/Delphi_VCL/PopupBrowser/PopupBrowser.dproj @@ -6,9 +6,10 @@ PopupBrowser.dpr True Debug - Win32 + Win64 3 Application + PopupBrowser true @@ -827,6 +828,9 @@ 1 + + 1 + @@ -1120,6 +1124,7 @@ + True diff --git a/demos/Delphi_VCL/PopupBrowser/uChildForm.pas b/demos/Delphi_VCL/PopupBrowser/uChildForm.pas index d12b57f6..2f336a86 100644 --- a/demos/Delphi_VCL/PopupBrowser/uChildForm.pas +++ b/demos/Delphi_VCL/PopupBrowser/uChildForm.pas @@ -672,9 +672,10 @@ begin Chromium1.ShutdownDragAndDrop; if (FPopUpBitmap <> nil) then FreeAndNil(FPopUpBitmap); + if (FResizeCS <> nil) then FreeAndNil(FResizeCS); - if FClientInitialized and TMainForm(Owner).HandleAllocated then - PostMessage(TMainForm(Owner).Handle, CEF_CHILDDESTROYED, 0, 0); + if FClientInitialized and MainForm.HandleAllocated then + PostMessage(MainForm.Handle, CEF_CHILDDESTROYED, 0, 0); end; procedure TChildForm.FormHide(Sender: TObject); diff --git a/demos/Delphi_VCL/PopupBrowser/uMainForm.pas b/demos/Delphi_VCL/PopupBrowser/uMainForm.pas index bc82aeb0..ce130c15 100644 --- a/demos/Delphi_VCL/PopupBrowser/uMainForm.pas +++ b/demos/Delphi_VCL/PopupBrowser/uMainForm.pas @@ -46,6 +46,7 @@ type protected FChildForm : TChildForm; FCriticalSection : TCriticalSection; + FChildCounter : cardinal; // Used to create unique child form names. FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosingMainForm : boolean; // Set to True in the CloseQuery event. FClosingChildren : boolean; // Set to True in the CloseQuery event. @@ -53,6 +54,7 @@ type function GetPopupChildCount : integer; procedure ClosePopupChildren; + procedure CreateChildForm; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; @@ -103,7 +105,7 @@ uses // Destruction steps // ================= // 1. FormCloseQuery sets CanClose to FALSE and it closes all child forms. -// 2. When all the child forms are closed then FormCloseQuery is triggered again, sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. +// 2. When all the child forms are closed then FormCloseQuery is triggered again, calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. // 3. TChromium.OnClose sends a CEF_DESTROY message to destroy CEFWindowParent1 in the main thread, which triggers the TChromium.OnBeforeClose event. // 4. TChromium.OnBeforeClose sets FCanClose := True and sends WM_CLOSE to the form. @@ -111,15 +113,7 @@ procedure CreateGlobalCEFApp; begin GlobalCEFApp := TCefApplication.Create; GlobalCEFApp.WindowlessRenderingEnabled := True; - //GlobalCEFApp.LogFile := 'debug.log'; - //GlobalCEFApp.LogSeverity := LOGSEVERITY_INFO; - { - GlobalCEFApp.FrameworkDirPath := 'c:\cef'; - GlobalCEFApp.ResourcesDirPath := 'c:\cef'; - GlobalCEFApp.LocalesDirPath := 'c:\cef\locales'; - GlobalCEFApp.cache := 'c:\cef\cache'; - GlobalCEFApp.UserDataPath := 'c:\cef\User Data'; - } + GlobalCEFApp.SetCurrentDir := True; end; procedure TMainForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); @@ -154,6 +148,7 @@ begin Chromium1.DefaultURL := AddressEdt.Text; Chromium1.Options.BackgroundColor := CefColorSetARGB($FF, $FF, $FF, $FF); + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TMainForm.FormDestroy(Sender: TObject); @@ -276,6 +271,18 @@ begin end; end; +procedure TMainForm.CreateChildForm; +begin + if (FChildCounter < high(cardinal)) then + inc(FChildCounter) + else + FChildCounter := 1; + + FChildForm := TChildForm.Create(self); + FChildForm.Name := 'ChildForm_' + IntToStr(FChildCounter); + FChildForm.Tag := FChildCounter; +end; + procedure TMainForm.AppEventsMessage(var Msg: tagMSG; var Handled: Boolean); begin case Msg.message of @@ -291,7 +298,8 @@ end; procedure TMainForm.BrowserCreatedMsg(var aMessage : TMessage); begin - FChildForm := TChildForm.Create(self); + CreateChildForm; + Caption := 'Popup Browser'; AddressPnl.Enabled := True; end; @@ -309,7 +317,7 @@ begin if (FChildForm <> nil) then PostMessage(FChildForm.Handle, CEF_SHOWCHILD, 0, 0); - FChildForm := TChildForm.Create(self); + CreateChildForm; finally FCriticalSection.Release; end; @@ -317,7 +325,8 @@ end; procedure TMainForm.ChildDestroyedMsg(var aMessage : TMessage); begin - if FClosingChildren and (PopupChildCount = 0) then Close; + if FClosingChildren and (PopupChildCount = 0) then + Close; end; procedure TMainForm.GoBtnClick(Sender: TObject); diff --git a/demos/Delphi_VCL/PopupBrowser2/PopupBrowser2.dproj b/demos/Delphi_VCL/PopupBrowser2/PopupBrowser2.dproj index 12c56a12..2354e605 100644 --- a/demos/Delphi_VCL/PopupBrowser2/PopupBrowser2.dproj +++ b/demos/Delphi_VCL/PopupBrowser2/PopupBrowser2.dproj @@ -9,6 +9,7 @@ Win32 3 Application + PopupBrowser2 true @@ -827,6 +828,9 @@ 1 + + 1 + @@ -1120,6 +1124,7 @@ + True diff --git a/demos/Delphi_VCL/PopupBrowser2/uChildForm.dfm b/demos/Delphi_VCL/PopupBrowser2/uChildForm.dfm index cd153fa4..1a6e64eb 100644 --- a/demos/Delphi_VCL/PopupBrowser2/uChildForm.dfm +++ b/demos/Delphi_VCL/PopupBrowser2/uChildForm.dfm @@ -28,7 +28,6 @@ object ChildForm: TChildForm OnTitleChange = Chromium1TitleChange OnBeforePopup = Chromium1BeforePopup OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 24 Top = 56 end diff --git a/demos/Delphi_VCL/PopupBrowser2/uChildForm.pas b/demos/Delphi_VCL/PopupBrowser2/uChildForm.pas index 1c730845..fb7745ff 100644 --- a/demos/Delphi_VCL/PopupBrowser2/uChildForm.pas +++ b/demos/Delphi_VCL/PopupBrowser2/uChildForm.pas @@ -23,12 +23,11 @@ type procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); - procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); + procedure FormClose(Sender: TObject; var Action: TCloseAction); 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 Chromium1TitleChange(Sender: TObject; const browser: ICefBrowser; const title: ustring); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -41,7 +40,6 @@ type procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; public procedure AfterConstruction; override; @@ -143,12 +141,6 @@ begin end; end; -procedure TChildForm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TChildForm.Chromium1TitleChange(Sender: TObject; const browser: ICefBrowser; const title: ustring); begin Caption := title; @@ -196,10 +188,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); - - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; + CEFWindowParent1.Free; end; end; @@ -216,9 +205,4 @@ begin PostMessage(TMainForm(Owner).Handle, CEF_CHILDDESTROYED, 0, 0); end; -procedure TChildForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/PopupBrowser2/uMainForm.dfm b/demos/Delphi_VCL/PopupBrowser2/uMainForm.dfm index dc4bcc56..7b4b0240 100644 --- a/demos/Delphi_VCL/PopupBrowser2/uMainForm.dfm +++ b/demos/Delphi_VCL/PopupBrowser2/uMainForm.dfm @@ -71,7 +71,6 @@ object MainForm: TMainForm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 56 Top = 152 end diff --git a/demos/Delphi_VCL/PopupBrowser2/uMainForm.pas b/demos/Delphi_VCL/PopupBrowser2/uMainForm.pas index 2fd39e52..561868f2 100644 --- a/demos/Delphi_VCL/PopupBrowser2/uMainForm.pas +++ b/demos/Delphi_VCL/PopupBrowser2/uMainForm.pas @@ -39,11 +39,11 @@ type 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); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction: TCefCloseBrowserAction); protected FChildForm : TChildForm; FCriticalSection : TCriticalSection; + FChildCounter : cardinal; // Used to create unique child form names. FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosingMainForm : boolean; // Set to True in the CloseQuery event. FClosingChildren : boolean; // Set to True in the CloseQuery event. @@ -51,6 +51,7 @@ type function GetPopupChildCount : integer; procedure ClosePopupChildren; + procedure CreateChildForm; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; @@ -58,7 +59,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure CreateNextChildMsg(var aMessage : TMessage); message CEF_CREATENEXTCHILD; procedure ChildDestroyedMsg(var aMessage : TMessage); message CEF_CHILDDESTROYED; @@ -101,14 +101,12 @@ uses // Destruction steps // ================= // 1. FormCloseQuery sets CanClose to FALSE and it closes all child forms. -// 2. When all the child forms are closed then FormCloseQuery is triggered again, sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 3. TChromium.OnClose sends a CEF_DESTROY message to destroy CEFWindowParent1 in the main thread, which triggers the TChromium.OnBeforeClose event. -// 4. TChromium.OnBeforeClose sets FCanClose := True and sends WM_CLOSE to the form. +// 2. When all the child forms are closed then FormCloseQuery is triggered again, destroys CEFWindowParent1 and calls TChromium.CloseBrowser which triggers the TChromium.OnBeforeClose event. +// 3. TChromium.OnBeforeClose sets FCanClose := True and sends WM_CLOSE to the form. procedure CreateGlobalCEFApp; begin GlobalCEFApp := TCefApplication.Create; - GlobalCEFApp.ChromeRuntime := True; //GlobalCEFApp.LogFile := 'cef.log'; //GlobalCEFApp.LogSeverity := LOGSEVERITY_VERBOSE; end; @@ -132,10 +130,7 @@ begin FClosingMainForm := True; Visible := False; Chromium1.CloseBrowser(True); - - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; + CEFWindowParent1.Free; end; end; end; @@ -146,6 +141,7 @@ begin FClosingMainForm := False; FCanClose := False; FCriticalSection := TCriticalSection.Create; + FChildCounter := 0; Chromium1.DefaultURL := AddressEdt.Text; Chromium1.Options.BackgroundColor := CefColorSetARGB($FF, $FF, $FF, $FF); @@ -205,12 +201,6 @@ begin end; end; -procedure TMainForm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction: TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - function TMainForm.CreateClientHandler(var windowInfo : TCefWindowInfo; var client : ICefClient; const targetFrameName : string; @@ -271,16 +261,20 @@ begin end; end; -procedure TMainForm.BrowserCreatedMsg(var aMessage : TMessage); +procedure TMainForm.CreateChildForm; begin + inc(FChildCounter); + FChildForm := TChildForm.Create(self); - Caption := 'Popup Browser'; - AddressPnl.Enabled := True; + FChildForm.Name := 'ChildForm_' + IntToStr(FChildCounter); end; -procedure TMainForm.BrowserDestroyMsg(var aMessage : TMessage); +procedure TMainForm.BrowserCreatedMsg(var aMessage : TMessage); begin - CEFWindowParent1.Free; + CreateChildForm; + + Caption := 'Popup Browser'; + AddressPnl.Enabled := True; end; procedure TMainForm.CreateNextChildMsg(var aMessage : TMessage); @@ -294,7 +288,7 @@ begin FChildForm.Show; end; - FChildForm := TChildForm.Create(self); + CreateChildForm; finally FCriticalSection.Release; end; @@ -302,7 +296,8 @@ end; procedure TMainForm.ChildDestroyedMsg(var aMessage : TMessage); begin - if FClosingChildren and (PopupChildCount = 0) then Close; + if FClosingChildren and (PopupChildCount = 0) then + Close; end; procedure TMainForm.GoBtnClick(Sender: TObject); diff --git a/demos/Delphi_VCL/PostInspectorBrowser/uPostInspectorBrowser.dfm b/demos/Delphi_VCL/PostInspectorBrowser/uPostInspectorBrowser.dfm index 878070f0..55b48bcf 100644 --- a/demos/Delphi_VCL/PostInspectorBrowser/uPostInspectorBrowser.dfm +++ b/demos/Delphi_VCL/PostInspectorBrowser/uPostInspectorBrowser.dfm @@ -91,7 +91,6 @@ object Form1: TForm1 OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnBeforeResourceLoad = Chromium1BeforeResourceLoad Left = 56 Top = 152 diff --git a/demos/Delphi_VCL/PostInspectorBrowser/uPostInspectorBrowser.pas b/demos/Delphi_VCL/PostInspectorBrowser/uPostInspectorBrowser.pas index bfdc8a9d..ba2a6a77 100644 --- a/demos/Delphi_VCL/PostInspectorBrowser/uPostInspectorBrowser.pas +++ b/demos/Delphi_VCL/PostInspectorBrowser/uPostInspectorBrowser.pas @@ -39,7 +39,6 @@ type 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1BeforeResourceLoad(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const callback: ICefCallback; out Result: TCefReturnValue); @@ -59,7 +58,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure ShowDataMsg(var aMessage : TMessage); message CEF_SHOWDATA; procedure HandleRequest(const request : ICefRequest; aIsMain : boolean); @@ -93,9 +91,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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 @@ -113,6 +110,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -353,24 +351,12 @@ begin Result := (targetDisposition in [CEF_WOD_NEW_FOREGROUND_TAB, CEF_WOD_NEW_BACKGROUND_TAB, CEF_WOD_NEW_POPUP, CEF_WOD_NEW_WINDOW]); end; -procedure TForm1.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TForm1.BrowserCreatedMsg(var aMessage : TMessage); begin Caption := 'POST Inspector Browser'; AddressPnl.Enabled := True; end; -procedure TForm1.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TForm1.GoBtnClick(Sender: TObject); begin // This will load the URL in the edit box diff --git a/demos/Delphi_VCL/ResponseFilterBrowser/uResponseFilterBrowser.pas b/demos/Delphi_VCL/ResponseFilterBrowser/uResponseFilterBrowser.pas index 9f51347e..d90e4298 100644 --- a/demos/Delphi_VCL/ResponseFilterBrowser/uResponseFilterBrowser.pas +++ b/demos/Delphi_VCL/ResponseFilterBrowser/uResponseFilterBrowser.pas @@ -431,6 +431,8 @@ begin // This event will receive the data TCustomResponseFilter(FFilter).OnFilter := Filter_OnFilter; + + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TResponseFilterBrowserFrm.FormDestroy(Sender: TObject); diff --git a/demos/Delphi_VCL/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.pas b/demos/Delphi_VCL/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.pas index 100ddba8..33fea5e3 100644 --- a/demos/Delphi_VCL/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.pas +++ b/demos/Delphi_VCL/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.pas @@ -205,6 +205,7 @@ procedure TSchemeRegistrationBrowserFrm.FormCreate(Sender: TObject); begin // You can register the Scheme Handler Factory here or later, for example in a context menu command. CefRegisterSchemeHandlerFactory(CUSTOM_SCHEME_NAME, '', THelloScheme); + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TSchemeRegistrationBrowserFrm.FormShow(Sender: TObject); diff --git a/demos/Delphi_VCL/SimpleBrowser/uSimpleBrowser.pas b/demos/Delphi_VCL/SimpleBrowser/uSimpleBrowser.pas index 15227003..3e804201 100644 --- a/demos/Delphi_VCL/SimpleBrowser/uSimpleBrowser.pas +++ b/demos/Delphi_VCL/SimpleBrowser/uSimpleBrowser.pas @@ -103,7 +103,8 @@ begin FClosing := False; // The browser will load the URL in AddressEdt initially. - ChromiumWindow1.ChromiumBrowser.DefaultURL := AddressEdt.Text; + ChromiumWindow1.ChromiumBrowser.DefaultURL := AddressEdt.Text; + ChromiumWindow1.ChromiumBrowser.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TForm1.FormShow(Sender: TObject); diff --git a/demos/Delphi_VCL/SimpleBrowser2/SimpleBrowser2.res b/demos/Delphi_VCL/SimpleBrowser2/SimpleBrowser2.res index 02828828..0b905468 100644 Binary files a/demos/Delphi_VCL/SimpleBrowser2/SimpleBrowser2.res and b/demos/Delphi_VCL/SimpleBrowser2/SimpleBrowser2.res differ diff --git a/demos/Delphi_VCL/SimpleBrowser2/uSimpleBrowser2.dfm b/demos/Delphi_VCL/SimpleBrowser2/uSimpleBrowser2.dfm index d5868554..bfad9490 100644 --- a/demos/Delphi_VCL/SimpleBrowser2/uSimpleBrowser2.dfm +++ b/demos/Delphi_VCL/SimpleBrowser2/uSimpleBrowser2.dfm @@ -70,7 +70,6 @@ object Form1: TForm1 OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnOpenUrlFromTab = Chromium1OpenUrlFromTab Left = 56 Top = 152 diff --git a/demos/Delphi_VCL/SimpleBrowser2/uSimpleBrowser2.pas b/demos/Delphi_VCL/SimpleBrowser2/uSimpleBrowser2.pas index 54396340..f4b86bfc 100644 --- a/demos/Delphi_VCL/SimpleBrowser2/uSimpleBrowser2.pas +++ b/demos/Delphi_VCL/SimpleBrowser2/uSimpleBrowser2.pas @@ -32,7 +32,6 @@ type procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(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, Result: Boolean); procedure Chromium1OpenUrlFromTab(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean; out Result: Boolean); @@ -50,7 +49,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; public { Public declarations } end; @@ -83,9 +81,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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 @@ -93,7 +90,6 @@ begin GlobalCEFApp.cache := 'cache'; GlobalCEFApp.EnablePrintPreview := True; GlobalCEFApp.EnableGPU := True; - GlobalCEFApp.ChromeRuntime := True; {$IFDEF DEBUG} GlobalCEFApp.LogFile := 'debug.log'; GlobalCEFApp.LogSeverity := LOGSEVERITY_INFO; @@ -109,10 +105,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); - - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; + CEFWindowParent1.Free; end; end; @@ -159,13 +152,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 TForm1.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TForm1.Chromium1OpenUrlFromTab(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; @@ -181,11 +167,6 @@ begin AddressPnl.Enabled := True; end; -procedure TForm1.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TForm1.GoBtnClick(Sender: TObject); begin // This will load the URL in the edit box diff --git a/demos/Delphi_VCL/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.pas b/demos/Delphi_VCL/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.pas index 50637a85..4ea3ba73 100644 --- a/demos/Delphi_VCL/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.pas +++ b/demos/Delphi_VCL/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.pas @@ -90,6 +90,8 @@ procedure TSimpleExternalPumpBrowserFrm.FormCreate(Sender: TObject); begin FCanClose := False; FClosing := False; + + ChromiumWindow1.ChromiumBrowser.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TSimpleExternalPumpBrowserFrm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); diff --git a/demos/Delphi_VCL/SubProcess/uSimpleBrowser.dfm b/demos/Delphi_VCL/SubProcess/uSimpleBrowser.dfm index d0a52f95..1b491045 100644 --- a/demos/Delphi_VCL/SubProcess/uSimpleBrowser.dfm +++ b/demos/Delphi_VCL/SubProcess/uSimpleBrowser.dfm @@ -13,6 +13,7 @@ object Form1: TForm1 Position = poScreenCenter OnActivate = FormActivate OnCloseQuery = FormCloseQuery + OnCreate = FormCreate TextHeight = 13 object ChromiumWindow1: TChromiumWindow Left = 0 diff --git a/demos/Delphi_VCL/SubProcess/uSimpleBrowser.pas b/demos/Delphi_VCL/SubProcess/uSimpleBrowser.pas index 92e679d5..3e1a76bf 100644 --- a/demos/Delphi_VCL/SubProcess/uSimpleBrowser.pas +++ b/demos/Delphi_VCL/SubProcess/uSimpleBrowser.pas @@ -31,6 +31,7 @@ type procedure ChromiumWindow1AfterCreated(Sender: TObject); procedure ChromiumWindow1Close(Sender: TObject); + procedure FormCreate(Sender: TObject); private // You have to handle this two messages to call NotifyMoveOrResizeStarted or some page elements will be misaligned. @@ -92,6 +93,11 @@ begin CanClose := True; end; +procedure TForm1.FormCreate(Sender: TObject); +begin + ChromiumWindow1.ChromiumBrowser.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; +end; + procedure TForm1.FormActivate(Sender: TObject); begin if ChromiumWindow1.Initialized then diff --git a/demos/Delphi_VCL/TabbedBrowser/uMainForm.pas b/demos/Delphi_VCL/TabbedBrowser/uMainForm.pas index 5a87ce61..9c43a24d 100644 --- a/demos/Delphi_VCL/TabbedBrowser/uMainForm.pas +++ b/demos/Delphi_VCL/TabbedBrowser/uMainForm.pas @@ -35,17 +35,19 @@ type URLCbx: TComboBox; AddTabBtn: TButton; RemoveTabBtn: TButton; + + procedure FormCreate(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); + + procedure PageControl1Change(Sender: TObject); procedure AddTabBtnClick(Sender: TObject); procedure RemoveTabBtnClick(Sender: TObject); - procedure FormShow(Sender: TObject); - procedure PageControl1Change(Sender: TObject); - procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure BackBtnClick(Sender: TObject); procedure ForwardBtnClick(Sender: TObject); procedure ReloadBtnClick(Sender: TObject); procedure StopBtnClick(Sender: TObject); procedure GoBtnClick(Sender: TObject); - procedure FormCreate(Sender: TObject); protected FClosingTab : boolean; @@ -147,6 +149,7 @@ begin TempChromium.OnClose := Chromium_OnClose; TempChromium.OnBeforeClose := Chromium_OnBeforeClose; TempChromium.OnBeforePopup := Chromium_OnBeforePopup; + TempChromium.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; TempChromium.CreateBrowser(TempWindowParent, ''); end; diff --git a/demos/Delphi_VCL/TabbedBrowser2/uBrowserFrame.pas b/demos/Delphi_VCL/TabbedBrowser2/uBrowserFrame.pas index ce7c21bc..a6484404 100644 --- a/demos/Delphi_VCL/TabbedBrowser2/uBrowserFrame.pas +++ b/demos/Delphi_VCL/TabbedBrowser2/uBrowserFrame.pas @@ -272,7 +272,8 @@ end; procedure TBrowserFrame.CreateBrowser; begin - Chromium1.DefaultURL := FHomepage; + Chromium1.DefaultURL := FHomepage; + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; Chromium1.CreateBrowser(CEFWindowParent1); end; @@ -283,10 +284,6 @@ begin FClosing := True; NavControlPnl.Enabled := False; Chromium1.CloseBrowser(True); - - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; end; end; diff --git a/demos/Delphi_VCL/TabbedBrowser2/uChildForm.pas b/demos/Delphi_VCL/TabbedBrowser2/uChildForm.pas index b57cd65d..dfbf0947 100644 --- a/demos/Delphi_VCL/TabbedBrowser2/uChildForm.pas +++ b/demos/Delphi_VCL/TabbedBrowser2/uChildForm.pas @@ -235,10 +235,6 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); - - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; end; end else @@ -251,6 +247,8 @@ begin FBrowserWasCreated := False; FCanClose := False; FClosing := False; + + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TChildForm.FormDestroy(Sender: TObject); diff --git a/demos/Delphi_VCL/TabbedBrowser2/uMainForm.pas b/demos/Delphi_VCL/TabbedBrowser2/uMainForm.pas index fa6b017f..ad474429 100644 --- a/demos/Delphi_VCL/TabbedBrowser2/uMainForm.pas +++ b/demos/Delphi_VCL/TabbedBrowser2/uMainForm.pas @@ -43,6 +43,7 @@ type FHiddenTab : TBrowserTab; FChildForm : TChildForm; FCriticalSection : TCriticalSection; + FChildCounter : cardinal; // Used to create unique child form names. FCanClose : boolean; FClosing : boolean; // Set to True in the CloseQuery event. FLastTabID : cardinal; // Used by NextTabID to generate unique tab IDs @@ -56,6 +57,7 @@ type function CloseAllBrowsers : boolean; procedure CloseTab(aIndex : integer); procedure CreateHiddenBrowsers; + procedure CreateChildForm; procedure CEFInitializedMsg(var aMessage : TMessage); message CEF_INITIALIZED; procedure DestroyTabMsg(var aMessage : TMessage); message CEF_DESTROYTAB; @@ -157,7 +159,6 @@ begin GlobalCEFApp.cache := 'cache'; GlobalCEFApp.EnablePrintPreview := True; GlobalCEFApp.OnContextInitialized := GlobalCEFApp_OnContextInitialized; - GlobalCEFApp.ChromeRuntime := True; end; procedure TMainForm.EnableButtonPnl; @@ -275,6 +276,15 @@ begin end; end; +procedure TMainForm.CreateChildForm; +begin + inc(FChildCounter); + + FChildForm := TChildForm.Create(self); + FChildForm.Name := 'ChildForm_' + IntToStr(FChildCounter); +end; + + procedure TMainForm.CreateNextChildMsg(var aMessage : TMessage); begin try @@ -291,7 +301,7 @@ begin FChildForm.Show; end; - FChildForm := TChildForm.Create(self); + CreateChildForm; finally FCriticalSection.Release; end; @@ -346,6 +356,7 @@ begin FLastTabID := 0; FChildForm := nil; FHiddenTab := nil; + FChildCounter := 0; FCriticalSection := TCriticalSection.Create; end; @@ -419,7 +430,7 @@ begin FCriticalSection.Acquire; if (FChildForm = nil) then - FChildForm := TChildForm.Create(self); + CreateChildForm; if (FHiddenTab = nil) then begin @@ -495,61 +506,55 @@ function TMainForm.DoOnBeforePopup(var windowInfo : TCefWindowInfo; const popupFeatures : TCefPopupFeatures; targetDisposition : TCefWindowOpenDisposition) : boolean; begin - if GlobalCEFApp.ChromeRuntime then - Result := False - else - try - FCriticalSection.Acquire; + try + FCriticalSection.Acquire; - case targetDisposition of - CEF_WOD_NEW_FOREGROUND_TAB, - CEF_WOD_NEW_BACKGROUND_TAB : - Result := (FHiddenTab <> nil) and - FHiddenTab.CreateClientHandler(windowInfo, client, targetFrameName, popupFeatures) and - PostMessage(Handle, CEF_CREATENEXTTAB, 0, ord(False)); + case targetDisposition of + CEF_WOD_NEW_FOREGROUND_TAB, + CEF_WOD_NEW_BACKGROUND_TAB : + Result := (FHiddenTab <> nil) and + FHiddenTab.CreateClientHandler(windowInfo, client, targetFrameName, popupFeatures) and + PostMessage(Handle, CEF_CREATENEXTTAB, 0, ord(False)); - CEF_WOD_NEW_WINDOW, - CEF_WOD_NEW_POPUP : - Result := (FChildForm <> nil) and - FChildForm.CreateClientHandler(windowInfo, client, targetFrameName, popupFeatures) and - PostMessage(Handle, CEF_CREATENEXTCHILD, 0, ord(False)); + CEF_WOD_NEW_WINDOW, + CEF_WOD_NEW_POPUP : + Result := (FChildForm <> nil) and + FChildForm.CreateClientHandler(windowInfo, client, targetFrameName, popupFeatures) and + PostMessage(Handle, CEF_CREATENEXTCHILD, 0, ord(False)); - else Result := False; - end; - finally - FCriticalSection.Release; + else Result := False; end; + finally + FCriticalSection.Release; + end; end; function TMainForm.DoOpenUrlFromTab(const targetUrl : string; targetDisposition : TCefWindowOpenDisposition) : boolean; begin - if GlobalCEFApp.ChromeRuntime then - Result := True - else - try - FCriticalSection.Acquire; + try + FCriticalSection.Acquire; - case targetDisposition of - CEF_WOD_NEW_FOREGROUND_TAB, - CEF_WOD_NEW_BACKGROUND_TAB : - begin - FPendingURL := targetUrl; - Result := PostMessage(Handle, CEF_CREATENEXTTAB, 0, ord(True)); - end; + case targetDisposition of + CEF_WOD_NEW_FOREGROUND_TAB, + CEF_WOD_NEW_BACKGROUND_TAB : + begin + FPendingURL := targetUrl; + Result := PostMessage(Handle, CEF_CREATENEXTTAB, 0, ord(True)); + end; - CEF_WOD_NEW_WINDOW, - CEF_WOD_NEW_POPUP : - begin - FPendingURL := targetUrl; - Result := PostMessage(Handle, CEF_CREATENEXTCHILD, 0, ord(True)); - end + CEF_WOD_NEW_WINDOW, + CEF_WOD_NEW_POPUP : + begin + FPendingURL := targetUrl; + Result := PostMessage(Handle, CEF_CREATENEXTCHILD, 0, ord(True)); + end - else Result := False; - end; - finally - FCriticalSection.Release; + else Result := False; end; + finally + FCriticalSection.Release; + end; end; end. diff --git a/demos/Delphi_VCL/TinyBrowser/uTinyBrowser.pas b/demos/Delphi_VCL/TinyBrowser/uTinyBrowser.pas index 95a61523..9cd39553 100644 --- a/demos/Delphi_VCL/TinyBrowser/uTinyBrowser.pas +++ b/demos/Delphi_VCL/TinyBrowser/uTinyBrowser.pas @@ -255,9 +255,8 @@ begin GlobalCEFApp := TCefApplication.Create; GlobalCEFApp.MultiThreadedMessageLoop := False; GlobalCEFApp.ExternalMessagePump := False; - GlobalCEFApp.ChromeRuntime := True; // Enable this line to test the new "ChromeRuntime" mode. It's in experimental state. GlobalCEFApp.OnContextInitialized := GlobalCEFApp_OnContextInitialized; - GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; // This event is only used in "ChromeRuntime" mode + GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; GlobalCEFApp.LogFile := 'debug.log'; GlobalCEFApp.LogSeverity := LOGSEVERITY_INFO; diff --git a/demos/Delphi_VCL/TinyBrowser2/uTinyBrowser2.pas b/demos/Delphi_VCL/TinyBrowser2/uTinyBrowser2.pas index 2b129825..23a3516c 100644 --- a/demos/Delphi_VCL/TinyBrowser2/uTinyBrowser2.pas +++ b/demos/Delphi_VCL/TinyBrowser2/uTinyBrowser2.pas @@ -72,15 +72,10 @@ begin GlobalCEFApp := TCefApplication.Create; GlobalCEFApp.MultiThreadedMessageLoop := False; GlobalCEFApp.ExternalMessagePump := False; - GlobalCEFApp.ChromeRuntime := True; // Enable this line to enable the "ChromeRuntime" mode. It's in experimental state. GlobalCEFApp.cache := 'cache'; GlobalCEFApp.DisablePopupBlocking := True; GlobalCEFApp.OnContextInitialized := GlobalCEFApp_OnContextInitialized; - GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; // This event is only used in "ChromeRuntime" mode - - // This is a workaround for the CEF4Delphi issue #324 : - // https://github.com/salvadordf/CEF4Delphi/issues/324 - GlobalCEFApp.DisableFeatures := 'WinUseBrowserSpellChecker'; + GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; GlobalCEFApp.LogFile := 'debug.log'; GlobalCEFApp.LogSeverity := LOGSEVERITY_INFO; diff --git a/demos/Delphi_VCL/ToolBoxBrowser/uChildForm.dfm b/demos/Delphi_VCL/ToolBoxBrowser/uChildForm.dfm index 99874743..4f2c5f65 100644 --- a/demos/Delphi_VCL/ToolBoxBrowser/uChildForm.dfm +++ b/demos/Delphi_VCL/ToolBoxBrowser/uChildForm.dfm @@ -32,7 +32,6 @@ object ChildForm: TChildForm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 184 Top = 128 end diff --git a/demos/Delphi_VCL/ToolBoxBrowser/uChildForm.pas b/demos/Delphi_VCL/ToolBoxBrowser/uChildForm.pas index af5fba8a..146dfee7 100644 --- a/demos/Delphi_VCL/ToolBoxBrowser/uChildForm.pas +++ b/demos/Delphi_VCL/ToolBoxBrowser/uChildForm.pas @@ -28,7 +28,6 @@ type procedure FormDestroy(Sender: TObject); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1PreKeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out isKeyboardShortcut, Result: Boolean); procedure Chromium1KeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out Result: Boolean); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); @@ -42,7 +41,6 @@ type protected procedure BrowserCreatedMsg(var aMessage : TMessage); message CEFBROWSER_CREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEFBROWSER_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -65,9 +63,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery calls TChromium.CloseBrowser -// 2. TChromium.OnClose sends a CEFBROWSER_DESTROY message to destroy CEFWindowParent1 in the main thread. -// 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 TChildForm.Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); begin @@ -93,12 +90,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 TChildForm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEFBROWSER_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TChildForm.Chromium1KeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out Result: Boolean); @@ -179,6 +170,7 @@ begin begin FClosing := True; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -234,9 +226,4 @@ begin Chromium1.LoadURL(FHomepage); end; -procedure TChildForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Delphi_VCL/ToolBoxBrowser2/ToolBoxBrowser2.dproj b/demos/Delphi_VCL/ToolBoxBrowser2/ToolBoxBrowser2.dproj index 09754cf4..4e6a2596 100644 --- a/demos/Delphi_VCL/ToolBoxBrowser2/ToolBoxBrowser2.dproj +++ b/demos/Delphi_VCL/ToolBoxBrowser2/ToolBoxBrowser2.dproj @@ -9,6 +9,7 @@ Win32 3 Application + ToolBoxBrowser2 true @@ -819,6 +820,9 @@ 1 + + 1 + @@ -1112,6 +1116,7 @@ + True diff --git a/demos/Delphi_VCL/ToolBoxSubProcessBrowser/uChildForm.dfm b/demos/Delphi_VCL/ToolBoxSubProcessBrowser/uChildForm.dfm index 99874743..4f2c5f65 100644 --- a/demos/Delphi_VCL/ToolBoxSubProcessBrowser/uChildForm.dfm +++ b/demos/Delphi_VCL/ToolBoxSubProcessBrowser/uChildForm.dfm @@ -32,7 +32,6 @@ object ChildForm: TChildForm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 184 Top = 128 end diff --git a/demos/Delphi_VCL/ToolBoxSubProcessBrowser/uChildForm.pas b/demos/Delphi_VCL/ToolBoxSubProcessBrowser/uChildForm.pas index 29b68b32..6f3374ae 100644 --- a/demos/Delphi_VCL/ToolBoxSubProcessBrowser/uChildForm.pas +++ b/demos/Delphi_VCL/ToolBoxSubProcessBrowser/uChildForm.pas @@ -28,7 +28,6 @@ type procedure FormDestroy(Sender: TObject); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1PreKeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out isKeyboardShortcut, Result: Boolean); procedure Chromium1KeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out Result: Boolean); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); @@ -42,7 +41,6 @@ type protected procedure BrowserCreatedMsg(var aMessage : TMessage); message CEFBROWSER_CREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEFBROWSER_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -65,9 +63,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery calls TChromium.CloseBrowser -// 2. TChromium.OnClose sends a CEFBROWSER_DESTROY message to destroy CEFWindowParent1 in the main thread. -// 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 TChildForm.Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); begin @@ -93,12 +90,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 TChildForm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEFBROWSER_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TChildForm.Chromium1KeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out Result: Boolean); @@ -179,7 +170,10 @@ begin FClosing := True; if Chromium1.Initialized then - Chromium1.CloseBrowser(True) + begin + Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; + end else CanClose := True; end; @@ -240,9 +234,4 @@ begin Chromium1.LoadURL(FHomepage); end; -procedure TChildForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Linux_Console/LibraryBrowser/librarybrowser_sp.lpr b/demos/Lazarus_Linux_Console/LibraryBrowser/librarybrowser_sp.lpr index e3c03235..dce65d57 100644 --- a/demos/Lazarus_Linux_Console/LibraryBrowser/librarybrowser_sp.lpr +++ b/demos/Lazarus_Linux_Console/LibraryBrowser/librarybrowser_sp.lpr @@ -14,7 +14,6 @@ begin GlobalCEFApp.ShowMessageDlg := False; GlobalCEFApp.BlinkSettings := 'hideScrollbars'; GlobalCEFApp.SetCurrentDir := True; - GlobalCEFApp.ChromeRuntime := True; GlobalCEFApp.StartSubProcess; DestroyGlobalCEFApp; end. diff --git a/demos/Lazarus_Linux_Console/LibraryBrowser/ucefbrowserthread.pas b/demos/Lazarus_Linux_Console/LibraryBrowser/ucefbrowserthread.pas index c4842ad8..f8aa4715 100644 --- a/demos/Lazarus_Linux_Console/LibraryBrowser/ucefbrowserthread.pas +++ b/demos/Lazarus_Linux_Console/LibraryBrowser/ucefbrowserthread.pas @@ -108,7 +108,6 @@ begin GlobalCEFApp.BlinkSettings := 'hideScrollbars'; // This setting removes all scrollbars to capture a cleaner snapshot GlobalCEFApp.SetCurrentDir := True; GlobalCEFApp.DisableZygote := True; - GlobalCEFApp.ChromeRuntime := True; GlobalCEFApp.StartMainProcess; end; diff --git a/demos/Lazarus_Linux_GTK2/ExternalPumpBrowser/uExternalPumpBrowser.pas b/demos/Lazarus_Linux_GTK2/ExternalPumpBrowser/uExternalPumpBrowser.pas index 5f9d5d6a..b4ea3330 100644 --- a/demos/Lazarus_Linux_GTK2/ExternalPumpBrowser/uExternalPumpBrowser.pas +++ b/demos/Lazarus_Linux_GTK2/ExternalPumpBrowser/uExternalPumpBrowser.pas @@ -123,7 +123,8 @@ begin FCanClose := False; FClosing := False; - Chromium1.DefaultURL := UTF8Decode(AddressEdt.Text); + Chromium1.DefaultURL := UTF8Decode(AddressEdt.Text); + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TForm1.GoBtnClick(Sender: TObject); diff --git a/demos/Lazarus_Linux_GTK2/MiniBrowser/uMiniBrowser.pas b/demos/Lazarus_Linux_GTK2/MiniBrowser/uMiniBrowser.pas index b597e9f3..1225d78e 100644 --- a/demos/Lazarus_Linux_GTK2/MiniBrowser/uMiniBrowser.pas +++ b/demos/Lazarus_Linux_GTK2/MiniBrowser/uMiniBrowser.pas @@ -229,7 +229,6 @@ begin GlobalCEFApp.LogFile := 'debug.log'; GlobalCEFApp.LogSeverity := LOGSEVERITY_INFO; GlobalCEFApp.EnablePrintPreview := True; - GlobalCEFApp.ChromeRuntime := True; end; {Property setters and getters} @@ -520,6 +519,7 @@ begin // used when you call any method or property in TChromium. Chromium1.MultiBrowserMode := True; Chromium1.DefaultURL := UTF8Decode(URLCbx.Text); + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; // WebRTC's IP leaking can lowered/avoided by setting these preferences // To test this go to https://www.browserleaks.com/webrtc diff --git a/demos/Lazarus_Linux_GTK2/MobileBrowser/uMobileBrowser.lfm b/demos/Lazarus_Linux_GTK2/MobileBrowser/uMobileBrowser.lfm index a7ea5b4b..426b93d2 100644 --- a/demos/Lazarus_Linux_GTK2/MobileBrowser/uMobileBrowser.lfm +++ b/demos/Lazarus_Linux_GTK2/MobileBrowser/uMobileBrowser.lfm @@ -14,7 +14,7 @@ object Form1: TForm1 OnCloseQuery = FormCloseQuery OnCreate = FormCreate Position = poScreenCenter - LCLVersion = '2.2.0.4' + LCLVersion = '3.4.0.0' object Splitter1: TSplitter Left = 739 Height = 624 @@ -33,6 +33,7 @@ object Form1: TForm1 BevelOuter = bvNone ClientHeight = 624 ClientWidth = 294 + ParentBackground = False TabOrder = 0 object LogMem: TMemo Left = 0 @@ -53,6 +54,7 @@ object Form1: TForm1 BevelOuter = bvNone ClientHeight = 57 ClientWidth = 294 + ParentBackground = False TabOrder = 1 object CanEmulateBtn: TButton Left = 0 @@ -61,8 +63,8 @@ object Form1: TForm1 Width = 294 Align = alTop Caption = 'Can emulate' - OnClick = CanEmulateBtnClick TabOrder = 0 + OnClick = CanEmulateBtnClick end object ClearDeviceMetricsOverrideBtn: TButton Left = 0 @@ -71,8 +73,8 @@ object Form1: TForm1 Width = 294 Align = alBottom Caption = 'Clear device metrics override' - OnClick = ClearDeviceMetricsOverrideBtnClick TabOrder = 1 + OnClick = ClearDeviceMetricsOverrideBtnClick end end object Panel4: TPanel @@ -84,6 +86,7 @@ object Form1: TForm1 BevelOuter = bvNone ClientHeight = 104 ClientWidth = 294 + ParentBackground = False TabOrder = 2 object GroupBox1: TGroupBox Left = 0 @@ -92,8 +95,9 @@ object Form1: TForm1 Width = 294 Align = alTop Caption = ' User agent ' - ClientHeight = 60 + ClientHeight = 58 ClientWidth = 292 + ParentBackground = False TabOrder = 0 object UserAgentCb: TComboBox Left = 0 @@ -135,8 +139,8 @@ object Form1: TForm1 Width = 292 Align = alBottom Caption = 'Override user agent' - OnClick = OverrideUserAgentBtnClick TabOrder = 1 + OnClick = OverrideUserAgentBtnClick end end object EmulateTouchChk: TCheckBox @@ -146,8 +150,8 @@ object Form1: TForm1 Width = 294 Align = alBottom Caption = 'Emulate Touch' - OnClick = EmulateTouchChkClick TabOrder = 1 + OnClick = EmulateTouchChkClick end end object Panel5: TPanel @@ -159,6 +163,7 @@ object Form1: TForm1 BevelOuter = bvNone ClientHeight = 205 ClientWidth = 294 + ParentBackground = False TabOrder = 3 object GroupBox2: TGroupBox Left = 0 @@ -167,8 +172,9 @@ object Form1: TForm1 Width = 294 Align = alClient Caption = ' Emulate device metrics ' - ClientHeight = 190 + ClientHeight = 188 ClientWidth = 292 + ParentBackground = False TabOrder = 0 object Panel6: TPanel Left = 0 @@ -179,6 +185,7 @@ object Form1: TForm1 BevelOuter = bvNone ClientHeight = 27 ClientWidth = 292 + ParentBackground = False TabOrder = 0 object Label1: TLabel Left = 0 @@ -209,6 +216,7 @@ object Form1: TForm1 BevelOuter = bvNone ClientHeight = 27 ClientWidth = 292 + ParentBackground = False TabOrder = 1 object Label2: TLabel Left = 0 @@ -237,8 +245,8 @@ object Form1: TForm1 Width = 292 Align = alBottom Caption = 'Override device metrics' - OnClick = OverrideDeviceMetricsBtnClick TabOrder = 2 + OnClick = OverrideDeviceMetricsBtnClick end object Panel8: TPanel Left = 0 @@ -249,6 +257,7 @@ object Form1: TForm1 BevelOuter = bvNone ClientHeight = 27 ClientWidth = 292 + ParentBackground = False TabOrder = 3 object Label3: TLabel Left = 0 @@ -266,6 +275,7 @@ object Form1: TForm1 Top = 0 Width = 217 Align = alClient + EnableSets = False MaxLength = 4 TabOrder = 0 EditMask = '#.##;1;0' @@ -282,6 +292,7 @@ object Form1: TForm1 BevelOuter = bvNone ClientHeight = 27 ClientWidth = 292 + ParentBackground = False TabOrder = 4 object Label4: TLabel Left = 0 @@ -321,6 +332,7 @@ object Form1: TForm1 BevelOuter = bvNone ClientHeight = 27 ClientWidth = 292 + ParentBackground = False TabOrder = 5 object Label5: TLabel Left = 0 @@ -354,6 +366,7 @@ object Form1: TForm1 BevelOuter = bvNone ClientHeight = 624 ClientWidth = 739 + ParentBackground = False TabOrder = 1 object AddressPnl: TPanel Left = 0 @@ -365,6 +378,7 @@ object Form1: TForm1 ClientHeight = 23 ClientWidth = 739 Enabled = False + ParentBackground = False TabOrder = 0 object AddressEdt: TEdit Left = 0 @@ -382,8 +396,8 @@ object Form1: TForm1 Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFLinkedWindowParent1: TCEFLinkedWindowParent diff --git a/demos/Lazarus_Linux_GTK2/MobileBrowser/uMobileBrowser.pas b/demos/Lazarus_Linux_GTK2/MobileBrowser/uMobileBrowser.pas index afc403cc..7d206b8d 100644 --- a/demos/Lazarus_Linux_GTK2/MobileBrowser/uMobileBrowser.pas +++ b/demos/Lazarus_Linux_GTK2/MobileBrowser/uMobileBrowser.pas @@ -161,6 +161,7 @@ begin FClosing := False; FPendingMsgID := 0; Chromium1.DefaultURL := UTF8Decode(AddressEdt.Text); + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TForm1.GoBtnClick(Sender: TObject); diff --git a/demos/Lazarus_Linux_GTK2/PopupBrowser2/uChildForm.dfm b/demos/Lazarus_Linux_GTK2/PopupBrowser2/uChildForm.dfm index 7c2d64d8..7bb75448 100644 --- a/demos/Lazarus_Linux_GTK2/PopupBrowser2/uChildForm.dfm +++ b/demos/Lazarus_Linux_GTK2/PopupBrowser2/uChildForm.dfm @@ -16,6 +16,7 @@ object ChildForm: TChildForm OnDestroy = FormDestroy OnShow = FormShow Position = poDefault + LCLVersion = '3.4.0.0' object CEFLinkedWindowParent1: TCEFLinkedWindowParent Left = 0 Height = 256 diff --git a/demos/Lazarus_Linux_GTK2/PopupBrowser2/uChildForm.pas b/demos/Lazarus_Linux_GTK2/PopupBrowser2/uChildForm.pas index 4d9818b9..35e50044 100644 --- a/demos/Lazarus_Linux_GTK2/PopupBrowser2/uChildForm.pas +++ b/demos/Lazarus_Linux_GTK2/PopupBrowser2/uChildForm.pas @@ -164,9 +164,6 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); - - if GlobalCEFApp.ChromeRuntime then - CEFLinkedWindowParent1.Free; end; end; @@ -194,6 +191,8 @@ begin FCanClose := False; FClosing := False; FClientInitialized := False; + + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; // This is a workaround for the CEF issue #2026 diff --git a/demos/Lazarus_Linux_GTK2/PopupBrowser2/uMainForm.lfm b/demos/Lazarus_Linux_GTK2/PopupBrowser2/uMainForm.lfm index 3fe9bba3..7db731ce 100644 --- a/demos/Lazarus_Linux_GTK2/PopupBrowser2/uMainForm.lfm +++ b/demos/Lazarus_Linux_GTK2/PopupBrowser2/uMainForm.lfm @@ -15,7 +15,7 @@ object MainForm: TMainForm OnCreate = FormCreate OnDestroy = FormDestroy Position = poScreenCenter - LCLVersion = '3.2.0.0' + LCLVersion = '3.4.0.0' object AddressPnl: TPanel Left = 0 Height = 21 diff --git a/demos/Lazarus_Linux_GTK2/PopupBrowser2/uMainForm.pas b/demos/Lazarus_Linux_GTK2/PopupBrowser2/uMainForm.pas index c9e55cee..6c66155c 100644 --- a/demos/Lazarus_Linux_GTK2/PopupBrowser2/uMainForm.pas +++ b/demos/Lazarus_Linux_GTK2/PopupBrowser2/uMainForm.pas @@ -130,7 +130,6 @@ begin GlobalCEFApp := TCefApplication.Create; GlobalCEFApp.OnContextInitialized := @GlobalCEFApp_OnContextInitialized; GlobalCEFApp.SetCurrentDir := True; - GlobalCEFApp.ChromeRuntime := True; end; procedure TMainForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); @@ -151,9 +150,6 @@ begin begin FClosingMainForm := True; Chromium1.CloseBrowser(True); - - if GlobalCEFApp.ChromeRuntime then - CEFLinkedWindowParent1.Free; end; end; end; @@ -173,6 +169,7 @@ begin Chromium1.DefaultURL := UTF8Decode(AddressEdt.Text); Chromium1.Options.BackgroundColor := CefColorSetARGB($FF, $FF, $FF, $FF); + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; CreateHiddenChildForm; end; diff --git a/demos/Lazarus_Linux_GTK2/SimpleBrowser/usimplebrowser.lfm b/demos/Lazarus_Linux_GTK2/SimpleBrowser/usimplebrowser.lfm index 93f9602b..bce334e3 100644 --- a/demos/Lazarus_Linux_GTK2/SimpleBrowser/usimplebrowser.lfm +++ b/demos/Lazarus_Linux_GTK2/SimpleBrowser/usimplebrowser.lfm @@ -10,7 +10,7 @@ object Form1: TForm1 OnCloseQuery = FormCloseQuery OnCreate = FormCreate Position = poScreenCenter - LCLVersion = '2.0.10.0' + LCLVersion = '3.4.0.0' object AddressPnl: TPanel Left = 0 Height = 25 @@ -38,8 +38,8 @@ object Form1: TForm1 Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object ChromiumWindow1: TChromiumWindow diff --git a/demos/Lazarus_Linux_GTK2/SimpleBrowser/usimplebrowser.pas b/demos/Lazarus_Linux_GTK2/SimpleBrowser/usimplebrowser.pas index f5c3c3d1..c25b9c84 100644 --- a/demos/Lazarus_Linux_GTK2/SimpleBrowser/usimplebrowser.pas +++ b/demos/Lazarus_Linux_GTK2/SimpleBrowser/usimplebrowser.pas @@ -99,7 +99,8 @@ begin FClosing := False; // The browser will load the URL in AddressEdt initially. - ChromiumWindow1.ChromiumBrowser.DefaultURL := UTF8Decode(AddressEdt.Text); + ChromiumWindow1.ChromiumBrowser.DefaultURL := UTF8Decode(AddressEdt.Text); + ChromiumWindow1.ChromiumBrowser.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TForm1.Chromium_OnBeforePopup(Sender: TObject; diff --git a/demos/Lazarus_Linux_GTK2/SimpleBrowser2/usimplebrowser2.lfm b/demos/Lazarus_Linux_GTK2/SimpleBrowser2/usimplebrowser2.lfm index 90d9bcd3..5dcc71f9 100644 --- a/demos/Lazarus_Linux_GTK2/SimpleBrowser2/usimplebrowser2.lfm +++ b/demos/Lazarus_Linux_GTK2/SimpleBrowser2/usimplebrowser2.lfm @@ -10,7 +10,7 @@ object Form1: TForm1 OnCloseQuery = FormCloseQuery OnCreate = FormCreate Position = poScreenCenter - LCLVersion = '2.0.10.0' + LCLVersion = '3.4.0.0' object AddressPnl: TPanel Left = 0 Height = 23 @@ -29,9 +29,9 @@ object Form1: TForm1 Width = 35 Align = alRight Caption = 'Go' + TabOrder = 0 OnClick = GoBtnClick OnEnter = CEFLinkedWindowParent1Exit - TabOrder = 0 end object AddressEdt: TEdit Left = 0 @@ -39,9 +39,9 @@ object Form1: TForm1 Top = 0 Width = 932 Align = alClient - OnEnter = CEFLinkedWindowParent1Exit TabOrder = 1 Text = 'https://www.google.com' + OnEnter = CEFLinkedWindowParent1Exit end end object CEFLinkedWindowParent1: TCEFLinkedWindowParent diff --git a/demos/Lazarus_Linux_GTK2/SimpleBrowser2/usimplebrowser2.pas b/demos/Lazarus_Linux_GTK2/SimpleBrowser2/usimplebrowser2.pas index 2a009ff3..ef38c4f5 100644 --- a/demos/Lazarus_Linux_GTK2/SimpleBrowser2/usimplebrowser2.pas +++ b/demos/Lazarus_Linux_GTK2/SimpleBrowser2/usimplebrowser2.pas @@ -115,7 +115,8 @@ begin FCanClose := False; FClosing := False; - Chromium1.DefaultURL := UTF8Decode(AddressEdt.Text); + Chromium1.DefaultURL := UTF8Decode(AddressEdt.Text); + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TForm1.GoBtnClick(Sender: TObject); diff --git a/demos/Lazarus_Linux_GTK2/SubProcess/uSubProcess.lfm b/demos/Lazarus_Linux_GTK2/SubProcess/uSubProcess.lfm index fd768abe..40f2c769 100644 --- a/demos/Lazarus_Linux_GTK2/SubProcess/uSubProcess.lfm +++ b/demos/Lazarus_Linux_GTK2/SubProcess/uSubProcess.lfm @@ -10,7 +10,7 @@ object Form1: TForm1 OnCloseQuery = FormCloseQuery OnCreate = FormCreate Position = poScreenCenter - LCLVersion = '2.0.10.0' + LCLVersion = '3.4.0.0' object AddressPnl: TPanel Left = 0 Height = 23 @@ -29,8 +29,8 @@ object Form1: TForm1 Width = 35 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 0 + OnClick = GoBtnClick end object AddressEdt: TEdit Left = 0 diff --git a/demos/Lazarus_Linux_GTK2/SubProcess/uSubProcess.pas b/demos/Lazarus_Linux_GTK2/SubProcess/uSubProcess.pas index c0e98f51..85ef00b3 100644 --- a/demos/Lazarus_Linux_GTK2/SubProcess/uSubProcess.pas +++ b/demos/Lazarus_Linux_GTK2/SubProcess/uSubProcess.pas @@ -96,7 +96,8 @@ begin FCanClose := False; FClosing := False; - Chromium1.DefaultURL := UTF8Decode(AddressEdt.Text); + Chromium1.DefaultURL := UTF8Decode(AddressEdt.Text); + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TForm1.GoBtnClick(Sender: TObject); diff --git a/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uBrowserFrame.lfm b/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uBrowserFrame.lfm index 0af54084..978daae2 100644 --- a/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uBrowserFrame.lfm +++ b/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uBrowserFrame.lfm @@ -39,9 +39,9 @@ object BrowserFrame: TBrowserFrame Font.Color = clWindowText Font.Height = -19 Font.Name = 'Webdings' - OnClick = BackBtnClick ParentFont = False TabOrder = 0 + OnClick = BackBtnClick end object ForwardBtn: TButton Left = 30 @@ -53,9 +53,9 @@ object BrowserFrame: TBrowserFrame Font.Color = clWindowText Font.Height = -19 Font.Name = 'Webdings' - OnClick = ForwardBtnClick ParentFont = False TabOrder = 1 + OnClick = ForwardBtnClick end object ReloadBtn: TButton Left = 59 @@ -67,9 +67,9 @@ object BrowserFrame: TBrowserFrame Font.Color = clWindowText Font.Height = -19 Font.Name = 'Webdings' - OnClick = ReloadBtnClick ParentFont = False TabOrder = 2 + OnClick = ReloadBtnClick end object StopBtn: TButton Left = 88 @@ -81,9 +81,9 @@ object BrowserFrame: TBrowserFrame Font.Color = clWindowText Font.Height = -19 Font.Name = 'Webdings' - OnClick = StopBtnClick ParentFont = False TabOrder = 3 + OnClick = StopBtnClick end end object URLEditPnl: TPanel @@ -175,9 +175,9 @@ object BrowserFrame: TBrowserFrame Font.Height = -17 Font.Name = 'Arial' Font.Style = [fsBold] - OnClick = GoBtnClick ParentFont = False TabOrder = 0 + OnClick = GoBtnClick end end end diff --git a/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uBrowserFrame.pas b/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uBrowserFrame.pas index 2dc44852..ac15ea76 100644 --- a/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uBrowserFrame.pas +++ b/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uBrowserFrame.pas @@ -247,7 +247,8 @@ end; procedure TBrowserFrame.CreateBrowser; begin - Chromium1.DefaultURL := FHomepage; + Chromium1.DefaultURL := FHomepage; + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; Chromium1.CreateBrowser(CEFLinkedWindowParent1.Handle, CEFLinkedWindowParent1.BoundsRect); end; diff --git a/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uMainForm.lfm b/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uMainForm.lfm index d7153422..45b1faa4 100644 --- a/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uMainForm.lfm +++ b/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uMainForm.lfm @@ -14,7 +14,7 @@ object MainForm: TMainForm OnCloseQuery = FormCloseQuery OnCreate = FormCreate Position = poScreenCenter - LCLVersion = '2.0.10.0' + LCLVersion = '3.4.0.0' object BrowserPageCtrl: TPageControl Left = 34 Height = 704 @@ -33,6 +33,7 @@ object MainForm: TMainForm ClientHeight = 704 ClientWidth = 34 Enabled = False + ParentBackground = False TabOrder = 1 object AddTabBtn: TSpeedButton Left = 4 diff --git a/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uMainForm.pas b/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uMainForm.pas index 27f851ff..fe1dc5d7 100644 --- a/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uMainForm.pas +++ b/demos/Lazarus_Linux_GTK2/TabbedBrowser2/uMainForm.pas @@ -119,7 +119,6 @@ end; procedure CreateGlobalCEFApp; begin GlobalCEFApp := TCefApplication.Create; - GlobalCEFApp.ChromeRuntime := True; GlobalCEFApp.OnContextInitialized := @GlobalCEFApp_OnContextInitialized; end; diff --git a/demos/Lazarus_Linux_GTK2/TinyBrowser/uTinyBrowser.pas b/demos/Lazarus_Linux_GTK2/TinyBrowser/uTinyBrowser.pas index 4281bac5..809319f4 100644 --- a/demos/Lazarus_Linux_GTK2/TinyBrowser/uTinyBrowser.pas +++ b/demos/Lazarus_Linux_GTK2/TinyBrowser/uTinyBrowser.pas @@ -241,9 +241,8 @@ begin GlobalCEFApp := TCefApplication.Create; GlobalCEFApp.MultiThreadedMessageLoop := False; GlobalCEFApp.ExternalMessagePump := False; - //GlobalCEFApp.ChromeRuntime := True; // Enable this line to test the new "ChromeRuntime" mode. It's in experimental state. GlobalCEFApp.OnContextInitialized := GlobalCEFApp_OnContextInitialized; - GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; // This event is only used in "ChromeRuntime" mode + GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; end; procedure DestroyTinyBrowser; diff --git a/demos/Lazarus_Linux_GTK2/TinyBrowser2/uTinyBrowser2.pas b/demos/Lazarus_Linux_GTK2/TinyBrowser2/uTinyBrowser2.pas index c061dc5d..ad65eda0 100644 --- a/demos/Lazarus_Linux_GTK2/TinyBrowser2/uTinyBrowser2.pas +++ b/demos/Lazarus_Linux_GTK2/TinyBrowser2/uTinyBrowser2.pas @@ -96,11 +96,10 @@ begin GlobalCEFApp := TCefApplication.Create; GlobalCEFApp.MultiThreadedMessageLoop := False; GlobalCEFApp.ExternalMessagePump := False; - //GlobalCEFApp.ChromeRuntime := True; // Enable this line to enable the "ChromeRuntime" mode. It's in experimental state. GlobalCEFApp.cache := 'cache'; GlobalCEFApp.DisableZygote := True; GlobalCEFApp.OnContextInitialized := GlobalCEFApp_OnContextInitialized; - GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; // This event is only used in "ChromeRuntime" mode + GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; // Add a debug log in the BIN directory //GlobalCEFApp.LogFile := 'cef.log'; diff --git a/demos/Lazarus_Linux_GTK3/TinyBrowser/uTinyBrowser.pas b/demos/Lazarus_Linux_GTK3/TinyBrowser/uTinyBrowser.pas index 48eca77c..0b9763a5 100644 --- a/demos/Lazarus_Linux_GTK3/TinyBrowser/uTinyBrowser.pas +++ b/demos/Lazarus_Linux_GTK3/TinyBrowser/uTinyBrowser.pas @@ -235,10 +235,9 @@ begin GlobalCEFApp := TCefApplication.Create; GlobalCEFApp.MultiThreadedMessageLoop := False; GlobalCEFApp.ExternalMessagePump := False; - GlobalCEFApp.ChromeRuntime := True; // Enable this line to test the new "ChromeRuntime" mode. It's in experimental state. GlobalCEFApp.SetCurrentDir := True; GlobalCEFApp.OnContextInitialized := GlobalCEFApp_OnContextInitialized; - GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; // This event is only used in "ChromeRuntime" mode + GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; end; procedure DestroyTinyBrowser; diff --git a/demos/Lazarus_Linux_GTK3/TinyBrowser2/uTinyBrowser2.pas b/demos/Lazarus_Linux_GTK3/TinyBrowser2/uTinyBrowser2.pas index 079d81ae..0a43df57 100644 --- a/demos/Lazarus_Linux_GTK3/TinyBrowser2/uTinyBrowser2.pas +++ b/demos/Lazarus_Linux_GTK3/TinyBrowser2/uTinyBrowser2.pas @@ -90,12 +90,11 @@ begin GlobalCEFApp := TCefApplication.Create; GlobalCEFApp.MultiThreadedMessageLoop := False; GlobalCEFApp.ExternalMessagePump := False; - GlobalCEFApp.ChromeRuntime := True; // Enable this line to enable the "ChromeRuntime" mode. It's in experimental state. GlobalCEFApp.cache := 'cache'; GlobalCEFApp.DisableZygote := True; GlobalCEFApp.SetCurrentDir := True; GlobalCEFApp.OnContextInitialized := GlobalCEFApp_OnContextInitialized; - GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; // This event is only used in "ChromeRuntime" mode + GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; // Add a debug log in the BIN directory //GlobalCEFApp.LogFile := 'cef.log'; diff --git a/demos/Lazarus_Mac/ExternalPumpBrowser/uExternalPumpBrowser.pas b/demos/Lazarus_Mac/ExternalPumpBrowser/uExternalPumpBrowser.pas index 1ffa0dfb..f0abf55c 100644 --- a/demos/Lazarus_Mac/ExternalPumpBrowser/uExternalPumpBrowser.pas +++ b/demos/Lazarus_Mac/ExternalPumpBrowser/uExternalPumpBrowser.pas @@ -100,7 +100,7 @@ procedure TForm1.FormCreate(Sender: TObject); begin FCanClose := False; FClosing := False; - + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; Chromium1.DefaultURL := UTF8Decode(AddressEdt.Text); end; diff --git a/demos/Lazarus_Windows/CookieVisitor/uCookieVisitor.lfm b/demos/Lazarus_Windows/CookieVisitor/uCookieVisitor.lfm index f4d7843b..f4c14bfe 100644 --- a/demos/Lazarus_Windows/CookieVisitor/uCookieVisitor.lfm +++ b/demos/Lazarus_Windows/CookieVisitor/uCookieVisitor.lfm @@ -14,7 +14,6 @@ object CookieVisitorFrm: TCookieVisitorFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.12.0' object AddressBarPnl: TPanel Left = 0 Height = 21 @@ -26,6 +25,7 @@ object CookieVisitorFrm: TCookieVisitorFrm ClientWidth = 884 DoubleBuffered = True Enabled = False + ParentBackground = False ParentDoubleBuffered = False TabOrder = 0 object Edit1: TEdit @@ -44,8 +44,8 @@ object CookieVisitorFrm: TCookieVisitorFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -66,7 +66,6 @@ object CookieVisitorFrm: TCookieVisitorFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 32 Top = 224 end diff --git a/demos/Lazarus_Windows/CookieVisitor/uCookieVisitor.pas b/demos/Lazarus_Windows/CookieVisitor/uCookieVisitor.pas index 54af88ec..35ed7ba3 100644 --- a/demos/Lazarus_Windows/CookieVisitor/uCookieVisitor.pas +++ b/demos/Lazarus_Windows/CookieVisitor/uCookieVisitor.pas @@ -43,7 +43,6 @@ type procedure Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; eventFlags: Cardinal; out Result: Boolean); procedure Chromium1CookiesDeleted(Sender: TObject; numDeleted: Integer); 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1CookieSet(Sender: TObject; aSuccess: boolean; aID: integer); procedure Chromium1CookieVisitorDestroyed(Sender: TObject; aID: integer); @@ -62,7 +61,6 @@ type procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure ShowCookiesMsg(var aMessage : TMessage); message MINIBROWSER_SHOWCOOKIES; procedure CookiesDeletedMsg(var aMessage : TMessage); message MINIBROWSER_COOKIESDELETED; procedure CookieSetMsg(var aMessage : TMessage); message MINIBROWSER_COOKIESET; @@ -103,9 +101,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 @@ -128,11 +125,6 @@ begin GoBtn.Click; end; -procedure TCookieVisitorFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TCookieVisitorFrm.ShowCookiesMsg(var aMessage : TMessage); begin SimpleTextViewerFrm.Memo1.Lines.Text := FText; // This should be protected by a mutex. @@ -244,13 +236,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 TCookieVisitorFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TCookieVisitorFrm.Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; @@ -310,6 +295,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; diff --git a/demos/Lazarus_Windows/CustomResourceBrowser/uMainForm.lfm b/demos/Lazarus_Windows/CustomResourceBrowser/uMainForm.lfm index 6b6fcc78..9d9ec051 100644 --- a/demos/Lazarus_Windows/CustomResourceBrowser/uMainForm.lfm +++ b/demos/Lazarus_Windows/CustomResourceBrowser/uMainForm.lfm @@ -14,7 +14,6 @@ object MainForm: TMainForm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object ChromiumWindow1: TChromiumWindow Left = 0 Height = 637 @@ -36,6 +35,7 @@ object MainForm: TMainForm ClientWidth = 781 DoubleBuffered = True Enabled = False + ParentBackground = False ParentDoubleBuffered = False TabOrder = 1 object Edit1: TEdit @@ -54,15 +54,15 @@ object MainForm: TMainForm Width = 31 Align = alRight Caption = 'Go' - OnClick = Button1Click TabOrder = 1 + OnClick = Button1Click end end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 48 - top = 240 + Left = 48 + Top = 240 end end diff --git a/demos/Lazarus_Windows/CustomResourceBrowser/uMainForm.pas b/demos/Lazarus_Windows/CustomResourceBrowser/uMainForm.pas index 18b7eb44..9f7e2bd4 100644 --- a/demos/Lazarus_Windows/CustomResourceBrowser/uMainForm.pas +++ b/demos/Lazarus_Windows/CustomResourceBrowser/uMainForm.pas @@ -26,11 +26,13 @@ type Button1: TButton; Timer1: TTimer; - procedure FormShow(Sender: TObject); + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); + procedure Button1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); - procedure FormCreate(Sender: TObject); - procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); + procedure ChromiumWindow1Close(Sender: TObject); procedure ChromiumWindow1BeforeClose(Sender: TObject); @@ -100,6 +102,8 @@ procedure TMainForm.FormCreate(Sender: TObject); begin FCanClose := False; FClosing := False; + + ChromiumWindow1.ChromiumBrowser.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TMainForm.FormShow(Sender: TObject); diff --git a/demos/Lazarus_Windows/DOMVisitor/uDOMVisitor.lfm b/demos/Lazarus_Windows/DOMVisitor/uDOMVisitor.lfm index 0179e1f4..d4b30011 100644 --- a/demos/Lazarus_Windows/DOMVisitor/uDOMVisitor.lfm +++ b/demos/Lazarus_Windows/DOMVisitor/uDOMVisitor.lfm @@ -15,7 +15,6 @@ object DOMVisitorFrm: TDOMVisitorFrm OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.0.0.3' object CEFWindowParent1: TCEFWindowParent Left = 0 Height = 539 @@ -98,7 +97,6 @@ object DOMVisitorFrm: TDOMVisitorFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnDevToolsMethodResult = Chromium1DevToolsMethodResult Left = 16 Top = 40 diff --git a/demos/Lazarus_Windows/DOMVisitor/uDOMVisitor.pas b/demos/Lazarus_Windows/DOMVisitor/uDOMVisitor.pas index 64e206fc..2379e1b1 100644 --- a/demos/Lazarus_Windows/DOMVisitor/uDOMVisitor.pas +++ b/demos/Lazarus_Windows/DOMVisitor/uDOMVisitor.pas @@ -69,7 +69,6 @@ type 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 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1ConsoleMessage(Sender: TObject; const browser: ICefBrowser; level: TCefLogSeverity; const message, source: ustring; line: Integer; out Result: Boolean); procedure Chromium1DevToolsMethodResult(Sender: TObject; const browser: ICefBrowser; message_id: integer; success: boolean; const result: ICefValue); @@ -96,7 +95,6 @@ type procedure SetErrorText(const aValue : string); procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure VisitDOMMsg(var aMessage : TMessage); message MINIBROWSER_VISITDOM_PARTIAL; procedure VisitDOM2Msg(var aMessage : TMessage); message MINIBROWSER_VISITDOM_FULL; procedure VisitDOM3Msg(var aMessage : TMessage); message MINIBROWSER_VISITDOM_JS; @@ -196,13 +194,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 SimpleDOMIteration(const aDocument: ICefDomDocument); var @@ -482,15 +475,8 @@ begin Result := (targetDisposition in [CEF_WOD_NEW_FOREGROUND_TAB, CEF_WOD_NEW_BACKGROUND_TAB, CEF_WOD_NEW_POPUP, CEF_WOD_NEW_WINDOW]); end; -procedure TDOMVisitorFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TDOMVisitorFrm.Chromium1ConsoleMessage(Sender: TObject; - const browser: ICefBrowser; level: Cardinal; const message, source: ustring; + const browser: ICefBrowser; level: TCefLogSeverity; const message, source: ustring; line: Integer; out Result: Boolean); begin // In this event we receive the message with the name and value of a DOM node @@ -715,6 +701,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -751,11 +738,6 @@ begin GoBtn.Click; end; -procedure TDOMVisitorFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TDOMVisitorFrm.VisitDOMBtnClick(Sender: TObject); begin PostMessage(Handle, MINIBROWSER_VISITDOM_PARTIAL, 0, 0); diff --git a/demos/Lazarus_Windows/EditorBrowser/uEditorBrowser.lfm b/demos/Lazarus_Windows/EditorBrowser/uEditorBrowser.lfm index ffab713e..d6e45366 100644 --- a/demos/Lazarus_Windows/EditorBrowser/uEditorBrowser.lfm +++ b/demos/Lazarus_Windows/EditorBrowser/uEditorBrowser.lfm @@ -14,7 +14,6 @@ object Form1: TForm1 OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.4.0.0' object CEFWindowParent1: TCEFWindowParent Left = 0 Height = 599 @@ -329,7 +328,6 @@ object Form1: TForm1 OnLoadEnd = Chromium1LoadEnd OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 56 Top = 144 end diff --git a/demos/Lazarus_Windows/EditorBrowser/uEditorBrowser.pas b/demos/Lazarus_Windows/EditorBrowser/uEditorBrowser.pas index 34def6c8..bec0fe09 100644 --- a/demos/Lazarus_Windows/EditorBrowser/uEditorBrowser.pas +++ b/demos/Lazarus_Windows/EditorBrowser/uEditorBrowser.pas @@ -65,7 +65,6 @@ type procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1LoadEnd(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; httpStatusCode: Integer); procedure Chromium1TextResultAvailable(Sender: TObject; const aText: ustring); @@ -109,7 +108,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; public { Public declarations } end; @@ -137,9 +135,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 @@ -174,6 +171,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -212,13 +210,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TForm1.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TForm1.Chromium1LoadEnd(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; httpStatusCode: Integer); @@ -401,11 +392,6 @@ begin Caption := 'Editor Browser'; end; -procedure TForm1.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TForm1.Timer1Timer(Sender: TObject); begin Timer1.Enabled := False; diff --git a/demos/Lazarus_Windows/ExternalPumpBrowser/uExternalPumpBrowser.lfm b/demos/Lazarus_Windows/ExternalPumpBrowser/uExternalPumpBrowser.lfm index 49d6dc15..6756ced8 100644 --- a/demos/Lazarus_Windows/ExternalPumpBrowser/uExternalPumpBrowser.lfm +++ b/demos/Lazarus_Windows/ExternalPumpBrowser/uExternalPumpBrowser.lfm @@ -14,7 +14,6 @@ object ExternalPumpBrowserFrm: TExternalPumpBrowserFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.12.0' object AddressPnl: TPanel Left = 0 Height = 21 @@ -25,6 +24,7 @@ object ExternalPumpBrowserFrm: TExternalPumpBrowserFrm ClientHeight = 21 ClientWidth = 1038 Enabled = False + ParentBackground = False TabOrder = 0 object GoBtn: TButton Left = 1007 @@ -33,16 +33,16 @@ object ExternalPumpBrowserFrm: TExternalPumpBrowserFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 0 + OnClick = GoBtnClick end object URLCbx: TComboBox Left = 0 - Height = 21 + Height = 22 Top = 0 Width = 1007 Align = alClient - ItemHeight = 13 + ItemHeight = 14 ItemIndex = 0 Items.Strings = ( 'https://www.google.com' @@ -86,7 +86,6 @@ object ExternalPumpBrowserFrm: TExternalPumpBrowserFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 56 Top = 152 end diff --git a/demos/Lazarus_Windows/ExternalPumpBrowser/uExternalPumpBrowser.pas b/demos/Lazarus_Windows/ExternalPumpBrowser/uExternalPumpBrowser.pas index 9b76738c..84b11353 100644 --- a/demos/Lazarus_Windows/ExternalPumpBrowser/uExternalPumpBrowser.pas +++ b/demos/Lazarus_Windows/ExternalPumpBrowser/uExternalPumpBrowser.pas @@ -27,32 +27,22 @@ type Chromium1: TChromium; URLCbx: TComboBox; - procedure CEFSentinel1Close(Sender: TObject); procedure GoBtnClick(Sender: TObject); - procedure FormShow(Sender: TObject); procedure Timer1Timer(Sender: TObject); + procedure FormShow(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(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 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); private FCanClose : boolean; FClosing : boolean; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -79,10 +69,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 calls TCEFSentinel.Start, which will trigger TCEFSentinel.OnClose when the renderer processes are closed. -// 4. TCEFSentinel.OnClose 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 GlobalCEFApp_OnScheduleMessagePumpWork(const aDelayMS : int64); begin @@ -121,6 +109,7 @@ begin Visible := False; AddressPnl.Enabled := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -156,12 +145,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 TExternalPumpBrowserFrm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TExternalPumpBrowserFrm.BrowserCreatedMsg(var aMessage : TMessage); begin Caption := 'External Pump Browser'; @@ -170,21 +153,11 @@ begin GoBtn.Click; end; -procedure TExternalPumpBrowserFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TExternalPumpBrowserFrm.GoBtnClick(Sender: TObject); begin Chromium1.LoadURL(URLCbx.Text); end; -procedure TExternalPumpBrowserFrm.CEFSentinel1Close(Sender: TObject); -begin - -end; - procedure TExternalPumpBrowserFrm.Timer1Timer(Sender: TObject); begin Timer1.Enabled := False; diff --git a/demos/Lazarus_Windows/FullScreenBrowser/uMainForm.lfm b/demos/Lazarus_Windows/FullScreenBrowser/uMainForm.lfm index d4cf506f..a21f75c9 100644 --- a/demos/Lazarus_Windows/FullScreenBrowser/uMainForm.lfm +++ b/demos/Lazarus_Windows/FullScreenBrowser/uMainForm.lfm @@ -1,13 +1,13 @@ object MainForm: TMainForm - Left = 165 - Height = 673 - Top = 130 - Width = 1364 + Left = -8 + Height = 712 + Top = -8 + Width = 1380 BorderIcons = [] BorderStyle = bsNone Caption = 'MainForm' - ClientHeight = 673 - ClientWidth = 1364 + ClientHeight = 811 + ClientWidth = 1537 Color = clBtnFace Font.Color = clWindowText Font.Height = -11 @@ -16,13 +16,12 @@ object MainForm: TMainForm OnCloseQuery = FormCloseQuery OnCreate = FormCreate OnShow = FormShow - LCLVersion = '2.0.6.0' WindowState = wsMaximized object CEFWindowParent1: TCEFWindowParent Left = 0 - Height = 673 + Height = 811 Top = 0 - Width = 1364 + Width = 1537 Align = alClient TabOrder = 0 end @@ -32,15 +31,14 @@ object MainForm: TMainForm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 208 - top = 120 + Left = 208 + Top = 120 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 272 - top = 120 + Left = 272 + Top = 120 end end diff --git a/demos/Lazarus_Windows/FullScreenBrowser/uMainForm.pas b/demos/Lazarus_Windows/FullScreenBrowser/uMainForm.pas index 8d736d09..3804ce0e 100644 --- a/demos/Lazarus_Windows/FullScreenBrowser/uMainForm.pas +++ b/demos/Lazarus_Windows/FullScreenBrowser/uMainForm.pas @@ -24,31 +24,19 @@ type CEFWindowParent1: TCEFWindowParent; Chromium1: TChromium; Timer1: TTimer; - procedure CEFSentinel1Close(Sender: TObject); - procedure Chromium1PreKeyEvent(Sender: TObject; - const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; - out isKeyboardShortcut, Result: Boolean); - procedure Chromium1KeyEvent(Sender: TObject; - const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; - out Result: Boolean); + procedure FormShow(Sender: TObject); - 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 FormCreate(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); - procedure Chromium1BeforeClose(Sender: TObject; - const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; - var aAction : TCefCloseBrowserAction); + + procedure Timer1Timer(Sender: TObject); + + procedure Chromium1PreKeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out isKeyboardShortcut, Result: Boolean); + procedure Chromium1KeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; 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); + private { Private declarations } protected @@ -61,7 +49,6 @@ type procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure HandleKeyUp(const aMsg : TMsg; var aHandled : boolean); procedure HandleKeyDown(const aMsg : TMsg; var aHandled : boolean); @@ -83,10 +70,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 calls TCEFSentinel.Start, which will trigger TCEFSentinel.OnClose when the renderer processes are closed. -// 4. TCEFSentinel.OnClose 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 @@ -159,22 +144,11 @@ begin Result := (targetDisposition in [CEF_WOD_NEW_FOREGROUND_TAB, CEF_WOD_NEW_BACKGROUND_TAB, CEF_WOD_NEW_POPUP, CEF_WOD_NEW_WINDOW]); end; -procedure TMainForm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TMainForm.BrowserCreatedMsg(var aMessage : TMessage); begin CEFWindowParent1.UpdateSize; end; -procedure TMainForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TMainForm.Chromium1KeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out Result: Boolean); @@ -213,11 +187,6 @@ begin isKeyboardShortcut := True; end; -procedure TMainForm.CEFSentinel1Close(Sender: TObject); -begin - -end; - procedure TMainForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin CanClose := FCanClose; @@ -227,6 +196,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; diff --git a/demos/Lazarus_Windows/JavaScript/JSDialog/uJSDialogBrowser.lfm b/demos/Lazarus_Windows/JavaScript/JSDialog/uJSDialogBrowser.lfm index 7b9fabad..f4cc732b 100644 --- a/demos/Lazarus_Windows/JavaScript/JSDialog/uJSDialogBrowser.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSDialog/uJSDialogBrowser.lfm @@ -15,7 +15,7 @@ object JSDialogBrowserFrm: TJSDialogBrowserFrm OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' + LCLVersion = '3.4.0.0' object ChromiumWindow1: TChromiumWindow Left = 0 Height = 603 @@ -37,6 +37,7 @@ object JSDialogBrowserFrm: TJSDialogBrowserFrm ClientHeight = 21 ClientWidth = 1038 Enabled = False + ParentBackground = False TabOrder = 1 object AddressEdt: TEdit Left = 0 @@ -54,15 +55,15 @@ object JSDialogBrowserFrm: TJSDialogBrowserFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 56 - top = 88 + Left = 56 + Top = 88 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSDialog/uJSDialogBrowser.pas b/demos/Lazarus_Windows/JavaScript/JSDialog/uJSDialogBrowser.pas index 658770bf..cbbec493 100644 --- a/demos/Lazarus_Windows/JavaScript/JSDialog/uJSDialogBrowser.pas +++ b/demos/Lazarus_Windows/JavaScript/JSDialog/uJSDialogBrowser.pas @@ -28,14 +28,16 @@ type AddressEdt: TEdit; GoBtn: TButton; Timer1: TTimer; - procedure CEFSentinel1Close(Sender: TObject); + procedure GoBtnClick(Sender: TObject); - procedure FormShow(Sender: TObject); - procedure ChromiumWindow1AfterCreated(Sender: TObject); procedure Timer1Timer(Sender: TObject); + + procedure FormShow(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); + + procedure ChromiumWindow1AfterCreated(Sender: TObject); procedure ChromiumWindow1Close(Sender: TObject); procedure ChromiumWindow1BeforeClose(Sender: TObject); @@ -103,6 +105,7 @@ begin FCallback := nil; FCanClose := False; FClosing := False; + ChromiumWindow1.ChromiumBrowser.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TJSDialogBrowserFrm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); @@ -145,12 +148,6 @@ begin ChromiumWindow1.LoadURL(AddressEdt.Text); end; -procedure TJSDialogBrowserFrm.CEFSentinel1Close(Sender: TObject); -begin - FCanClose := True; - PostMessage(Handle, WM_CLOSE, 0, 0); -end; - procedure TJSDialogBrowserFrm.Timer1Timer(Sender: TObject); begin Timer1.Enabled := False; diff --git a/demos/Lazarus_Windows/JavaScript/JSEval/uJSEval.lfm b/demos/Lazarus_Windows/JavaScript/JSEval/uJSEval.lfm index 0fb18242..fdfb0110 100644 --- a/demos/Lazarus_Windows/JavaScript/JSEval/uJSEval.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSEval/uJSEval.lfm @@ -13,7 +13,6 @@ object JSEvalFrm: TJSEvalFrm OnCloseQuery = FormCloseQuery OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object CEFWindowParent1: TCEFWindowParent Left = 0 Height = 550 @@ -33,6 +32,7 @@ object JSEvalFrm: TJSEvalFrm ClientWidth = 878 DoubleBuffered = True Enabled = False + ParentBackground = False ParentDoubleBuffered = False TabOrder = 1 object GoBtn: TButton @@ -42,8 +42,8 @@ object JSEvalFrm: TJSEvalFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 0 + OnClick = GoBtnClick end object AddressEdt: TEdit Left = 0 @@ -62,15 +62,14 @@ object JSEvalFrm: TJSEvalFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 16 - top = 40 + Left = 16 + Top = 40 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 16 - top = 96 + Left = 16 + Top = 96 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSEval/uJSEval.pas b/demos/Lazarus_Windows/JavaScript/JSEval/uJSEval.pas index b0ae0fdd..5327e0c4 100644 --- a/demos/Lazarus_Windows/JavaScript/JSEval/uJSEval.pas +++ b/demos/Lazarus_Windows/JavaScript/JSEval/uJSEval.pas @@ -36,34 +36,19 @@ type GoBtn: TButton; AddressEdt: TEdit; Timer1: TTimer; - procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure GoBtnClick(Sender: TObject); - procedure FormShow(Sender: TObject); - - procedure Chromium1ProcessMessageReceived(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; - const message: ICefProcessMessage; out Result: Boolean); - 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 GoBtnClick(Sender: TObject); 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 FormCloseQuery(Sender: TObject; var CanClose: Boolean); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; - var aAction : TCefCloseBrowserAction); - procedure Chromium1BeforeClose(Sender: TObject; - const browser: ICefBrowser); + + procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); + procedure Chromium1ProcessMessageReceived(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const message: ICefProcessMessage; out Result: Boolean); + 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 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); private { Private declarations } @@ -75,7 +60,6 @@ type FClosing : boolean; // Set to True in the CloseQuery event. 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 EvalJSCodeMsg(var aMessage : TMessage); message MINIBROWSER_EVALJSCODE; procedure GetScrollPosMsg(var aMessage : TMessage); message MINIBROWSER_GETSCROLLPOS; @@ -138,9 +122,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 TJSEvalFrm.Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); begin @@ -180,13 +163,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 TJSEvalFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSEvalFrm.Chromium1ContextMenuCommand(Sender : TObject; const browser : ICefBrowser; const frame : ICefFrame; @@ -213,6 +189,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -235,11 +212,6 @@ begin GoBtn.Click; end; -procedure TJSEvalFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TJSEvalFrm.ShowTextViewerMsg(var aMessage : TMessage); begin SimpleTextViewerFrm.Memo1.Lines.Text := FText; diff --git a/demos/Lazarus_Windows/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.lfm b/demos/Lazarus_Windows/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.lfm index 1cf3cbf2..e2015866 100644 --- a/demos/Lazarus_Windows/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.lfm @@ -15,7 +15,6 @@ object JSExecutingFunctionsFrm: TJSExecutingFunctionsFrm OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object NavControlPnl: TPanel Left = 0 Height = 21 @@ -26,6 +25,7 @@ object JSExecutingFunctionsFrm: TJSExecutingFunctionsFrm ClientHeight = 21 ClientWidth = 978 Enabled = False + ParentBackground = False TabOrder = 0 object Edit1: TEdit Left = 0 @@ -43,8 +43,8 @@ object JSExecutingFunctionsFrm: TJSExecutingFunctionsFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -61,15 +61,14 @@ object JSExecutingFunctionsFrm: TJSExecutingFunctionsFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 32 - top = 224 + Left = 32 + Top = 224 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 32 - top = 288 + Left = 32 + Top = 288 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.pas b/demos/Lazarus_Windows/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.pas index 23c5694e..2712d8d9 100644 --- a/demos/Lazarus_Windows/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.pas +++ b/demos/Lazarus_Windows/JavaScript/JSExecutingFunctions/uJSExecutingFunctions.pas @@ -33,39 +33,27 @@ type CEFWindowParent1: TCEFWindowParent; Chromium1: TChromium; Timer1: TTimer; - procedure FormShow(Sender: TObject); - procedure GoBtnClick(Sender: TObject); - procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - 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 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 FormDestroy(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure FormCreate(Sender: TObject); - 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 Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); + 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 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 // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -100,10 +88,8 @@ implementation // 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 calls TCEFSentinel.Start, which will trigger TCEFSentinel.OnClose when the renderer processes are closed. -// 4. TCEFSentinel.OnClose 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. uses uCEFProcessMessage, uMyV8Handler; @@ -185,12 +171,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 TJSExecutingFunctionsFrm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSExecutingFunctionsFrm.Chromium1ContextMenuCommand( Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; @@ -219,6 +199,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -284,9 +265,4 @@ begin GoBtn.Click; end; -procedure TJSExecutingFunctionsFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Windows/JavaScript/JSExtension/uJSExtension.lfm b/demos/Lazarus_Windows/JavaScript/JSExtension/uJSExtension.lfm index 8b2ab098..7bca3b31 100644 --- a/demos/Lazarus_Windows/JavaScript/JSExtension/uJSExtension.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSExtension/uJSExtension.lfm @@ -14,7 +14,6 @@ object JSExtensionFrm: TJSExtensionFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.8.0' object NavControlPnl: TPanel Left = 0 Height = 21 @@ -25,6 +24,7 @@ object JSExtensionFrm: TJSExtensionFrm ClientHeight = 21 ClientWidth = 978 Enabled = False + ParentBackground = False TabOrder = 0 object Edit1: TEdit Left = 0 @@ -42,8 +42,8 @@ object JSExtensionFrm: TJSExtensionFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -61,6 +61,7 @@ object JSExtensionFrm: TJSExtensionFrm Width = 978 Align = alBottom BevelOuter = bvLowered + ParentBackground = False TabOrder = 2 end object Chromium1: TChromium @@ -70,15 +71,14 @@ object JSExtensionFrm: TJSExtensionFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 32 - top = 224 + Left = 32 + Top = 224 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 32 - top = 288 + Left = 32 + Top = 288 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSExtension/uJSExtension.pas b/demos/Lazarus_Windows/JavaScript/JSExtension/uJSExtension.pas index 6e2b3dde..3bb78391 100644 --- a/demos/Lazarus_Windows/JavaScript/JSExtension/uJSExtension.pas +++ b/demos/Lazarus_Windows/JavaScript/JSExtension/uJSExtension.pas @@ -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 GlobalCEFApp_OnWebKitInitialized; var @@ -338,13 +321,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; @@ -455,6 +431,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -523,9 +500,4 @@ begin GoBtn.Click; end; -procedure TJSExtensionFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Windows/JavaScript/JSExtensionSubProcess/uJSExtension.lfm b/demos/Lazarus_Windows/JavaScript/JSExtensionSubProcess/uJSExtension.lfm index 7a1233b3..7bca3b31 100644 --- a/demos/Lazarus_Windows/JavaScript/JSExtensionSubProcess/uJSExtension.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSExtensionSubProcess/uJSExtension.lfm @@ -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 diff --git a/demos/Lazarus_Windows/JavaScript/JSExtensionSubProcess/uJSExtension.pas b/demos/Lazarus_Windows/JavaScript/JSExtensionSubProcess/uJSExtension.pas index 917af06c..6dcac1ae 100644 --- a/demos/Lazarus_Windows/JavaScript/JSExtensionSubProcess/uJSExtension.pas +++ b/demos/Lazarus_Windows/JavaScript/JSExtensionSubProcess/uJSExtension.pas @@ -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. diff --git a/demos/Lazarus_Windows/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.lfm b/demos/Lazarus_Windows/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.lfm index 6913270e..34be0dd1 100644 --- a/demos/Lazarus_Windows/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.lfm @@ -14,7 +14,6 @@ object JSExtensionWithFunctionFrm: TJSExtensionWithFunctionFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object NavControlPnl: TPanel Left = 0 Height = 21 @@ -25,6 +24,7 @@ object JSExtensionWithFunctionFrm: TJSExtensionWithFunctionFrm ClientHeight = 21 ClientWidth = 978 Enabled = False + ParentBackground = False TabOrder = 0 object Edit1: TEdit Left = 0 @@ -42,8 +42,8 @@ object JSExtensionWithFunctionFrm: TJSExtensionWithFunctionFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -69,15 +69,14 @@ object JSExtensionWithFunctionFrm: TJSExtensionWithFunctionFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 32 - top = 224 + Left = 32 + Top = 224 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 32 - top = 288 + Left = 32 + Top = 288 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.pas b/demos/Lazarus_Windows/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.pas index 5224c88a..68e6d9d0 100644 --- a/demos/Lazarus_Windows/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.pas +++ b/demos/Lazarus_Windows/JavaScript/JSExtensionWithFunction/uJSExtensionWithFunction.pas @@ -29,34 +29,25 @@ type Chromium1: TChromium; Timer1: TTimer; StatusBar1: TStatusBar; - procedure FormShow(Sender: TObject); - procedure GoBtnClick(Sender: TObject); - 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 Chromium1ProcessMessageReceived(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; - const message: ICefProcessMessage; out 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 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 Chromium1ProcessMessageReceived(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const message: ICefProcessMessage; out Result: Boolean); + procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); + protected // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -85,9 +76,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 +// 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 GlobalCEFApp_OnWebKitInitializedEvent; var @@ -150,13 +140,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 TJSExtensionWithFunctionFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSExtensionWithFunctionFrm.Chromium1ProcessMessageReceived( Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const message: ICefProcessMessage; @@ -179,6 +162,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -238,9 +222,4 @@ begin if (aMessage.wParam = 0) and (GlobalCEFApp <> nil) then GlobalCEFApp.OsmodalLoop := False; end; -procedure TJSExtensionWithFunctionFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Windows/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.lfm b/demos/Lazarus_Windows/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.lfm index f6df077f..578b805b 100644 --- a/demos/Lazarus_Windows/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.lfm @@ -14,7 +14,6 @@ object JSExtensionWithObjectParameterFrm: TJSExtensionWithObjectParameterFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object NavControlPnl: TPanel Left = 0 Height = 21 @@ -25,6 +24,7 @@ object JSExtensionWithObjectParameterFrm: TJSExtensionWithObjectParameterFrm ClientHeight = 21 ClientWidth = 978 Enabled = False + ParentBackground = False TabOrder = 0 object Edit1: TEdit Left = 0 @@ -42,8 +42,8 @@ object JSExtensionWithObjectParameterFrm: TJSExtensionWithObjectParameterFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -58,15 +58,14 @@ object JSExtensionWithObjectParameterFrm: TJSExtensionWithObjectParameterFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 32 - top = 224 + Left = 32 + Top = 224 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 32 - top = 288 + Left = 32 + Top = 288 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.pas b/demos/Lazarus_Windows/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.pas index 0d0750ee..bf878b86 100644 --- a/demos/Lazarus_Windows/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.pas +++ b/demos/Lazarus_Windows/JavaScript/JSExtensionWithObjectParameter/uJSExtensionWithObjectParameter.pas @@ -28,31 +28,24 @@ type CEFWindowParent1: TCEFWindowParent; Chromium1: TChromium; Timer1: TTimer; - procedure FormShow(Sender: TObject); - procedure GoBtnClick(Sender: TObject); - 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 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 // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -84,9 +77,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 GlobalCEFApp_OnWebKitInitializedEvent; var @@ -152,13 +144,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 TJSExtensionWithObjectParameterFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSExtensionWithObjectParameterFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -169,6 +154,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -228,9 +214,4 @@ begin GoBtn.Click; end; -procedure TJSExtensionWithObjectParameterFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Windows/JavaScript/JSSharedMemoryProcMessage/uMainForm.lfm b/demos/Lazarus_Windows/JavaScript/JSSharedMemoryProcMessage/uMainForm.lfm index e3c9821b..3bfc4f9a 100644 --- a/demos/Lazarus_Windows/JavaScript/JSSharedMemoryProcMessage/uMainForm.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSSharedMemoryProcMessage/uMainForm.lfm @@ -15,7 +15,6 @@ object MainForm: TMainForm OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.0.0.3' object CEFWindowParent1: TCEFWindowParent Left = 0 Height = 559 @@ -85,7 +84,6 @@ object MainForm: TMainForm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 16 Top = 40 end diff --git a/demos/Lazarus_Windows/JavaScript/JSSharedMemoryProcMessage/uMainForm.pas b/demos/Lazarus_Windows/JavaScript/JSSharedMemoryProcMessage/uMainForm.pas index 0650e6de..92afae19 100644 --- a/demos/Lazarus_Windows/JavaScript/JSSharedMemoryProcMessage/uMainForm.pas +++ b/demos/Lazarus_Windows/JavaScript/JSSharedMemoryProcMessage/uMainForm.pas @@ -42,7 +42,6 @@ type procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); procedure Chromium1ProcessMessageReceived(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const message: ICefProcessMessage; out Result: Boolean); 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -58,7 +57,6 @@ type procedure SetMsgContents(const aValue : string); procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure ShowMessageMsg(var aMessage : TMessage); message MINIBROWSER_SHOWMESSAGE; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; @@ -100,13 +98,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 GlobalCEFApp_OnProcessMessageReceived(const browser : ICefBrowser; const frame : ICefFrame; @@ -194,13 +187,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 TMainForm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TMainForm.Chromium1ProcessMessageReceived(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const message: ICefProcessMessage; out Result: Boolean); @@ -232,6 +218,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -268,11 +255,6 @@ begin AddressBarPnl.Enabled := True; end; -procedure TMainForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TMainForm.SendMessageBtnClick(Sender: TObject); const BUFFER_SIZE = 1; // Random buffer size for this demo diff --git a/demos/Lazarus_Windows/JavaScript/JSSimpleExtension/uJSSimpleExtension.lfm b/demos/Lazarus_Windows/JavaScript/JSSimpleExtension/uJSSimpleExtension.lfm index f44a01a3..b5210f27 100644 --- a/demos/Lazarus_Windows/JavaScript/JSSimpleExtension/uJSSimpleExtension.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSSimpleExtension/uJSSimpleExtension.lfm @@ -14,7 +14,6 @@ object JSSimpleExtensionFrm: TJSSimpleExtensionFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object NavControlPnl: TPanel Left = 0 Height = 21 @@ -25,6 +24,7 @@ object JSSimpleExtensionFrm: TJSSimpleExtensionFrm ClientHeight = 21 ClientWidth = 978 Enabled = False + ParentBackground = False TabOrder = 0 object Edit1: TEdit Left = 0 @@ -42,8 +42,8 @@ object JSSimpleExtensionFrm: TJSSimpleExtensionFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -58,15 +58,14 @@ object JSSimpleExtensionFrm: TJSSimpleExtensionFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 32 - top = 224 + Left = 32 + Top = 224 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 32 - top = 288 + Left = 32 + Top = 288 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSSimpleExtension/uJSSimpleExtension.pas b/demos/Lazarus_Windows/JavaScript/JSSimpleExtension/uJSSimpleExtension.pas index fb0438b8..1120bb22 100644 --- a/demos/Lazarus_Windows/JavaScript/JSSimpleExtension/uJSSimpleExtension.pas +++ b/demos/Lazarus_Windows/JavaScript/JSSimpleExtension/uJSSimpleExtension.pas @@ -28,31 +28,24 @@ type CEFWindowParent1: TCEFWindowParent; Chromium1: TChromium; Timer1: TTimer; - procedure FormShow(Sender: TObject); - procedure GoBtnClick(Sender: TObject); - 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 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 // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -81,9 +74,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 GlobalCEFApp_OnWebKitInitializedEvent; var @@ -190,13 +182,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSSimpleExtensionFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSSimpleExtensionFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -207,6 +192,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -216,9 +202,4 @@ begin FClosing := False; end; -procedure TJSSimpleExtensionFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Windows/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.lfm b/demos/Lazarus_Windows/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.lfm index 32485b52..b6ab26aa 100644 --- a/demos/Lazarus_Windows/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.lfm @@ -14,7 +14,6 @@ object JSSimpleWindowBindingFrm: TJSSimpleWindowBindingFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object NavControlPnl: TPanel Left = 0 Height = 21 @@ -25,6 +24,7 @@ object JSSimpleWindowBindingFrm: TJSSimpleWindowBindingFrm ClientHeight = 21 ClientWidth = 978 Enabled = False + ParentBackground = False TabOrder = 0 object Edit1: TEdit Left = 0 @@ -42,8 +42,8 @@ object JSSimpleWindowBindingFrm: TJSSimpleWindowBindingFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -58,15 +58,14 @@ object JSSimpleWindowBindingFrm: TJSSimpleWindowBindingFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 32 - top = 224 + Left = 32 + Top = 224 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 32 - top = 288 + Left = 32 + Top = 288 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.pas b/demos/Lazarus_Windows/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.pas index 1cea9be5..a7fc3e43 100644 --- a/demos/Lazarus_Windows/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.pas +++ b/demos/Lazarus_Windows/JavaScript/JSSimpleWindowBinding/uJSSimpleWindowBinding.pas @@ -28,31 +28,24 @@ type CEFWindowParent1: TCEFWindowParent; Chromium1: TChromium; Timer1: TTimer; - procedure FormShow(Sender: TObject); - procedure GoBtnClick(Sender: TObject); - 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 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 // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -78,9 +71,8 @@ implementation // 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 GlobalCEFApp_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); var @@ -182,13 +174,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSSimpleWindowBindingFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSSimpleWindowBindingFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -199,6 +184,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -208,9 +194,4 @@ begin FClosing := False; end; -procedure TJSSimpleWindowBindingFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Windows/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.lfm b/demos/Lazarus_Windows/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.lfm index 833febed..6d1ef0a4 100644 --- a/demos/Lazarus_Windows/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.lfm @@ -14,7 +14,6 @@ object JSSimpleWindowBindingFrm: TJSSimpleWindowBindingFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object NavControlPnl: TPanel Left = 0 Height = 21 @@ -25,6 +24,7 @@ object JSSimpleWindowBindingFrm: TJSSimpleWindowBindingFrm ClientHeight = 21 ClientWidth = 978 Enabled = False + ParentBackground = False TabOrder = 0 object Edit1: TEdit Left = 0 @@ -42,8 +42,8 @@ object JSSimpleWindowBindingFrm: TJSSimpleWindowBindingFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -58,15 +58,14 @@ object JSSimpleWindowBindingFrm: TJSSimpleWindowBindingFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 32 - top = 224 + Left = 32 + Top = 224 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 32 - top = 288 + Left = 32 + Top = 288 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.pas b/demos/Lazarus_Windows/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.pas index 74ccc56a..6b995aa5 100644 --- a/demos/Lazarus_Windows/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.pas +++ b/demos/Lazarus_Windows/JavaScript/JSWindowBindingSubProcess/uJSSimpleWindowBinding.pas @@ -28,24 +28,18 @@ type CEFWindowParent1: TCEFWindowParent; Chromium1: TChromium; Timer1: TTimer; - procedure FormShow(Sender: TObject); - procedure GoBtnClick(Sender: TObject); - 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 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 @@ -53,7 +47,6 @@ type FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -77,9 +70,8 @@ implementation // 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 TJSSimpleWindowBindingFrm.GoBtnClick(Sender: TObject); begin @@ -162,13 +154,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSSimpleWindowBindingFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSSimpleWindowBindingFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -181,6 +166,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end else @@ -193,9 +179,4 @@ begin FClosing := False; end; -procedure TJSSimpleWindowBindingFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.lfm b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.lfm index 5b987022..5417645c 100644 --- a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.lfm @@ -14,7 +14,6 @@ object JSWindowBindingWithArrayBufferFrm: TJSWindowBindingWithArrayBufferFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object NavControlPnl: TPanel Left = 0 Height = 20 @@ -25,6 +24,7 @@ object JSWindowBindingWithArrayBufferFrm: TJSWindowBindingWithArrayBufferFrm ClientHeight = 20 ClientWidth = 978 Enabled = False + ParentBackground = False TabOrder = 0 object Edit1: TEdit Left = 0 @@ -42,8 +42,8 @@ object JSWindowBindingWithArrayBufferFrm: TJSWindowBindingWithArrayBufferFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -58,15 +58,14 @@ object JSWindowBindingWithArrayBufferFrm: TJSWindowBindingWithArrayBufferFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 32 - top = 224 + Left = 32 + Top = 224 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 32 - top = 288 + Left = 32 + Top = 288 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.pas b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.pas index 33bee355..d80b4c46 100644 --- a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.pas +++ b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithArrayBuffer/uJSWindowBindingWithArrayBuffer.pas @@ -28,31 +28,24 @@ type CEFWindowParent1: TCEFWindowParent; Chromium1: TChromium; Timer1: TTimer; - procedure FormShow(Sender: TObject); - procedure GoBtnClick(Sender: TObject); - 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 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 // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -81,14 +74,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. - -procedure FreeCustomArrayBufer(buffer : Pointer); -begin - if (buffer <> nil) then FreeMem(buffer); -end; +// 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 GlobalCEFApp_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); const @@ -96,27 +83,14 @@ const BUFFER_FILL_VALUE = 42; // Some ramdom value to fill the buffer var TempObject : ICefv8Value; - TempCallback : ICefv8ArrayBufferReleaseCallback; TempBuffer : Pointer; begin - // The ArrayBuffer in this demo has a "buffer" pointer but CEF uses a callback to free it when the JS garbage collector is triggered. - // The garbage collector calls ICefv8ArrayBufferReleaseCallback.ReleaseBuffer to free the buffer and - // CEF4Delphi has a TCefFastv8ArrayBufferReleaseCallback class that calls a custom procedure when - // ICefv8ArrayBufferReleaseCallback.ReleaseBuffer is called. - GetMem(TempBuffer, BUFFER_LENGTH); FillChar(TempBuffer^, BUFFER_LENGTH, BUFFER_FILL_VALUE); - // TempCallback will execute FreeCustomArrayBufer when the garbage collector needs to free the buffer inside the "ArrayBuffer". - TempCallback := TCefFastv8ArrayBufferReleaseCallback.Create(@FreeCustomArrayBufer); - TempObject := TCefv8ValueRef.NewArrayBuffer(TempBuffer, BUFFER_LENGTH, TempCallback); + TempObject := TCefv8ValueRef.NewArrayBufferWithCopy(TempBuffer, BUFFER_LENGTH); context.Global.SetValueByKey('myobj', TempObject, V8_PROPERTY_ATTRIBUTE_NONE); - - // If you keep a reference to "TempObject" and you need to free the buffer immediately then call TempObject.NeuterArrayBuffer - - // Read this for more information about ICefv8Value : - // https://magpcss.org/ceforum/apidocs3/projects/(default)/CefV8Value.html end; procedure CreateGlobalCEFApp; @@ -206,13 +180,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSWindowBindingWithArrayBufferFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSWindowBindingWithArrayBufferFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -223,6 +190,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -232,9 +200,4 @@ begin FClosing := False; end; -procedure TJSWindowBindingWithArrayBufferFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.lfm b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.lfm index 568253ce..a886162f 100644 --- a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.lfm @@ -14,7 +14,6 @@ object JSWindowBindingWithFunctionFrm: TJSWindowBindingWithFunctionFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object NavControlPnl: TPanel Left = 0 Height = 21 @@ -25,6 +24,7 @@ object JSWindowBindingWithFunctionFrm: TJSWindowBindingWithFunctionFrm ClientHeight = 21 ClientWidth = 978 Enabled = False + ParentBackground = False TabOrder = 0 object Edit1: TEdit Left = 0 @@ -42,8 +42,8 @@ object JSWindowBindingWithFunctionFrm: TJSWindowBindingWithFunctionFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -58,15 +58,14 @@ object JSWindowBindingWithFunctionFrm: TJSWindowBindingWithFunctionFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 32 - top = 224 + Left = 32 + Top = 224 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 32 - top = 288 + Left = 32 + Top = 288 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.pas b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.pas index d25509c6..8fc3da8a 100644 --- a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.pas +++ b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithFunction/uJSWindowBindingWithFunction.pas @@ -28,31 +28,24 @@ type CEFWindowParent1: TCEFWindowParent; Chromium1: TChromium; Timer1: TTimer; + procedure FormShow(Sender: TObject); - procedure GoBtnClick(Sender: TObject); - 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 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 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 // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -81,9 +74,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 GlobalCEFApp_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); var @@ -186,13 +178,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSWindowBindingWithFunctionFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSWindowBindingWithFunctionFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -203,6 +188,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -212,9 +198,4 @@ begin FClosing := False; end; -procedure TJSWindowBindingWithFunctionFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.lfm b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.lfm index 0769ee80..e79a2058 100644 --- a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.lfm +++ b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.lfm @@ -14,7 +14,6 @@ object JSWindowBindingWithObjectFrm: TJSWindowBindingWithObjectFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object NavControlPnl: TPanel Left = 0 Height = 21 @@ -25,6 +24,7 @@ object JSWindowBindingWithObjectFrm: TJSWindowBindingWithObjectFrm ClientHeight = 21 ClientWidth = 978 Enabled = False + ParentBackground = False TabOrder = 0 object Edit1: TEdit Left = 0 @@ -42,8 +42,8 @@ object JSWindowBindingWithObjectFrm: TJSWindowBindingWithObjectFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -58,15 +58,14 @@ object JSWindowBindingWithObjectFrm: TJSWindowBindingWithObjectFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 32 - top = 224 + Left = 32 + Top = 224 end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 32 - top = 288 + Left = 32 + Top = 288 end end diff --git a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.pas b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.pas index e76ccaed..c6ef5239 100644 --- a/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.pas +++ b/demos/Lazarus_Windows/JavaScript/JSWindowBindingWithObject/uJSWindowBindingWithObject.pas @@ -28,32 +28,24 @@ type CEFWindowParent1: TCEFWindowParent; Chromium1: TChromium; Timer1: TTimer; - procedure CEFSentinel1Close(Sender: TObject); + procedure FormShow(Sender: TObject); - procedure GoBtnClick(Sender: TObject); - 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 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 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 // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -82,9 +74,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 GlobalCEFApp_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); var @@ -140,11 +131,6 @@ begin if not(Chromium1.CreateBrowser(CEFWindowParent1, '')) then Timer1.Enabled := True; end; -procedure TJSWindowBindingWithObjectFrm.CEFSentinel1Close(Sender: TObject); -begin - -end; - procedure TJSWindowBindingWithObjectFrm.WMMove(var aMessage : TWMMove); begin inherited; @@ -195,13 +181,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TJSWindowBindingWithObjectFrm.Chromium1Close( - Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TJSWindowBindingWithObjectFrm.FormCloseQuery( Sender: TObject; var CanClose: Boolean); begin @@ -212,6 +191,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -221,9 +201,4 @@ begin FClosing := False; end; -procedure TJSWindowBindingWithObjectFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Windows/MediaRouter/debug.log b/demos/Lazarus_Windows/MediaRouter/debug.log deleted file mode 100644 index fff270b2..00000000 --- a/demos/Lazarus_Windows/MediaRouter/debug.log +++ /dev/null @@ -1,2 +0,0 @@ -[1223/171613.318:WARNING:resource_util.cc(94)] Please customize CefSettings.root_cache_path for your application. Use of the default value may lead to unintended process singleton behavior. -[1223/171618.055:WARNING:pref_notifier_impl.cc(41)] Pref observer for media_router.cast_allow_all_ips found at shutdown. diff --git a/demos/Lazarus_Windows/MediaRouter/uMediaRouterFrm.lfm b/demos/Lazarus_Windows/MediaRouter/uMediaRouterFrm.lfm index c6d257e9..f546b873 100644 --- a/demos/Lazarus_Windows/MediaRouter/uMediaRouterFrm.lfm +++ b/demos/Lazarus_Windows/MediaRouter/uMediaRouterFrm.lfm @@ -15,7 +15,7 @@ object MediaRouterFrm: TMediaRouterFrm OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.0.0.3' + LCLVersion = '3.4.0.0' object CEFWindowParent1: TCEFWindowParent Left = 184 Height = 0 @@ -311,7 +311,6 @@ object MediaRouterFrm: TMediaRouterFrm OnMediaRouteCreateFinished = Chromium1MediaRouteCreateFinished OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnSinks = Chromium1Sinks OnRoutes = Chromium1Routes OnRouteStateChanged = Chromium1RouteStateChanged diff --git a/demos/Lazarus_Windows/MediaRouter/uMediaRouterFrm.pas b/demos/Lazarus_Windows/MediaRouter/uMediaRouterFrm.pas index b2056cbf..e7f6f22b 100644 --- a/demos/Lazarus_Windows/MediaRouter/uMediaRouterFrm.pas +++ b/demos/Lazarus_Windows/MediaRouter/uMediaRouterFrm.pas @@ -57,7 +57,6 @@ type procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction: TCefCloseBrowserAction); procedure Chromium1Sinks(Sender: TObject; const sinks: TCefMediaSinkArray); procedure Chromium1Routes(Sender: TObject; const routes: TCefMediaRouteArray); procedure Chromium1RouteStateChanged(Sender: TObject; const route: ICefMediaRoute; state: TCefMediaRouteConnectionState); @@ -86,7 +85,6 @@ type FSinks : TCefMediaSinkInfoArray; FRoutes : TCefMediaRouteInfoArray; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure PendingLogLinesMsg(var aMessage : TMessage); message MEDIA_ROUTER_PENDING_LOG_LINES; procedure RefreshSinksMsg(var aMessage : TMessage); message MEDIA_ROUTER_REFRESH_SINKS; procedure RefreshRoutesMsg(var aMessage : TMessage); message MEDIA_ROUTER_REFRESH_ROUTES; @@ -194,13 +192,6 @@ begin PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TMediaRouterFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction: TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TMediaRouterFrm.Chromium1MediaRouteCreateFinished(Sender: TObject; result: Integer; const error: ustring; const route: ICefMediaRoute); var @@ -284,6 +275,7 @@ begin Visible := False; DestroyAllArrays; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -399,11 +391,6 @@ begin Timer1.Enabled := True; end; -procedure TMediaRouterFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TMediaRouterFrm.PendingLogLinesMsg(var aMessage : TMessage); begin if FClosing then exit; diff --git a/demos/Lazarus_Windows/MiniBrowser/uMiniBrowser.lfm b/demos/Lazarus_Windows/MiniBrowser/uMiniBrowser.lfm index 27a46e58..4909d6d3 100644 --- a/demos/Lazarus_Windows/MiniBrowser/uMiniBrowser.lfm +++ b/demos/Lazarus_Windows/MiniBrowser/uMiniBrowser.lfm @@ -15,7 +15,6 @@ object MiniBrowserFrm: TMiniBrowserFrm OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.4.0.0' object Splitter1: TSplitter Left = 1179 Height = 663 @@ -118,11 +117,11 @@ object MiniBrowserFrm: TMiniBrowserFrm TabOrder = 1 object URLCbx: TComboBox Left = 0 - Height = 21 + Height = 22 Top = 3 Width = 978 Anchors = [akTop, akLeft, akRight, akBottom] - ItemHeight = 13 + ItemHeight = 14 ItemIndex = 0 Items.Strings = ( 'https://www.google.com' diff --git a/demos/Lazarus_Windows/MiniBrowser/uMiniBrowser.pas b/demos/Lazarus_Windows/MiniBrowser/uMiniBrowser.pas index 9818daa5..3c3697ed 100644 --- a/demos/Lazarus_Windows/MiniBrowser/uMiniBrowser.pas +++ b/demos/Lazarus_Windows/MiniBrowser/uMiniBrowser.pas @@ -117,25 +117,16 @@ type OpenfilewithaDAT1: TMenuItem; N5: TMenuItem; Memoryinfo1: TMenuItem; + + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); + + procedure Timer1Timer(Sender: TObject); + procedure ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); + procedure PopupMenu1Popup(Sender: TObject); procedure Allowdownloads1Click(Sender: TObject); - procedure CEFWindowParent1DragDrop(Sender, Source: TObject; X, Y: Integer); - procedure Chromium1CanDownload(Sender: TObject; const browser: ICefBrowser; - const url, request_method: ustring; var aResult: boolean); - procedure Chromium1CookiesFlushed(Sender: TObject); - procedure Chromium1DevToolsMethodResult(Sender: TObject; - const browser: ICefBrowser; message_id: integer; success: boolean; - const result: ICefValue); - procedure Chromium1DownloadImageFinished(Sender: TObject; - const imageUrl: ustring; httpStatusCode: Integer; const image: ICefImage); - procedure Chromium1MediaAccessChange(Sender: TObject; - const browser: ICefBrowser; has_video_access, has_audio_access: boolean); - procedure Chromium1RequestMediaAccessPermission(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; - const requesting_origin: ustring; requested_permissions: cardinal; - const callback: ICefMediaAccessCallback; var aResult: boolean); - procedure Chromium1ZoomPctAvailable(Sender: TObject; const aZoomPct: double - ); - procedure FormShow(Sender: TObject); procedure BackBtnClick(Sender: TObject); procedure ForwardBtnClick(Sender: TObject); procedure MenuItem1Click(Sender: TObject); @@ -145,24 +136,6 @@ type procedure MenuItem5Click(Sender: TObject); procedure MenuItem6Click(Sender: TObject); procedure ReloadBtnClick(Sender: TObject); - procedure Chromium1AfterCreated(Sender: TObject; - const browser: ICefBrowser); - procedure Chromium1LoadingStateChange(Sender: TObject; - const browser: ICefBrowser; isLoading, canGoBack, - canGoForward: Boolean); - procedure Chromium1TitleChange(Sender: TObject; - const browser: ICefBrowser; const title: ustring); - procedure Chromium1AddressChange(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; - const url: ustring); - procedure Chromium1BeforeContextMenu(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; - const params: ICefContextMenuParams; const model: ICefMenuModel); - procedure Chromium1StatusMessage(Sender: TObject; - const browser: ICefBrowser; const value: ustring); - procedure Chromium1TextResultAvailable(Sender: TObject; - const aText: ustring); - procedure PopupMenu1Popup(Sender: TObject); procedure DevTools1Click(Sender: TObject); procedure Preferences1Click(Sender: TObject); procedure ConfigBtnClick(Sender: TObject); @@ -172,68 +145,47 @@ type procedure Inczoom1Click(Sender: TObject); procedure Deczoom1Click(Sender: TObject); procedure Resetzoom1Click(Sender: TObject); - procedure Chromium1FullScreenModeChange(Sender: TObject; - const browser: ICefBrowser; fullscreen: Boolean); - procedure Chromium1PreKeyEvent(Sender: TObject; - const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; - out isKeyboardShortcut, Result: Boolean); - procedure Chromium1KeyEvent(Sender: TObject; - const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; - out Result: Boolean); - procedure ApplicationEvents1Message(var Msg: tagMSG; - var Handled: Boolean); procedure Openfile1Click(Sender: TObject); - procedure Chromium1ContextMenuCommand(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; - const params: ICefContextMenuParams; commandId: Integer; - eventFlags: Cardinal; out Result: Boolean); - procedure Chromium1PdfPrintFinished(Sender: TObject; - aResultOK: Boolean); - procedure Chromium1ResourceResponse(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; - const request: ICefRequest; const response: ICefResponse; - out Result: Boolean); procedure StopBtnClick(Sender: TObject); procedure Resolvehost1Click(Sender: TObject); - procedure Chromium1ResolvedHostAvailable(Sender: TObject; - result: Integer; const resolvedIps: TStrings); - procedure Timer1Timer(Sender: TObject); - procedure Chromium1PrefsAvailable(Sender: TObject; aResultOK: Boolean); - procedure Chromium1BeforeDownload(Sender: TObject; - const browser: ICefBrowser; const downloadItem: ICefDownloadItem; - const suggestedName: ustring; - const callback: ICefBeforeDownloadCallback); - procedure Chromium1DownloadUpdated(Sender: TObject; - const browser: ICefBrowser; const downloadItem: ICefDownloadItem; - const callback: ICefDownloadItemCallback); - procedure FormCreate(Sender: TObject); - procedure FormDestroy(Sender: TObject); - procedure Chromium1BeforeResourceLoad(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; - const request: ICefRequest; const callback: ICefCallback; - out Result: TCefReturnValue); - 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 Chromium1RenderCompMsg(Sender: TObject; var aMessage : TMessage; var aHandled: Boolean); - procedure Chromium1LoadingProgressChange(Sender: TObject; - const browser: ICefBrowser; const progress: Double); procedure OpenfilewithaDAT1Click(Sender: TObject); - procedure Chromium1LoadEnd(Sender: TObject; const browser: ICefBrowser; - const frame: ICefFrame; httpStatusCode: Integer); procedure Memoryinfo1Click(Sender: TObject); - procedure Chromium1LoadError(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; - errorCode: Integer; const errorText, failedUrl: ustring); - procedure Chromium1CertificateError(Sender: TObject; - const browser: ICefBrowser; certError: Integer; - const requestUrl: ustring; const sslInfo: ICefSslInfo; - const callback: ICefCallback; out Result: Boolean); - procedure Chromium1NavigationVisitorResultAvailable(Sender: TObject; - const entry: ICefNavigationEntry; current: Boolean; index, total: Integer; - var aResult: Boolean); + + procedure CEFWindowParent1DragDrop(Sender, Source: TObject; X, Y: Integer); + + procedure Chromium1CanDownload(Sender: TObject; const browser: ICefBrowser; const url, request_method: ustring; var aResult: boolean); + procedure Chromium1CookiesFlushed(Sender: TObject); + procedure Chromium1DevToolsMethodResult(Sender: TObject; const browser: ICefBrowser; message_id: integer; success: boolean; const result: ICefValue); + procedure Chromium1DownloadImageFinished(Sender: TObject; const imageUrl: ustring; httpStatusCode: Integer; const image: ICefImage); + procedure Chromium1MediaAccessChange(Sender: TObject; const browser: ICefBrowser; has_video_access, has_audio_access: boolean); + procedure Chromium1RequestMediaAccessPermission(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const requesting_origin: ustring; requested_permissions: cardinal; const callback: ICefMediaAccessCallback; var aResult: boolean); + procedure Chromium1ZoomPctAvailable(Sender: TObject; const aZoomPct: double); + procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); + procedure Chromium1LoadingStateChange(Sender: TObject; const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean); + procedure Chromium1TitleChange(Sender: TObject; const browser: ICefBrowser; const title: ustring); + procedure Chromium1AddressChange(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const url: ustring); + procedure Chromium1BeforeContextMenu(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; const model: ICefMenuModel); + procedure Chromium1StatusMessage(Sender: TObject; const browser: ICefBrowser; const value: ustring); + procedure Chromium1TextResultAvailable(Sender: TObject; const aText: ustring); + procedure Chromium1FullScreenModeChange(Sender: TObject; const browser: ICefBrowser; fullscreen: Boolean); + procedure Chromium1PreKeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out isKeyboardShortcut, Result: Boolean); + procedure Chromium1KeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out Result: Boolean); + procedure Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; eventFlags: Cardinal; out Result: Boolean); + procedure Chromium1PdfPrintFinished(Sender: TObject; aResultOK: Boolean); + procedure Chromium1ResourceResponse(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; out Result: Boolean); + procedure Chromium1ResolvedHostAvailable(Sender: TObject; result: Integer; const resolvedIps: TStrings); + procedure Chromium1PrefsAvailable(Sender: TObject; aResultOK: Boolean); + procedure Chromium1BeforeDownload(Sender: TObject; const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback); + procedure Chromium1DownloadUpdated(Sender: TObject; const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback); + procedure Chromium1BeforeResourceLoad(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const callback: ICefCallback; out Result: TCefReturnValue); + procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); + procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); + procedure Chromium1RenderCompMsg(Sender: TObject; var aMessage : TMessage; var aHandled: Boolean); + procedure Chromium1LoadingProgressChange(Sender: TObject; const browser: ICefBrowser; const progress: Double); + procedure Chromium1LoadEnd(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; httpStatusCode: Integer); + procedure Chromium1LoadError(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; errorCode: Integer; const errorText, failedUrl: ustring); + procedure Chromium1CertificateError(Sender: TObject; const browser: ICefBrowser; certError: Integer; const requestUrl: ustring; const sslInfo: ICefSslInfo; const callback: ICefCallback; out Result: Boolean); + procedure Chromium1NavigationVisitorResultAvailable(Sender: TObject; const entry: ICefNavigationEntry; current: Boolean; index, total: Integer; var aResult: Boolean); protected FResponse : TStringList; @@ -269,7 +221,6 @@ type procedure InspectResponse(const aResponse : ICefResponse); procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure ShowDevToolsMsg(var aMessage : TMessage); message MINIBROWSER_SHOWDEVTOOLS; procedure HideDevToolsMsg(var aMessage : TMessage); message MINIBROWSER_HIDEDEVTOOLS; procedure CopyAllTextMsg(var aMessage : TMessage); message MINIBROWSER_COPYALLTEXT; @@ -312,9 +263,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 @@ -325,7 +275,6 @@ begin GlobalCEFApp.EnablePrintPreview := True; GlobalCEFApp.EnableGPU := True; GlobalCEFApp.SetCurrentDir := True; - GlobalCEFApp.ChromeRuntime := True; end; procedure TMiniBrowserFrm.BackBtnClick(Sender: TObject); @@ -1138,10 +1087,7 @@ begin // if TChromium.MultiBrowserMode is enabled then we have to close all // stored browsers and not only the main browser. Chromium1.CloseAllBrowsers; - - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; + CEFWindowParent1.Free; end; end; @@ -1517,11 +1463,6 @@ begin NavControlPnl.Enabled := True; end; -procedure TMiniBrowserFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - FreeAndNil(CEFWindowParent1); -end; - procedure TMiniBrowserFrm.AddURL(const aURL : string); begin if (URLCbx.Items.IndexOf(aURL) < 0) then URLCbx.Items.Add(aURL); diff --git a/demos/Lazarus_Windows/MobileBrowser/uMobileBrowser.lfm b/demos/Lazarus_Windows/MobileBrowser/uMobileBrowser.lfm index c447f433..c42942b1 100644 --- a/demos/Lazarus_Windows/MobileBrowser/uMobileBrowser.lfm +++ b/demos/Lazarus_Windows/MobileBrowser/uMobileBrowser.lfm @@ -14,7 +14,6 @@ object Form1: TForm1 OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.2.0.0' object Splitter1: TSplitter Left = 739 Height = 624 @@ -95,17 +94,17 @@ object Form1: TForm1 Width = 294 Align = alTop Caption = ' User agent ' - ClientHeight = 55 + ClientHeight = 54 ClientWidth = 290 ParentBackground = False TabOrder = 0 object UserAgentCb: TComboBox Left = 0 - Height = 21 + Height = 22 Top = 0 Width = 290 Align = alTop - ItemHeight = 13 + ItemHeight = 14 ItemIndex = 0 Items.Strings = ( 'Mozilla/5.0 (Linux; Android 11; M2102K1G) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.101 Mobile Safari/537.36' @@ -135,7 +134,7 @@ object Form1: TForm1 object OverrideUserAgentBtn: TButton Left = 0 Height = 25 - Top = 30 + Top = 29 Width = 290 Align = alBottom Caption = 'Override user agent' @@ -145,8 +144,8 @@ object Form1: TForm1 end object EmulateTouchChk: TCheckBox Left = 0 - Height = 17 - Top = 80 + Height = 18 + Top = 79 Width = 294 Align = alBottom Caption = 'Emulate Touch' @@ -172,7 +171,7 @@ object Form1: TForm1 Width = 294 Align = alClient Caption = ' Emulate device metrics ' - ClientHeight = 187 + ClientHeight = 186 ClientWidth = 290 ParentBackground = False TabOrder = 0 @@ -241,7 +240,7 @@ object Form1: TForm1 object OverrideDeviceMetricsBtn: TButton Left = 0 Height = 25 - Top = 162 + Top = 161 Width = 290 Align = alBottom Caption = 'Override device metrics' @@ -306,11 +305,11 @@ object Form1: TForm1 end object OrientationCb: TComboBox Left = 75 - Height = 21 + Height = 22 Top = 0 Width = 215 Align = alClient - ItemHeight = 13 + ItemHeight = 14 ItemIndex = 0 Items.Strings = ( 'Portrait Primary' @@ -420,7 +419,6 @@ object Form1: TForm1 OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnOpenUrlFromTab = Chromium1OpenUrlFromTab OnDevToolsMethodResult = Chromium1DevToolsMethodResult Left = 56 diff --git a/demos/Lazarus_Windows/MobileBrowser/uMobileBrowser.pas b/demos/Lazarus_Windows/MobileBrowser/uMobileBrowser.pas index 23994e17..51542f28 100644 --- a/demos/Lazarus_Windows/MobileBrowser/uMobileBrowser.pas +++ b/demos/Lazarus_Windows/MobileBrowser/uMobileBrowser.pas @@ -64,7 +64,6 @@ type procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(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, Result: Boolean); procedure Chromium1OpenUrlFromTab(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean; out Result: Boolean); @@ -85,7 +84,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure HandleSetUserAgentResult(aSuccess : boolean; const aResult: ICefValue); procedure HandleSetTouchEmulationEnabledResult(aSuccess : boolean; const aResult: ICefValue); @@ -119,9 +117,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. const DEVTOOLS_SETUSERAGENTOVERRIDE_MSGID = 1; @@ -143,6 +140,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -196,13 +194,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 TForm1.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TForm1.Chromium1DevToolsMethodResult(Sender: TObject; const browser: ICefBrowser; message_id: Integer; success: Boolean; const result: ICefValue); @@ -255,11 +246,6 @@ begin AddressPnl.Enabled := True; end; -procedure TForm1.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TForm1.GoBtnClick(Sender: TObject); begin // This will load the URL in the edit box diff --git a/demos/Lazarus_Windows/NetworkTrackerBrowser/uMainForm.lfm b/demos/Lazarus_Windows/NetworkTrackerBrowser/uMainForm.lfm index e15fdd2d..758d7e1f 100644 --- a/demos/Lazarus_Windows/NetworkTrackerBrowser/uMainForm.lfm +++ b/demos/Lazarus_Windows/NetworkTrackerBrowser/uMainForm.lfm @@ -15,7 +15,6 @@ object MainForm: TMainForm OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.2.0.0' object Splitter1: TSplitter Cursor = crVSplit Left = 0 @@ -90,7 +89,6 @@ object MainForm: TMainForm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnOpenUrlFromTab = Chromium1OpenUrlFromTab OnDevToolsMethodResult = Chromium1DevToolsMethodResult OnDevToolsRawEvent = Chromium1DevToolsRawEvent diff --git a/demos/Lazarus_Windows/NetworkTrackerBrowser/uMainForm.pas b/demos/Lazarus_Windows/NetworkTrackerBrowser/uMainForm.pas index 4622117b..98e7a5a7 100644 --- a/demos/Lazarus_Windows/NetworkTrackerBrowser/uMainForm.pas +++ b/demos/Lazarus_Windows/NetworkTrackerBrowser/uMainForm.pas @@ -35,7 +35,6 @@ type procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(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, Result: Boolean); procedure Chromium1OpenUrlFromTab(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean; out Result: Boolean); @@ -58,7 +57,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure AddLogLine(const aLogLine: string); public @@ -90,9 +88,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 2. TChromium.OnClose sends a CEF_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 TMainForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin @@ -103,6 +100,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -169,13 +167,6 @@ begin CEF_WOD_NEW_WINDOW]); end; -procedure TMainForm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TMainForm.Chromium1DevToolsMethodResult(Sender: TObject; const browser: ICefBrowser; message_id: Integer; success: Boolean; const result: ICefValue); @@ -216,11 +207,6 @@ begin AddressPnl.Enabled := True; end; -procedure TMainForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TMainForm.GoBtnClick(Sender: TObject); begin // This will load the URL in the edit box diff --git a/demos/Lazarus_Windows/OAuth2Tester/OAuth2Tester.lpi b/demos/Lazarus_Windows/OAuth2Tester/OAuth2Tester.lpi index 9d2f8a79..b0d396e2 100644 --- a/demos/Lazarus_Windows/OAuth2Tester/OAuth2Tester.lpi +++ b/demos/Lazarus_Windows/OAuth2Tester/OAuth2Tester.lpi @@ -70,6 +70,9 @@ + + + diff --git a/demos/Lazarus_Windows/OSRExternalPumpBrowser/uOSRExternalPumpBrowser.lfm b/demos/Lazarus_Windows/OSRExternalPumpBrowser/uOSRExternalPumpBrowser.lfm index c2ea93b5..a2c65a89 100644 --- a/demos/Lazarus_Windows/OSRExternalPumpBrowser/uOSRExternalPumpBrowser.lfm +++ b/demos/Lazarus_Windows/OSRExternalPumpBrowser/uOSRExternalPumpBrowser.lfm @@ -16,7 +16,7 @@ object OSRExternalPumpBrowserFrm: TOSRExternalPumpBrowserFrm OnHide = FormHide OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.10.0' + LCLVersion = '3.4.0.0' object NavControlPnl: TPanel Left = 0 Height = 21 @@ -27,6 +27,7 @@ object OSRExternalPumpBrowserFrm: TOSRExternalPumpBrowserFrm ClientHeight = 21 ClientWidth = 913 Enabled = False + ParentBackground = False TabOrder = 0 object ComboBox1: TComboBox Left = 0 @@ -44,9 +45,9 @@ object OSRExternalPumpBrowserFrm: TOSRExternalPumpBrowserFrm 'https://frames-per-second.appspot.com/' 'https://www.youtube.com' ) - OnEnter = ComboBox1Enter TabOrder = 0 Text = 'https://www.google.com' + OnEnter = ComboBox1Enter end object Panel2: TPanel Left = 844 @@ -57,6 +58,7 @@ object OSRExternalPumpBrowserFrm: TOSRExternalPumpBrowserFrm BevelOuter = bvNone ClientHeight = 21 ClientWidth = 69 + ParentBackground = False TabOrder = 1 object GoBtn: TButton Left = 0 @@ -65,9 +67,9 @@ object OSRExternalPumpBrowserFrm: TOSRExternalPumpBrowserFrm Width = 31 Align = alLeft Caption = 'Go' + TabOrder = 0 OnClick = GoBtnClick OnEnter = GoBtnEnter - TabOrder = 0 end object SnapshotBtn: TButton Left = 38 @@ -81,12 +83,12 @@ object OSRExternalPumpBrowserFrm: TOSRExternalPumpBrowserFrm Font.Color = clWindowText Font.Height = -24 Font.Name = 'Webdings' - OnClick = SnapshotBtnClick - OnEnter = SnapshotBtnEnter ParentFont = False ParentShowHint = False ShowHint = True TabOrder = 1 + OnClick = SnapshotBtnClick + OnEnter = SnapshotBtnEnter end end end diff --git a/demos/Lazarus_Windows/OSRExternalPumpBrowser/uOSRExternalPumpBrowser.pas b/demos/Lazarus_Windows/OSRExternalPumpBrowser/uOSRExternalPumpBrowser.pas index a1d86e78..df2125b2 100644 --- a/demos/Lazarus_Windows/OSRExternalPumpBrowser/uOSRExternalPumpBrowser.pas +++ b/demos/Lazarus_Windows/OSRExternalPumpBrowser/uOSRExternalPumpBrowser.pas @@ -27,7 +27,6 @@ type Timer1: TTimer; Panel1: TBufferPanel; - procedure CEFSentinel1Close(Sender: TObject); procedure GoBtnClick(Sender: TObject); procedure GoBtnEnter(Sender: TObject); @@ -173,12 +172,6 @@ begin chrmosr.LoadURL(ComboBox1.Text); end; -procedure TOSRExternalPumpBrowserFrm.CEFSentinel1Close(Sender: TObject); -begin - FCanClose := True; - PostMessage(Handle, WM_CLOSE, 0, 0); -end; - procedure TOSRExternalPumpBrowserFrm.chrmosrIMECompositionRangeChanged( Sender : TObject; const browser : ICefBrowser; const selected_range : PCefRange; diff --git a/demos/Lazarus_Windows/PopupBrowser/uChildForm.lfm b/demos/Lazarus_Windows/PopupBrowser/uChildForm.lfm index 1616cdc8..15c15940 100644 --- a/demos/Lazarus_Windows/PopupBrowser/uChildForm.lfm +++ b/demos/Lazarus_Windows/PopupBrowser/uChildForm.lfm @@ -1,4 +1,5 @@ object ChildForm: TChildForm + Tag = 42 Left = 550 Height = 256 Top = 146 @@ -18,15 +19,12 @@ object ChildForm: TChildForm OnShow = FormShow Position = poScreenCenter ShowInTaskBar = stAlways - LCLVersion = '2.0.10.0' + LCLVersion = '3.4.0.0' object Panel1: TBufferPanel Left = 0 Height = 256 Top = 0 Width = 352 - OnIMECancelComposition = Panel1IMECancelComposition - OnIMECommitText = Panel1IMECommitText - OnIMESetComposition = Panel1IMESetComposition Align = alClient OnUTF8KeyPress = Panel1UTF8KeyPress Caption = 'Panel1' @@ -46,6 +44,7 @@ object ChildForm: TChildForm OnResize = Panel1Resize end object chrmosr: TChromium + OnCanFocus = chrmosrCanFocus OnTitleChange = chrmosrTitleChange OnTooltip = chrmosrTooltip OnCursorChange = chrmosrCursorChange @@ -57,7 +56,6 @@ object ChildForm: TChildForm OnPopupShow = chrmosrPopupShow OnPopupSize = chrmosrPopupSize OnPaint = chrmosrPaint - OnIMECompositionRangeChanged = chrmosrIMECompositionRangeChanged Left = 24 Top = 56 end diff --git a/demos/Lazarus_Windows/PopupBrowser/uChildForm.pas b/demos/Lazarus_Windows/PopupBrowser/uChildForm.pas index 47569d54..878d249a 100644 --- a/demos/Lazarus_Windows/PopupBrowser/uChildForm.pas +++ b/demos/Lazarus_Windows/PopupBrowser/uChildForm.pas @@ -25,9 +25,6 @@ type procedure Panel1Enter(Sender: TObject); procedure Panel1Exit(Sender: TObject); - procedure Panel1IMECancelComposition(Sender: TObject); - procedure Panel1IMECommitText(Sender: TObject; const aText: ustring; const replacement_range: PCefRange; relative_cursor_pos: integer); - procedure Panel1IMESetComposition(Sender: TObject; const aText: ustring; const underlines: TCefCompositionUnderlineDynArray; const replacement_range, selection_range: TCefRange); procedure Panel1Resize(Sender: TObject); procedure Panel1Click(Sender: TObject); procedure Panel1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); @@ -43,7 +40,6 @@ type procedure FormDestroy(Sender: TObject); procedure FormShow(Sender: TObject); procedure FormHide(Sender: TObject); - procedure FormAfterMonitorDpiChanged(Sender: TObject; OldDPI, NewDPI: Integer); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure FormClose(Sender: TObject; var aAction: TCloseAction); @@ -57,12 +53,11 @@ type procedure chrmosrAfterCreated(Sender: TObject; const browser: ICefBrowser); procedure chrmosrTooltip(Sender: TObject; const browser: ICefBrowser; var aText: ustring; out Result: Boolean); procedure chrmosrBeforePopup(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 chrmosrBeforeClose(Sender: TObject; const browser: ICefBrowser); - procedure chrmosrIMECompositionRangeChanged(Sender: TObject; const browser: ICefBrowser; const selected_range: PCefRange; character_boundsCount: NativeUInt; const character_bounds: PCefRect); procedure chrmosrTitleChange(Sender: TObject; const browser: ICefBrowser; const title: ustring); + procedure chrmosrBeforeClose(Sender: TObject; const browser: ICefBrowser); + procedure chrmosrCanFocus(Sender: TObject); protected - FbFirst : boolean; FPopUpBitmap : TBitmap; FPopUpRect : TRect; FShowPopUp : boolean; @@ -72,9 +67,6 @@ type FClosing : boolean; FClientInitialized : boolean; FResizeCS : TCriticalSection; - FIMECS : TCriticalSection; - FDeviceBounds : TCefRectDynArray; - FSelectedRange : TCefRange; FPopupFeatures : TCefPopupFeatures; FLastClickCount : integer; @@ -101,11 +93,11 @@ type procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; procedure PendingResizeMsg(var aMessage : TMessage); message CEF_PENDINGRESIZE; procedure PendingInvalidateMsg(var aMessage : TMessage); message CEF_PENDINGINVALIDATE; - procedure RangeChangedMsg(var aMessage : TMessage); message CEF_IMERANGECHANGED; - procedure ShowChildMsg(var aMessage : TMessage); message CEF_SHOWCHILD; + procedure ShowChildMsg(var aMessage : TMessage); message CEF_SHOWCHILD; + procedure FocusEnabledMsg(var aMessage : TMessage); message CEF_FOCUSENABLED; public - function CreateClientHandler(var windowInfo : TCefWindowInfo; var client : ICefClient; const targetFrameName : string; const popupFeatures : TCefPopupFeatures) : boolean; + function CreateClientHandler(var windowInfo : TCefWindowInfo; var client : ICefClient; const targetFrameName : ustring; const popupFeatures : TCefPopupFeatures) : boolean; procedure ApplyPopupFeatures; property ClientInitialized : boolean read FClientInitialized; @@ -129,7 +121,7 @@ uses function TChildForm.CreateClientHandler(var windowInfo : TCefWindowInfo; var client : ICefClient; - const targetFrameName : string; + const targetFrameName : ustring; const popupFeatures : TCefPopupFeatures) : boolean; begin Panel1.CreateIMEHandler; @@ -149,55 +141,6 @@ begin if (FPopupFeatures.heightset <> 0) then chrmosr.ResizeFormHeightTo(FPopupFeatures.height); end; -procedure TChildForm.chrmosrIMECompositionRangeChanged( Sender : TObject; - const browser : ICefBrowser; - const selected_range : PCefRange; - character_boundsCount : NativeUInt; - const character_bounds : PCefRect); -var - TempPRect : PCefRect; - i : NativeUInt; -begin - try - FIMECS.Acquire; - - // TChromium.OnIMECompositionRangeChanged is triggered in a different thread - // and all functions using a IMM context need to be executed in the same - // thread, in this case the main thread. We need to save the parameters and - // send a message to the form to execute Panel1.ChangeCompositionRange in - // the main thread. - - if (FDeviceBounds <> nil) then - begin - Finalize(FDeviceBounds); - FDeviceBounds := nil; - end; - - FSelectedRange := selected_range^; - - if (character_boundsCount > 0) then - begin - SetLength(FDeviceBounds, character_boundsCount); - - i := 0; - TempPRect := character_bounds; - - while (i < character_boundsCount) do - begin - FDeviceBounds[i] := TempPRect^; - LogicalToDevice(FDeviceBounds[i], GlobalCEFApp.DeviceScaleFactor); - - inc(TempPRect); - inc(i); - end; - end; - - PostMessage(Handle, CEF_IMERANGECHANGED, 0, 0); - finally - FIMECS.Release; - end; -end; - procedure TChildForm.chrmosrAfterCreated(Sender: TObject; const browser: ICefBrowser); begin PostMessage(Handle, CEF_AFTERCREATED, 0, 0); @@ -460,7 +403,7 @@ end; procedure TChildForm.chrmosrTooltip(Sender: TObject; const browser: ICefBrowser; var aText: ustring; out Result: Boolean); begin - Panel1.hint := aText; + Panel1.hint := UTF8Encode(aText); Panel1.ShowHint := (length(aText) > 0); Result := True; end; @@ -611,15 +554,6 @@ begin Caption := 'Popup Browser'; end; -procedure TChildForm.FormAfterMonitorDpiChanged(Sender: TObject; OldDPI, NewDPI: Integer); -begin - if (chrmosr <> nil) then - begin - chrmosr.NotifyScreenInfoChanged; - chrmosr.WasResized; - end; -end; - procedure TChildForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin CanClose := FCanClose; @@ -634,7 +568,6 @@ end; procedure TChildForm.FormCreate(Sender: TObject); begin - FbFirst := False; FPopUpBitmap := nil; FPopUpRect := rect(0, 0, 0, 0); FShowPopUp := False; @@ -642,13 +575,7 @@ begin FPendingResize := False; FCanClose := False; FClosing := False; - FDeviceBounds := nil; - - FSelectedRange.from := 0; - FSelectedRange.to_ := 0; - FResizeCS := TCriticalSection.Create; - FIMECS := TCriticalSection.Create; InitializeLastClick; end; @@ -659,16 +586,9 @@ begin if (FPopUpBitmap <> nil) then FreeAndNil(FPopUpBitmap); if (FResizeCS <> nil) then FreeAndNil(FResizeCS); - if (FIMECS <> nil) then FreeAndNil(FIMECS); - if (FDeviceBounds <> nil) then - begin - Finalize(FDeviceBounds); - FDeviceBounds := nil; - end; - - if FClientInitialized and TMainForm(Owner).HandleAllocated then - PostMessage(TMainForm(Owner).Handle, CEF_CHILDDESTROYED, 0, 0); + if FClientInitialized and MainForm.HandleAllocated then + PostMessage(MainForm.Handle, CEF_CHILDDESTROYED, 0, 0); end; procedure TChildForm.FormHide(Sender: TObject); @@ -784,16 +704,6 @@ begin Panel1.Invalidate; end; -procedure TChildForm.RangeChangedMsg(var aMessage : TMessage); -begin - try - FIMECS.Acquire; - Panel1.ChangeCompositionRange(FSelectedRange, FDeviceBounds); - finally - FIMECS.Release; - end; -end; - procedure TChildForm.DoResize; begin try @@ -837,33 +747,19 @@ begin chrmosr.SetFocus(True); end; +procedure TChildForm.chrmosrCanFocus(Sender: TObject); +begin + // The browser required some time to create associated internal objects + // before being able to accept the focus. Now we can set the focus on the + // TBufferPanel control + PostMessage(Handle, CEF_FOCUSENABLED, 0, 0); +end; + procedure TChildForm.Panel1Exit(Sender: TObject); begin chrmosr.SetFocus(False); end; -procedure TChildForm.Panel1IMECancelComposition(Sender: TObject); -begin - chrmosr.IMECancelComposition; -end; - -procedure TChildForm.Panel1IMECommitText( Sender : TObject; - const aText : ustring; - const replacement_range : PCefRange; - relative_cursor_pos : Integer); -begin - chrmosr.IMECommitText(aText, replacement_range, relative_cursor_pos); -end; - -procedure TChildForm.Panel1IMESetComposition( Sender : TObject; - const aText : ustring; - const underlines : TCefCompositionUnderlineDynArray; - const replacement_range : TCefRange; - const selection_range : TCefRange); -begin - chrmosr.IMESetComposition(aText, underlines, @replacement_range, @selection_range); -end; - procedure TChildForm.Panel1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var TempKeyEvent : TCefKeyEvent; @@ -925,7 +821,7 @@ end; procedure TChildForm.chrmosrTitleChange(Sender: TObject; const browser: ICefBrowser; const title: ustring); begin - Caption := title; + Caption := UTF8Encode(title); end; procedure TChildForm.FormClose(Sender: TObject; var aAction: TCloseAction); @@ -939,4 +835,12 @@ begin Show; end; +procedure TChildForm.FocusEnabledMsg(var aMessage : TMessage); +begin + if Panel1.Focused then + chrmosr.SetFocus(True) + else + Panel1.SetFocus; +end; + end. diff --git a/demos/Lazarus_Windows/PopupBrowser/uMainForm.lfm b/demos/Lazarus_Windows/PopupBrowser/uMainForm.lfm index 75efd156..c657d92a 100644 --- a/demos/Lazarus_Windows/PopupBrowser/uMainForm.lfm +++ b/demos/Lazarus_Windows/PopupBrowser/uMainForm.lfm @@ -15,7 +15,7 @@ object MainForm: TMainForm OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.0.0.3' + LCLVersion = '3.4.0.0' object AddressPnl: TPanel Left = 0 Height = 21 diff --git a/demos/Lazarus_Windows/PopupBrowser/uMainForm.pas b/demos/Lazarus_Windows/PopupBrowser/uMainForm.pas index c9703538..cb374ff6 100644 --- a/demos/Lazarus_Windows/PopupBrowser/uMainForm.pas +++ b/demos/Lazarus_Windows/PopupBrowser/uMainForm.pas @@ -12,7 +12,7 @@ uses const CEF_CREATENEXTCHILD = WM_APP + $A50; - CEF_CHILDDESTROYED = WM_APP + $A51; + CEF_CHILDDESTROYED = WM_APP + $A51; type @@ -27,7 +27,6 @@ type Chromium1: TChromium; CEFWindowParent1: TCEFWindowParent; - procedure CEFSentinel1Close(Sender: TObject); procedure GoBtnClick(Sender: TObject); procedure Timer1Timer(Sender: TObject); @@ -43,14 +42,16 @@ type protected FChildForm : TChildForm; - FCriticalSection : TCriticalSection; + FCriticalSection : TCriticalSection; + FChildCounter : cardinal; // Used to create unique child form names. FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosingMainForm : boolean; // Set to True in the CloseQuery event. FClosingChildren : boolean; // Set to True in the CloseQuery event. function GetPopupChildCount : integer; - procedure ClosePopupChildren; + procedure ClosePopupChildren; + procedure CreateChildForm; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; @@ -63,7 +64,7 @@ type procedure ChildDestroyedMsg(var aMessage : TMessage); message CEF_CHILDDESTROYED; public - function CreateClientHandler(var windowInfo : TCefWindowInfo; var client : ICefClient; const targetFrameName : string; const popupFeatures : TCefPopupFeatures) : boolean; + function CreateClientHandler(var windowInfo : TCefWindowInfo; var client : ICefClient; const targetFrameName : ustring; const popupFeatures : TCefPopupFeatures) : boolean; property PopupChildCount : integer read GetPopupChildCount; end; @@ -109,7 +110,7 @@ uses procedure CreateGlobalCEFApp; begin GlobalCEFApp := TCefApplication.Create; - GlobalCEFApp.WindowlessRenderingEnabled := True; + GlobalCEFApp.WindowlessRenderingEnabled := True; GlobalCEFApp.SetCurrentDir := True; end; @@ -143,8 +144,9 @@ begin FCanClose := False; FCriticalSection := TCriticalSection.Create; - Chromium1.DefaultURL := AddressEdt.Text; + Chromium1.DefaultURL := UTF8Decode(AddressEdt.Text); Chromium1.Options.BackgroundColor := CefColorSetARGB($FF, $FF, $FF, $FF); + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TMainForm.FormDestroy(Sender: TObject); @@ -192,7 +194,7 @@ end; function TMainForm.CreateClientHandler(var windowInfo : TCefWindowInfo; var client : ICefClient; - const targetFrameName : string; + const targetFrameName : ustring; const popupFeatures : TCefPopupFeatures) : boolean; begin try @@ -244,15 +246,28 @@ begin if (TempForm is TChildForm) and TChildForm(TempForm).ClientInitialized and not(TChildForm(TempForm).Closing) then - PostMessage(TChildForm(TempForm).Handle, WM_CLOSE, 0, 0); + PostMessage(TempForm.Handle, WM_CLOSE, 0, 0); dec(i); end; end; +procedure TMainForm.CreateChildForm; +begin + if (FChildCounter < high(cardinal)) then + inc(FChildCounter) + else + FChildCounter := 1; + + FChildForm := TChildForm.Create(self); + FChildForm.Name := 'ChildForm_' + IntToStr(FChildCounter); + FChildForm.Tag := FChildCounter; +end; + procedure TMainForm.BrowserCreatedMsg(var aMessage : TMessage); begin - FChildForm := TChildForm.Create(self); + CreateChildForm; + Caption := 'Popup Browser'; AddressPnl.Enabled := True; end; @@ -268,13 +283,9 @@ begin FCriticalSection.Acquire; if (FChildForm <> nil) then - begin - //FChildForm.ApplyPopupFeatures; - //FChildForm.Show; - PostMessage(FChildForm.Handle, CEF_SHOWCHILD, 0, 0); - end; + PostMessage(FChildForm.Handle, CEF_SHOWCHILD, 0, 0); - FChildForm := TChildForm.Create(self); + CreateChildForm; finally FCriticalSection.Release; end; @@ -282,18 +293,14 @@ end; procedure TMainForm.ChildDestroyedMsg(var aMessage : TMessage); begin - if FClosingChildren and (PopupChildCount = 0) then Close; + if FClosingChildren and (PopupChildCount = 0) then + Close; end; procedure TMainForm.GoBtnClick(Sender: TObject); begin // This will load the URL in the edit box - Chromium1.LoadURL(AddressEdt.Text); -end; - -procedure TMainForm.CEFSentinel1Close(Sender: TObject); -begin - + Chromium1.LoadURL(UTF8Decode(AddressEdt.Text)); end; procedure TMainForm.Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); diff --git a/demos/Lazarus_Windows/PopupBrowser2/uChildForm.dfm b/demos/Lazarus_Windows/PopupBrowser2/uChildForm.dfm index 60805f42..1866e499 100644 --- a/demos/Lazarus_Windows/PopupBrowser2/uChildForm.dfm +++ b/demos/Lazarus_Windows/PopupBrowser2/uChildForm.dfm @@ -16,7 +16,6 @@ object ChildForm: TChildForm OnDestroy = FormDestroy Position = poScreenCenter ShowInTaskBar = stAlways - LCLVersion = '2.0.2.0' object CEFWindowParent1: TCEFWindowParent Left = 0 Height = 256 @@ -29,8 +28,7 @@ object ChildForm: TChildForm OnTitleChange = Chromium1TitleChange OnBeforePopup = Chromium1BeforePopup OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 24 - top = 56 + Left = 24 + Top = 56 end end diff --git a/demos/Lazarus_Windows/PopupBrowser2/uChildForm.pas b/demos/Lazarus_Windows/PopupBrowser2/uChildForm.pas index 1933078d..d7c504d4 100644 --- a/demos/Lazarus_Windows/PopupBrowser2/uChildForm.pas +++ b/demos/Lazarus_Windows/PopupBrowser2/uChildForm.pas @@ -24,7 +24,6 @@ type 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 Chromium1TitleChange(Sender: TObject; const browser: ICefBrowser; const title: ustring); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); protected @@ -37,7 +36,6 @@ type procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure ShowChildMsg(var aMessage : TMessage); message CEF_SHOWCHILD; public @@ -136,12 +134,6 @@ begin end; end; -procedure TChildForm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TChildForm.Chromium1TitleChange(Sender: TObject; const browser: ICefBrowser; const title: ustring); begin Caption := title; @@ -189,10 +181,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); - - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; + CEFWindowParent1.Free; end; end; @@ -209,11 +198,6 @@ begin PostMessage(TMainForm(Owner).Handle, CEF_CHILDDESTROYED, 0, 0); end; -procedure TChildForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TChildForm.ShowChildMsg(var aMessage : TMessage); begin ApplyPopupFeatures; diff --git a/demos/Lazarus_Windows/PopupBrowser2/uMainForm.lfm b/demos/Lazarus_Windows/PopupBrowser2/uMainForm.lfm index eab3cc2b..491e9ed7 100644 --- a/demos/Lazarus_Windows/PopupBrowser2/uMainForm.lfm +++ b/demos/Lazarus_Windows/PopupBrowser2/uMainForm.lfm @@ -15,7 +15,6 @@ object MainForm: TMainForm OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object AddressPnl: TPanel Left = 0 Height = 21 @@ -26,6 +25,7 @@ object MainForm: TMainForm ClientHeight = 21 ClientWidth = 1038 Enabled = False + ParentBackground = False TabOrder = 0 object AddressEdt: TEdit Left = 0 @@ -43,8 +43,8 @@ object MainForm: TMainForm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -59,19 +59,18 @@ object MainForm: TMainForm Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 56 - top = 88 + Left = 56 + Top = 88 end object Chromium1: TChromium OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 56 - top = 152 + Left = 56 + Top = 152 end object ApplicationProperties1: TApplicationProperties - left = 56 - top = 216 + Left = 56 + Top = 216 end end diff --git a/demos/Lazarus_Windows/PopupBrowser2/uMainForm.pas b/demos/Lazarus_Windows/PopupBrowser2/uMainForm.pas index 96e7f4b4..e7e09c69 100644 --- a/demos/Lazarus_Windows/PopupBrowser2/uMainForm.pas +++ b/demos/Lazarus_Windows/PopupBrowser2/uMainForm.pas @@ -27,7 +27,6 @@ type Chromium1: TChromium; CEFWindowParent1: TCEFWindowParent; - procedure CEFSentinel1Close(Sender: TObject); procedure GoBtnClick(Sender: TObject); procedure Timer1Timer(Sender: TObject); @@ -39,18 +38,19 @@ type 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); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction: TCefCloseBrowserAction); protected FChildForm : TChildForm; - FCriticalSection : TCriticalSection; + FCriticalSection : TCriticalSection; + FChildCounter : cardinal; // Used to create unique child form names. FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosingMainForm : boolean; // Set to True in the CloseQuery event. FClosingChildren : boolean; // Set to True in the CloseQuery event. function GetPopupChildCount : integer; - procedure ClosePopupChildren; + procedure ClosePopupChildren; + procedure CreateChildForm; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; @@ -58,7 +58,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure CreateNextChildMsg(var aMessage : TMessage); message CEF_CREATENEXTCHILD; procedure ChildDestroyedMsg(var aMessage : TMessage); message CEF_CHILDDESTROYED; @@ -101,15 +100,13 @@ uses // Destruction steps // ================= // 1. FormCloseQuery sets CanClose to FALSE and it closes all child forms. -// 2. When all the child forms are closed then FormCloseQuery is triggered again, sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event. -// 3. TChromium.OnClose sends a CEFBROWSER_DESTROY message to destroy CEFWindowParent1 in the main thread, which triggers the TChromium.OnBeforeClose event. -// 4. TChromium.OnBeforeClose sets FCanClose := True and sends WM_CLOSE to the form. +// 2. When all the child forms are closed then FormCloseQuery is triggered again, destroys CEFWindowParent1 and calls TChromium.CloseBrowser which triggers the TChromium.OnBeforeClose event. +// 3. TChromium.OnBeforeClose sets FCanClose := True and sends WM_CLOSE to the form. procedure CreateGlobalCEFApp; begin GlobalCEFApp := TCefApplication.Create; GlobalCEFApp.SetCurrentDir := True; - GlobalCEFApp.ChromeRuntime := True; //GlobalCEFApp.LogFile := 'cef.log'; //GlobalCEFApp.LogSeverity := LOGSEVERITY_VERBOSE; end; @@ -132,10 +129,7 @@ begin begin FClosingMainForm := True; Chromium1.CloseBrowser(True); - - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; + CEFWindowParent1.Free; end; end; end; @@ -254,31 +248,31 @@ begin end; end; +procedure TMainForm.CreateChildForm; +begin + inc(FChildCounter); + + FChildForm := TChildForm.Create(self); + FChildForm.Name := 'ChildForm_' + IntToStr(FChildCounter); +end; + procedure TMainForm.BrowserCreatedMsg(var aMessage : TMessage); begin - FChildForm := TChildForm.Create(self); + CreateChildForm; + Caption := 'Popup Browser'; AddressPnl.Enabled := True; end; -procedure TMainForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TMainForm.CreateNextChildMsg(var aMessage : TMessage); begin try FCriticalSection.Acquire; if (FChildForm <> nil) then - begin - //FChildForm.ApplyPopupFeatures; - //FChildForm.Show; - PostMessage(FChildForm.Handle, CEF_SHOWCHILD, 0, 0); - end; + PostMessage(FChildForm.Handle, CEF_SHOWCHILD, 0, 0); - FChildForm := TChildForm.Create(self); + CreateChildForm; finally FCriticalSection.Release; end; @@ -286,7 +280,8 @@ end; procedure TMainForm.ChildDestroyedMsg(var aMessage : TMessage); begin - if FClosingChildren and (PopupChildCount = 0) then Close; + if FClosingChildren and (PopupChildCount = 0) then + PostMessage(Handle, WM_CLOSE, 0, 0); end; procedure TMainForm.GoBtnClick(Sender: TObject); @@ -295,24 +290,12 @@ begin Chromium1.LoadURL(AddressEdt.Text); end; -procedure TMainForm.CEFSentinel1Close(Sender: TObject); -begin - -end; - procedure TMainForm.Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); begin FCanClose := True; PostMessage(Handle, WM_CLOSE, 0, 0); end; -procedure TMainForm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; - var aAction: TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TMainForm.Timer1Timer(Sender: TObject); begin Timer1.Enabled := False; diff --git a/demos/Lazarus_Windows/PostInspectorBrowser/uPostInspectorBrowser.lfm b/demos/Lazarus_Windows/PostInspectorBrowser/uPostInspectorBrowser.lfm index a3eb33d7..ae7c03ba 100644 --- a/demos/Lazarus_Windows/PostInspectorBrowser/uPostInspectorBrowser.lfm +++ b/demos/Lazarus_Windows/PostInspectorBrowser/uPostInspectorBrowser.lfm @@ -15,7 +15,6 @@ object Form1: TForm1 OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.0.0.3' object Splitter1: TSplitter Cursor = crVSplit Left = 0 @@ -49,11 +48,11 @@ object Form1: TForm1 end object AddressCb: TComboBox Left = 0 - Height = 21 + Height = 22 Top = 0 Width = 1007 Align = alClient - ItemHeight = 13 + ItemHeight = 14 ItemIndex = 0 Items.Strings = ( 'https://tryphp.w3schools.com/showphp.php?filename=demo_form_post' @@ -90,7 +89,6 @@ object Form1: TForm1 OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnBeforeResourceLoad = Chromium1BeforeResourceLoad Left = 56 Top = 152 diff --git a/demos/Lazarus_Windows/PostInspectorBrowser/uPostInspectorBrowser.pas b/demos/Lazarus_Windows/PostInspectorBrowser/uPostInspectorBrowser.pas index 7fec1ab7..a8cc7a85 100644 --- a/demos/Lazarus_Windows/PostInspectorBrowser/uPostInspectorBrowser.pas +++ b/demos/Lazarus_Windows/PostInspectorBrowser/uPostInspectorBrowser.pas @@ -31,29 +31,20 @@ type Memo1: TMemo; AddressCb: TComboBox; Splitter1: TSplitter; - procedure GoBtnClick(Sender: TObject); - procedure FormShow(Sender: TObject); - procedure Timer1Timer(Sender: TObject); - 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 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 FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); - procedure Chromium1BeforeResourceLoad(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; - const request: ICefRequest; const callback: ICefCallback; - out Result: TCefReturnValue); + procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); + + procedure GoBtnClick(Sender: TObject); + procedure Timer1Timer(Sender: TObject); + + 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); + procedure Chromium1BeforeResourceLoad(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const callback: ICefCallback; out Result: TCefReturnValue); + protected // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose @@ -70,7 +61,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure ShowDataMsg(var aMessage : TMessage); message CEF_SHOWDATA; procedure HandleRequest(const request : ICefRequest; aIsMain : boolean); @@ -104,9 +94,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 @@ -125,6 +114,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -374,24 +364,12 @@ begin Result := (targetDisposition in [CEF_WOD_NEW_FOREGROUND_TAB, CEF_WOD_NEW_BACKGROUND_TAB, CEF_WOD_NEW_POPUP, CEF_WOD_NEW_WINDOW]); end; -procedure TForm1.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TForm1.BrowserCreatedMsg(var aMessage : TMessage); begin Caption := 'POST Inspector Browser'; AddressPnl.Enabled := True; end; -procedure TForm1.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TForm1.GoBtnClick(Sender: TObject); begin // This will load the URL in the edit box diff --git a/demos/Lazarus_Windows/ResponseFilterBrowser/uResponseFilterBrowser.lfm b/demos/Lazarus_Windows/ResponseFilterBrowser/uResponseFilterBrowser.lfm index 5262a9d0..6c43de5e 100644 --- a/demos/Lazarus_Windows/ResponseFilterBrowser/uResponseFilterBrowser.lfm +++ b/demos/Lazarus_Windows/ResponseFilterBrowser/uResponseFilterBrowser.lfm @@ -15,7 +15,6 @@ object ResponseFilterBrowserFrm: TResponseFilterBrowserFrm OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.2.0.0' object Splitter1: TSplitter Cursor = crVSplit Left = 0 @@ -165,7 +164,6 @@ object ResponseFilterBrowserFrm: TResponseFilterBrowserFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnBeforeResourceLoad = Chromium1BeforeResourceLoad OnResourceResponse = Chromium1ResourceResponse OnGetResourceResponseFilter = Chromium1GetResourceResponseFilter diff --git a/demos/Lazarus_Windows/ResponseFilterBrowser/uResponseFilterBrowser.pas b/demos/Lazarus_Windows/ResponseFilterBrowser/uResponseFilterBrowser.pas index be9bdbc6..a5590095 100644 --- a/demos/Lazarus_Windows/ResponseFilterBrowser/uResponseFilterBrowser.pas +++ b/demos/Lazarus_Windows/ResponseFilterBrowser/uResponseFilterBrowser.pas @@ -37,7 +37,6 @@ type procedure Chromium1GetResourceResponseFilter(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; out Result: ICefResponseFilter); procedure Chromium1ResourceLoadComplete(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const response: ICefResponse; status: TCefUrlRequestStatus; receivedContentLength: Int64); 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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); procedure Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser); procedure Chromium1LoadStart(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; transitionType: Cardinal); procedure Chromium1BeforeResourceLoad(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; const callback: ICefCallback; out Result: TCefReturnValue); @@ -71,7 +70,6 @@ type procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage: TMessage); message CEF_DESTROY; procedure StreamCopyCompleteMsg(var aMessage : TMessage); message STREAM_COPY_COMPLETE; procedure Filter_OnFilter(Sender: TObject; data_in: Pointer; data_in_size: NativeUInt; var data_in_read: NativeUInt; data_out: Pointer; data_out_size : NativeUInt; var data_out_written: NativeUInt; var aResult : TCefResponseFilterStatus); @@ -109,12 +107,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. // TCustomResponseFilter.OnFilter event might be called multiple times // when the resource is too big. In that case the resource will be split into @@ -403,6 +397,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -514,12 +509,6 @@ begin end; end; -procedure TResponseFilterBrowserFrm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TResponseFilterBrowserFrm.Chromium1GetResourceResponseFilter( Sender : TObject; const browser : ICefBrowser; const frame : ICefFrame; @@ -668,11 +657,6 @@ begin GoBtn.Click; end; -procedure TResponseFilterBrowserFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - // This procedure handles the stream contents after it's fully downloaded procedure TResponseFilterBrowserFrm.StreamCopyCompleteMsg(var aMessage : TMessage); var diff --git a/demos/Lazarus_Windows/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.lfm b/demos/Lazarus_Windows/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.lfm index bff94441..56968ce9 100644 --- a/demos/Lazarus_Windows/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.lfm +++ b/demos/Lazarus_Windows/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.lfm @@ -14,7 +14,6 @@ object SchemeRegistrationBrowserFrm: TSchemeRegistrationBrowserFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.12.0' object AddressBarPnl: TPanel Left = 0 Height = 21 @@ -26,6 +25,7 @@ object SchemeRegistrationBrowserFrm: TSchemeRegistrationBrowserFrm ClientWidth = 980 DoubleBuffered = True Enabled = False + ParentBackground = False ParentDoubleBuffered = False TabOrder = 0 object GoBtn: TButton @@ -35,16 +35,16 @@ object SchemeRegistrationBrowserFrm: TSchemeRegistrationBrowserFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 0 + OnClick = GoBtnClick end object AddressCbx: TComboBox Left = 0 - Height = 21 + Height = 22 Top = 0 Width = 949 Align = alClient - ItemHeight = 13 + ItemHeight = 14 ItemIndex = 1 Items.Strings = ( 'https://www.google.com' @@ -68,7 +68,6 @@ object SchemeRegistrationBrowserFrm: TSchemeRegistrationBrowserFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 16 Top = 40 end diff --git a/demos/Lazarus_Windows/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.pas b/demos/Lazarus_Windows/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.pas index f81b77fc..c674564d 100644 --- a/demos/Lazarus_Windows/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.pas +++ b/demos/Lazarus_Windows/SchemeRegistrationBrowser/uSchemeRegistrationBrowser.pas @@ -34,42 +34,26 @@ type Chromium1: TChromium; AddressCbx: TComboBox; Timer1: TTimer; - procedure CEFSentinel1Close(Sender: TObject); - procedure Chromium1AfterCreated(Sender: TObject; - const browser: ICefBrowser); - 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 GoBtnClick(Sender: TObject); - procedure FormShow(Sender: TObject); procedure Timer1Timer(Sender: TObject); - procedure FormCreate(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); - private - { Private declarations } + + procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); + 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 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 // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -92,9 +76,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 GlobalCEFApp_OnRegCustomSchemes(const registrar: TCefSchemeRegistrarRef); begin @@ -113,11 +96,6 @@ begin PostMessage(Handle, CEF_AFTERCREATED, 0, 0); end; -procedure TSchemeRegistrationBrowserFrm.CEFSentinel1Close(Sender: TObject); -begin - -end; - procedure TSchemeRegistrationBrowserFrm.Chromium1BeforeClose( Sender: TObject; const browser: ICefBrowser); begin @@ -146,13 +124,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 TSchemeRegistrationBrowserFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TSchemeRegistrationBrowserFrm.Chromium1ContextMenuCommand( Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; @@ -194,6 +165,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -229,11 +201,6 @@ begin GoBtn.Click; end; -procedure TSchemeRegistrationBrowserFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TSchemeRegistrationBrowserFrm.WMMove(var aMessage : TWMMove); begin inherited; diff --git a/demos/Lazarus_Windows/SchemeRegistrationBrowser_subprocess/uSchemeRegistrationBrowser.lfm b/demos/Lazarus_Windows/SchemeRegistrationBrowser_subprocess/uSchemeRegistrationBrowser.lfm index bff94441..56968ce9 100644 --- a/demos/Lazarus_Windows/SchemeRegistrationBrowser_subprocess/uSchemeRegistrationBrowser.lfm +++ b/demos/Lazarus_Windows/SchemeRegistrationBrowser_subprocess/uSchemeRegistrationBrowser.lfm @@ -14,7 +14,6 @@ object SchemeRegistrationBrowserFrm: TSchemeRegistrationBrowserFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.12.0' object AddressBarPnl: TPanel Left = 0 Height = 21 @@ -26,6 +25,7 @@ object SchemeRegistrationBrowserFrm: TSchemeRegistrationBrowserFrm ClientWidth = 980 DoubleBuffered = True Enabled = False + ParentBackground = False ParentDoubleBuffered = False TabOrder = 0 object GoBtn: TButton @@ -35,16 +35,16 @@ object SchemeRegistrationBrowserFrm: TSchemeRegistrationBrowserFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 0 + OnClick = GoBtnClick end object AddressCbx: TComboBox Left = 0 - Height = 21 + Height = 22 Top = 0 Width = 949 Align = alClient - ItemHeight = 13 + ItemHeight = 14 ItemIndex = 1 Items.Strings = ( 'https://www.google.com' @@ -68,7 +68,6 @@ object SchemeRegistrationBrowserFrm: TSchemeRegistrationBrowserFrm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close Left = 16 Top = 40 end diff --git a/demos/Lazarus_Windows/SchemeRegistrationBrowser_subprocess/uSchemeRegistrationBrowser.pas b/demos/Lazarus_Windows/SchemeRegistrationBrowser_subprocess/uSchemeRegistrationBrowser.pas index 9324b345..171b0041 100644 --- a/demos/Lazarus_Windows/SchemeRegistrationBrowser_subprocess/uSchemeRegistrationBrowser.pas +++ b/demos/Lazarus_Windows/SchemeRegistrationBrowser_subprocess/uSchemeRegistrationBrowser.pas @@ -34,41 +34,26 @@ type Chromium1: TChromium; AddressCbx: TComboBox; Timer1: TTimer; - procedure Chromium1AfterCreated(Sender: TObject; - const browser: ICefBrowser); - 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 GoBtnClick(Sender: TObject); - procedure FormShow(Sender: TObject); + + procedure GoBtnClick(Sender: TObject); procedure Timer1Timer(Sender: TObject); - procedure FormCreate(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); - private - { Private declarations } + + procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); + 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 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 // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose FClosing : boolean; // Set to True in the CloseQuery event. procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -91,9 +76,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 GlobalCEFApp_OnRegCustomSchemes(const registrar: TCefSchemeRegistrarRef); begin @@ -143,13 +127,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 TSchemeRegistrationBrowserFrm.Chromium1Close(Sender: TObject; - const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TSchemeRegistrationBrowserFrm.Chromium1ContextMenuCommand( Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; @@ -191,6 +168,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -226,11 +204,6 @@ begin GoBtn.Click; end; -procedure TSchemeRegistrationBrowserFrm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - procedure TSchemeRegistrationBrowserFrm.WMMove(var aMessage : TWMMove); begin inherited; diff --git a/demos/Lazarus_Windows/SimpleBrowser/uSimpleBrowser.lfm b/demos/Lazarus_Windows/SimpleBrowser/uSimpleBrowser.lfm index 4e9fbb7e..91e7e389 100644 --- a/demos/Lazarus_Windows/SimpleBrowser/uSimpleBrowser.lfm +++ b/demos/Lazarus_Windows/SimpleBrowser/uSimpleBrowser.lfm @@ -14,7 +14,7 @@ object Form1: TForm1 OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.10.0' + LCLVersion = '3.4.0.0' object ChromiumWindow1: TChromiumWindow Left = 0 Height = 603 @@ -36,6 +36,7 @@ object Form1: TForm1 ClientHeight = 21 ClientWidth = 1038 Enabled = False + ParentBackground = False TabOrder = 1 object AddressEdt: TEdit Left = 0 @@ -53,8 +54,8 @@ object Form1: TForm1 Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object Timer1: TTimer diff --git a/demos/Lazarus_Windows/SimpleBrowser/uSimpleBrowser.pas b/demos/Lazarus_Windows/SimpleBrowser/uSimpleBrowser.pas index d7cd15c0..77f8471e 100644 --- a/demos/Lazarus_Windows/SimpleBrowser/uSimpleBrowser.pas +++ b/demos/Lazarus_Windows/SimpleBrowser/uSimpleBrowser.pas @@ -105,7 +105,8 @@ begin FClosing := False; // The browser will load the URL in AddressEdt initially. - ChromiumWindow1.ChromiumBrowser.DefaultURL := AddressEdt.Text; + ChromiumWindow1.ChromiumBrowser.DefaultURL := AddressEdt.Text; + ChromiumWindow1.ChromiumBrowser.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TForm1.FormShow(Sender: TObject); diff --git a/demos/Lazarus_Windows/SimpleBrowser2/uSimpleBrowser2.lfm b/demos/Lazarus_Windows/SimpleBrowser2/uSimpleBrowser2.lfm index f94471d2..c47ad302 100644 --- a/demos/Lazarus_Windows/SimpleBrowser2/uSimpleBrowser2.lfm +++ b/demos/Lazarus_Windows/SimpleBrowser2/uSimpleBrowser2.lfm @@ -10,7 +10,6 @@ object Form1: TForm1 OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object AddressPnl: TPanel Left = 0 Height = 23 @@ -38,8 +37,8 @@ object Form1: TForm1 Width = 35 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object CEFWindowParent1: TCEFWindowParent @@ -54,16 +53,15 @@ object Form1: TForm1 Enabled = False Interval = 500 OnTimer = Timer1Timer - left = 40 - top = 64 + Left = 40 + Top = 64 end object Chromium1: TChromium OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close OnOpenUrlFromTab = Chromium1OpenUrlFromTab - left = 40 - top = 136 + Left = 40 + Top = 136 end end diff --git a/demos/Lazarus_Windows/SimpleBrowser2/uSimpleBrowser2.pas b/demos/Lazarus_Windows/SimpleBrowser2/uSimpleBrowser2.pas index 1df3545e..bd6117b7 100644 --- a/demos/Lazarus_Windows/SimpleBrowser2/uSimpleBrowser2.pas +++ b/demos/Lazarus_Windows/SimpleBrowser2/uSimpleBrowser2.pas @@ -18,27 +18,19 @@ type AddressEdt: TEdit; AddressPnl: TPanel; Timer1: TTimer; - procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser - ); + + procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); procedure Chromium1BeforeClose(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 Chromium1Close(Sender: TObject; const browser: ICefBrowser; - var aAction : TCefCloseBrowserAction); - procedure Chromium1OpenUrlFromTab(Sender: TObject; - const browser: ICefBrowser; const frame: ICefFrame; - const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; - userGesture: Boolean; out Result: Boolean); + 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 Chromium1OpenUrlFromTab(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean; out Result: Boolean); + procedure FormCloseQuery(Sender: TObject; var CanClose: boolean); procedure FormCreate(Sender: TObject); procedure FormShow(Sender: TObject); + procedure GoBtnClick(Sender: TObject); procedure Timer1Timer(Sender: TObject); + protected // Variables to control when can we destroy the form safely FCanClose : boolean; // Set to True in TChromium.OnBeforeClose @@ -52,7 +44,6 @@ type procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP; procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEF_DESTROY; public end; @@ -80,9 +71,8 @@ implementation // 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. uses uCEFApplication; @@ -104,6 +94,7 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -142,12 +133,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 TForm1.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEF_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TForm1.FormShow(Sender: TObject); begin // You *MUST* call CreateBrowser to create and initialize the browser. @@ -207,10 +192,5 @@ begin GoBtn.Click; end; -procedure TForm1.BrowserDestroyMsg(var aMessage: TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_Windows/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.lfm b/demos/Lazarus_Windows/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.lfm index a2641dfd..87d26989 100644 --- a/demos/Lazarus_Windows/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.lfm +++ b/demos/Lazarus_Windows/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.lfm @@ -14,7 +14,7 @@ object SimpleExternalPumpBrowserFrm: TSimpleExternalPumpBrowserFrm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' + LCLVersion = '3.4.0.0' object AddressPnl: TPanel Left = 0 Height = 21 @@ -25,6 +25,7 @@ object SimpleExternalPumpBrowserFrm: TSimpleExternalPumpBrowserFrm ClientHeight = 21 ClientWidth = 1038 Enabled = False + ParentBackground = False TabOrder = 0 object GoBtn: TButton Left = 1007 @@ -33,8 +34,8 @@ object SimpleExternalPumpBrowserFrm: TSimpleExternalPumpBrowserFrm Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 0 + OnClick = GoBtnClick end object URLCbx: TComboBox Left = 0 @@ -82,7 +83,7 @@ object SimpleExternalPumpBrowserFrm: TSimpleExternalPumpBrowserFrm Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 56 - top = 88 + Left = 56 + Top = 88 end end diff --git a/demos/Lazarus_Windows/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.pas b/demos/Lazarus_Windows/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.pas index 1a83e8a5..d4f21912 100644 --- a/demos/Lazarus_Windows/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.pas +++ b/demos/Lazarus_Windows/SimpleExternalPumpBrowser/uSimpleExternalPumpBrowser.pas @@ -26,11 +26,10 @@ type URLCbx: TComboBox; ChromiumWindow1: TChromiumWindow; - procedure CEFSentinel1Close(Sender: TObject); procedure GoBtnClick(Sender: TObject); - procedure FormShow(Sender: TObject); procedure Timer1Timer(Sender: TObject); + procedure FormShow(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); @@ -94,6 +93,7 @@ procedure TSimpleExternalPumpBrowserFrm.FormCreate(Sender: TObject); begin FCanClose := False; FClosing := False; + ChromiumWindow1.ChromiumBrowser.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TSimpleExternalPumpBrowserFrm.FormCloseQuery(Sender: TObject; var CanClose: Boolean); @@ -161,11 +161,6 @@ begin ChromiumWindow1.LoadURL(URLCbx.Text); end; -procedure TSimpleExternalPumpBrowserFrm.CEFSentinel1Close(Sender: TObject); -begin - -end; - procedure TSimpleExternalPumpBrowserFrm.Timer1Timer(Sender: TObject); begin Timer1.Enabled := False; diff --git a/demos/Lazarus_Windows/SimpleOSRBrowser2/usimplelazosrbrowser2.lfm b/demos/Lazarus_Windows/SimpleOSRBrowser2/usimplelazosrbrowser2.lfm index 1cb3fc31..bdbd19e9 100644 --- a/demos/Lazarus_Windows/SimpleOSRBrowser2/usimplelazosrbrowser2.lfm +++ b/demos/Lazarus_Windows/SimpleOSRBrowser2/usimplelazosrbrowser2.lfm @@ -16,7 +16,6 @@ object Form1: TForm1 OnHide = FormHide OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.0.0.3' object NavControlPnl: TPanel Left = 0 Height = 21 @@ -31,11 +30,11 @@ object Form1: TForm1 TabOrder = 0 object ComboBox1: TComboBox Left = 0 - Height = 21 + Height = 22 Top = 0 Width = 892 Align = alClient - ItemHeight = 13 + ItemHeight = 14 Items.Strings = ( 'https://www.google.co' 'https://www.w3schools.com/tags/tryit.asp?filename=tryhtml5_select_form' diff --git a/demos/Lazarus_Windows/SubProcess/uSimpleBrowser.lfm b/demos/Lazarus_Windows/SubProcess/uSimpleBrowser.lfm index b1f48676..6bd9927f 100644 --- a/demos/Lazarus_Windows/SubProcess/uSimpleBrowser.lfm +++ b/demos/Lazarus_Windows/SubProcess/uSimpleBrowser.lfm @@ -11,9 +11,9 @@ object Form1: TForm1 Font.Height = -11 Font.Name = 'Tahoma' OnCloseQuery = FormCloseQuery + OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '2.0.6.0' object ChromiumWindow1: TChromiumWindow Left = 0 Height = 603 @@ -35,6 +35,7 @@ object Form1: TForm1 ClientHeight = 21 ClientWidth = 1038 Enabled = False + ParentBackground = False TabOrder = 1 object AddressEdt: TEdit Left = 0 @@ -52,15 +53,15 @@ object Form1: TForm1 Width = 31 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 1 + OnClick = GoBtnClick end end object Timer1: TTimer Enabled = False Interval = 300 OnTimer = Timer1Timer - left = 80 - top = 88 + Left = 80 + Top = 88 end end diff --git a/demos/Lazarus_Windows/SubProcess/uSimpleBrowser.pas b/demos/Lazarus_Windows/SubProcess/uSimpleBrowser.pas index 5597c0f5..248bfbca 100644 --- a/demos/Lazarus_Windows/SubProcess/uSimpleBrowser.pas +++ b/demos/Lazarus_Windows/SubProcess/uSimpleBrowser.pas @@ -25,14 +25,18 @@ type AddressEdt: TEdit; GoBtn: TButton; Timer1: TTimer; - procedure CEFSentinel1Close(Sender: TObject); + + procedure FormCreate(Sender: TObject); procedure GoBtnClick(Sender: TObject); - procedure FormShow(Sender: TObject); - procedure ChromiumWindow1AfterCreated(Sender: TObject); procedure Timer1Timer(Sender: TObject); + + procedure FormShow(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); + + procedure ChromiumWindow1AfterCreated(Sender: TObject); procedure ChromiumWindow1Close(Sender: TObject); procedure ChromiumWindow1BeforeClose(Sender: TObject); + private // You have to handle this two messages to call NotifyMoveOrResizeStarted or some page elements will be misaligned. procedure WMMove(var aMessage : TWMMove); message WM_MOVE; @@ -155,9 +159,9 @@ begin ChromiumWindow1.LoadURL(AddressEdt.Text); end; -procedure TForm1.CEFSentinel1Close(Sender: TObject); +procedure TForm1.FormCreate(Sender: TObject); begin - + ChromiumWindow1.ChromiumBrowser.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TForm1.Timer1Timer(Sender: TObject); diff --git a/demos/Lazarus_Windows/TabbedBrowser/uMainForm.lfm b/demos/Lazarus_Windows/TabbedBrowser/uMainForm.lfm index 42e04468..886e849b 100644 --- a/demos/Lazarus_Windows/TabbedBrowser/uMainForm.lfm +++ b/demos/Lazarus_Windows/TabbedBrowser/uMainForm.lfm @@ -14,7 +14,7 @@ object MainForm: TMainForm OnCreate = FormCreate OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.0.0.3' + LCLVersion = '3.4.0.0' object ButtonPnl: TPanel Left = 0 Height = 25 diff --git a/demos/Lazarus_Windows/TabbedBrowser/uMainForm.pas b/demos/Lazarus_Windows/TabbedBrowser/uMainForm.pas index 455e1225..977763ed 100644 --- a/demos/Lazarus_Windows/TabbedBrowser/uMainForm.pas +++ b/demos/Lazarus_Windows/TabbedBrowser/uMainForm.pas @@ -39,18 +39,19 @@ type URLCbx: TComboBox; AddTabBtn: TButton; RemoveTabBtn: TButton; - procedure AddTabBtnClick(Sender: TObject); - procedure CEFSentinel1Close(Sender: TObject); - procedure RemoveTabBtnClick(Sender: TObject); - procedure FormShow(Sender: TObject); - procedure PageControl1Change(Sender: TObject); + + procedure FormShow(Sender: TObject); + procedure FormCreate(Sender: TObject); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); + + procedure PageControl1Change(Sender: TObject); + procedure AddTabBtnClick(Sender: TObject); + procedure RemoveTabBtnClick(Sender: TObject); procedure BackBtnClick(Sender: TObject); procedure ForwardBtnClick(Sender: TObject); procedure ReloadBtnClick(Sender: TObject); procedure StopBtnClick(Sender: TObject); procedure GoBtnClick(Sender: TObject); - procedure FormCreate(Sender: TObject); protected FClosingTab : boolean; @@ -153,15 +154,11 @@ begin TempChromium.OnClose := Chromium_OnClose; TempChromium.OnBeforeClose := Chromium_OnBeforeClose; TempChromium.OnBeforePopup := Chromium_OnBeforePopup; + TempChromium.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; TempChromium.CreateBrowser(TempWindowParent, ''); end; -procedure TMainForm.CEFSentinel1Close(Sender: TObject); -begin - -end; - procedure TMainForm.RemoveTabBtnClick(Sender: TObject); var TempChromium : TChromium; diff --git a/demos/Lazarus_Windows/TabbedBrowser2/TabbedBrowser2.lpi b/demos/Lazarus_Windows/TabbedBrowser2/TabbedBrowser2.lpi index ed38edf1..551d3add 100644 --- a/demos/Lazarus_Windows/TabbedBrowser2/TabbedBrowser2.lpi +++ b/demos/Lazarus_Windows/TabbedBrowser2/TabbedBrowser2.lpi @@ -50,7 +50,9 @@ + + diff --git a/demos/Lazarus_Windows/TabbedBrowser2/uBrowserFrame.lfm b/demos/Lazarus_Windows/TabbedBrowser2/uBrowserFrame.lfm index ccf7dd8b..7385ae93 100644 --- a/demos/Lazarus_Windows/TabbedBrowser2/uBrowserFrame.lfm +++ b/demos/Lazarus_Windows/TabbedBrowser2/uBrowserFrame.lfm @@ -1,82 +1,84 @@ object BrowserFrame: TBrowserFrame Left = 0 + Height = 670 Top = 0 Width = 932 - Height = 670 + ClientHeight = 670 + ClientWidth = 932 TabOrder = 0 object NavControlPnl: TPanel Left = 0 + Height = 35 Top = 0 Width = 932 - Height = 35 Align = alTop BevelOuter = bvNone + ClientHeight = 35 + ClientWidth = 932 Enabled = False TabOrder = 0 object NavButtonPnl: TPanel Left = 0 + Height = 35 Top = 0 Width = 123 - Height = 35 Align = alLeft BevelOuter = bvNone + ClientHeight = 35 + ClientWidth = 123 TabOrder = 0 object BackBtn: TButton Left = 3 + Height = 25 Top = 3 Width = 25 - Height = 25 Caption = '3' - Font.Charset = SYMBOL_CHARSET + Font.CharSet = SYMBOL_CHARSET Font.Color = clWindowText Font.Height = -19 Font.Name = 'Webdings' - Font.Style = [] ParentFont = False TabOrder = 0 OnClick = BackBtnClick end object ForwardBtn: TButton Left = 33 + Height = 25 Top = 3 Width = 25 - Height = 25 Caption = '4' - Font.Charset = SYMBOL_CHARSET + Font.CharSet = SYMBOL_CHARSET Font.Color = clWindowText Font.Height = -19 Font.Name = 'Webdings' - Font.Style = [] ParentFont = False TabOrder = 1 OnClick = ForwardBtnClick end object ReloadBtn: TButton Left = 62 + Height = 25 Top = 3 Width = 25 - Height = 25 Caption = 'q' - Font.Charset = SYMBOL_CHARSET + Font.CharSet = SYMBOL_CHARSET Font.Color = clWindowText Font.Height = -19 Font.Name = 'Webdings' - Font.Style = [] ParentFont = False TabOrder = 2 OnClick = ReloadBtnClick end object StopBtn: TButton Left = 91 + Height = 25 Top = 3 Width = 25 - Height = 25 Caption = '=' - Font.Charset = SYMBOL_CHARSET + Font.CharSet = SYMBOL_CHARSET Font.Color = clWindowText Font.Height = -19 Font.Name = 'Webdings' - Font.Style = [] ParentFont = False TabOrder = 3 OnClick = StopBtnClick @@ -84,32 +86,29 @@ object BrowserFrame: TBrowserFrame end object URLEditPnl: TPanel Left = 121 + Height = 35 Top = 0 Width = 774 - Height = 35 Align = alClient BevelOuter = bvNone + ClientHeight = 35 + ClientWidth = 774 TabOrder = 1 object URLCbx: TComboBox Left = 0 + Height = 21 Top = 5 Width = 770 - Height = 21 - Anchors = [akLeft, akTop, akRight] + Anchors = [akTop, akLeft, akRight] + ItemHeight = 0 ItemIndex = 0 - TabOrder = 0 - Text = 'https://www.google.com' Items.Strings = ( 'https://www.google.com' - - 'https://www.whatismybrowser.com/detect/what-http-headers-is-my-b' + - 'rowser-sending' + 'https://www.whatismybrowser.com/detect/what-http-headers-is-my-browser-sending' 'https://www.w3schools.com/js/tryit.asp?filename=tryjs_win_close' 'https://www.w3schools.com/js/tryit.asp?filename=tryjs_alert' 'https://www.w3schools.com/js/tryit.asp?filename=tryjs_loc_assign' - - 'https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_styl' + - 'e_backgroundcolor' + 'https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_style_backgroundcolor' 'https://www.w3schools.com/html/html5_video.asp' 'http://www.adobe.com/software/flash/about/' 'http://isflashinstalled.com/' @@ -117,9 +116,7 @@ object BrowserFrame: TBrowserFrame 'https://www.ultrasounds.com/' 'https://www.whatismybrowser.com/detect/is-flash-installed' 'http://html5test.com/' - - 'https://webrtc.github.io/samples/src/content/devices/input-outpu' + - 't/' + 'https://webrtc.github.io/samples/src/content/devices/input-output/' 'https://test.webrtc.org/' 'https://www.w3schools.com/' 'http://webglsamples.org/' @@ -127,15 +124,9 @@ object BrowserFrame: TBrowserFrame 'https://www.briskbard.com' 'https://www.youtube.com' 'https://html5demos.com/drag/' - - 'https://developers.google.com/maps/documentation/javascript/exam' + - 'ples/streetview-embed?hl=fr' - - 'https://www.w3schools.com/Tags/tryit.asp?filename=tryhtml_iframe' + - '_name' - - 'http://www-db.deis.unibo.it/courses/TW/DOCS/w3schools/html/tryit' + - '.asp-filename=tryhtml5_html_manifest.html' + 'https://developers.google.com/maps/documentation/javascript/examples/streetview-embed?hl=fr' + 'https://www.w3schools.com/Tags/tryit.asp?filename=tryhtml_iframe_name' + 'http://www-db.deis.unibo.it/courses/TW/DOCS/w3schools/html/tryit.asp-filename=tryhtml5_html_manifest.html' 'https://www.browserleaks.com/webrtc' 'https://frames-per-second.appspot.com/' 'chrome://version/' @@ -155,24 +146,29 @@ object BrowserFrame: TBrowserFrame 'chrome://gpucrash' 'chrome://gpuhang' 'chrome://extensions-support' - 'chrome://process-internals') + 'chrome://process-internals' + ) + TabOrder = 0 + Text = 'https://www.google.com' end end object ConfigPnl: TPanel Left = 895 + Height = 35 Top = 0 Width = 35 - Height = 35 Align = alRight BevelOuter = bvNone + ClientHeight = 35 + ClientWidth = 35 TabOrder = 2 object GoBtn: TButton Left = 3 + Height = 25 Top = 3 Width = 25 - Height = 25 Caption = '►' - Font.Charset = ANSI_CHARSET + Font.CharSet = ANSI_CHARSET Font.Color = clWindowText Font.Height = -17 Font.Name = 'Arial' @@ -185,10 +181,10 @@ object BrowserFrame: TBrowserFrame end object StatusBar1: TStatusBar Left = 0 + Height = 19 Top = 651 Width = 932 - Height = 19 - Panels = < + Panels = < item Width = 500 end> @@ -196,9 +192,9 @@ object BrowserFrame: TBrowserFrame end object CEFWindowParent1: TCEFWindowParent Left = 0 + Height = 616 Top = 35 Width = 932 - Height = 616 Align = alClient TabOrder = 2 end diff --git a/demos/Lazarus_Windows/TabbedBrowser2/uBrowserFrame.pas b/demos/Lazarus_Windows/TabbedBrowser2/uBrowserFrame.pas index 737cfac2..7fd54fd5 100644 --- a/demos/Lazarus_Windows/TabbedBrowser2/uBrowserFrame.pas +++ b/demos/Lazarus_Windows/TabbedBrowser2/uBrowserFrame.pas @@ -274,7 +274,8 @@ end; procedure TBrowserFrame.CreateBrowser; begin - Chromium1.DefaultURL := FHomepage; + Chromium1.DefaultURL := FHomepage; + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; Chromium1.CreateBrowser(CEFWindowParent1); end; @@ -285,10 +286,6 @@ begin FClosing := True; NavControlPnl.Enabled := False; Chromium1.CloseBrowser(True); - - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; end; end; diff --git a/demos/Lazarus_Windows/TabbedBrowser2/uChildForm.lfm b/demos/Lazarus_Windows/TabbedBrowser2/uChildForm.lfm index f5150d1d..2f9c73a8 100644 --- a/demos/Lazarus_Windows/TabbedBrowser2/uChildForm.lfm +++ b/demos/Lazarus_Windows/TabbedBrowser2/uChildForm.lfm @@ -15,7 +15,7 @@ object ChildForm: TChildForm OnCreate = FormCreate OnDestroy = FormDestroy Position = poScreenCenter - LCLVersion = '3.2.0.0' + LCLVersion = '3.4.0.0' object CEFWindowParent1: TCEFWindowParent Left = 0 Height = 256 diff --git a/demos/Lazarus_Windows/TabbedBrowser2/uChildForm.pas b/demos/Lazarus_Windows/TabbedBrowser2/uChildForm.pas index 61ef613e..40cef7a1 100644 --- a/demos/Lazarus_Windows/TabbedBrowser2/uChildForm.pas +++ b/demos/Lazarus_Windows/TabbedBrowser2/uChildForm.pas @@ -237,10 +237,6 @@ begin FClosing := True; Visible := False; Chromium1.CloseBrowser(True); - - // Workaround for the missing TChormium.OnClose event when "Chrome runtime" is enabled. - if GlobalCEFApp.ChromeRuntime then - CEFWindowParent1.Free; end; end else @@ -253,6 +249,8 @@ begin FBrowserWasCreated := False; FCanClose := False; FClosing := False; + + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; end; procedure TChildForm.FormDestroy(Sender: TObject); diff --git a/demos/Lazarus_Windows/TabbedBrowser2/uMainForm.lfm b/demos/Lazarus_Windows/TabbedBrowser2/uMainForm.lfm index 67226b76..9cade86f 100644 --- a/demos/Lazarus_Windows/TabbedBrowser2/uMainForm.lfm +++ b/demos/Lazarus_Windows/TabbedBrowser2/uMainForm.lfm @@ -15,7 +15,7 @@ object MainForm: TMainForm OnDestroy = FormDestroy OnShow = FormShow Position = poScreenCenter - LCLVersion = '3.2.0.0' + LCLVersion = '3.4.0.0' object BrowserPageCtrl: TPageControl Left = 32 Height = 703 diff --git a/demos/Lazarus_Windows/TabbedBrowser2/uMainForm.pas b/demos/Lazarus_Windows/TabbedBrowser2/uMainForm.pas index 458715ed..945de746 100644 --- a/demos/Lazarus_Windows/TabbedBrowser2/uMainForm.pas +++ b/demos/Lazarus_Windows/TabbedBrowser2/uMainForm.pas @@ -160,7 +160,6 @@ begin GlobalCEFApp.EnablePrintPreview := True; GlobalCEFApp.OnContextInitialized := GlobalCEFApp_OnContextInitialized; GlobalCEFApp.SetCurrentDir := True; - GlobalCEFApp.ChromeRuntime := True; end; procedure TMainForm.EnableButtonPnl; @@ -498,61 +497,55 @@ function TMainForm.DoOnBeforePopup(var windowInfo : TCefWindowInfo; const popupFeatures : TCefPopupFeatures; targetDisposition : TCefWindowOpenDisposition) : boolean; begin - if GlobalCEFApp.ChromeRuntime then - Result := False - else - try - FCriticalSection.Acquire; + try + FCriticalSection.Acquire; - case targetDisposition of - CEF_WOD_NEW_FOREGROUND_TAB, - CEF_WOD_NEW_BACKGROUND_TAB : - Result := (FHiddenTab <> nil) and - FHiddenTab.CreateClientHandler(windowInfo, client, targetFrameName, popupFeatures) and - PostMessage(Handle, CEF_CREATENEXTTAB, 0, ord(False)); + case targetDisposition of + CEF_WOD_NEW_FOREGROUND_TAB, + CEF_WOD_NEW_BACKGROUND_TAB : + Result := (FHiddenTab <> nil) and + FHiddenTab.CreateClientHandler(windowInfo, client, targetFrameName, popupFeatures) and + PostMessage(Handle, CEF_CREATENEXTTAB, 0, ord(False)); - CEF_WOD_NEW_WINDOW, - CEF_WOD_NEW_POPUP : - Result := (FChildForm <> nil) and - FChildForm.CreateClientHandler(windowInfo, client, targetFrameName, popupFeatures) and - PostMessage(Handle, CEF_CREATENEXTCHILD, 0, ord(False)); + CEF_WOD_NEW_WINDOW, + CEF_WOD_NEW_POPUP : + Result := (FChildForm <> nil) and + FChildForm.CreateClientHandler(windowInfo, client, targetFrameName, popupFeatures) and + PostMessage(Handle, CEF_CREATENEXTCHILD, 0, ord(False)); - else Result := False; - end; - finally - FCriticalSection.Release; + else Result := False; end; + finally + FCriticalSection.Release; + end; end; function TMainForm.DoOpenUrlFromTab(const targetUrl : string; targetDisposition : TCefWindowOpenDisposition) : boolean; begin - if GlobalCEFApp.ChromeRuntime then - Result := True - else - try - FCriticalSection.Acquire; + try + FCriticalSection.Acquire; - case targetDisposition of - CEF_WOD_NEW_FOREGROUND_TAB, - CEF_WOD_NEW_BACKGROUND_TAB : - begin - FPendingURL := targetUrl; - Result := PostMessage(Handle, CEF_CREATENEXTTAB, 0, ord(True)); - end; + case targetDisposition of + CEF_WOD_NEW_FOREGROUND_TAB, + CEF_WOD_NEW_BACKGROUND_TAB : + begin + FPendingURL := targetUrl; + Result := PostMessage(Handle, CEF_CREATENEXTTAB, 0, ord(True)); + end; - CEF_WOD_NEW_WINDOW, - CEF_WOD_NEW_POPUP : - begin - FPendingURL := targetUrl; - Result := PostMessage(Handle, CEF_CREATENEXTCHILD, 0, ord(True)); - end + CEF_WOD_NEW_WINDOW, + CEF_WOD_NEW_POPUP : + begin + FPendingURL := targetUrl; + Result := PostMessage(Handle, CEF_CREATENEXTCHILD, 0, ord(True)); + end - else Result := False; - end; - finally - FCriticalSection.Release; + else Result := False; end; + finally + FCriticalSection.Release; + end; end; end. diff --git a/demos/Lazarus_Windows/TinyBrowser/uTinyBrowser.pas b/demos/Lazarus_Windows/TinyBrowser/uTinyBrowser.pas index 8899a3ee..a653eddb 100644 --- a/demos/Lazarus_Windows/TinyBrowser/uTinyBrowser.pas +++ b/demos/Lazarus_Windows/TinyBrowser/uTinyBrowser.pas @@ -236,9 +236,8 @@ begin GlobalCEFApp := TCefApplication.Create; GlobalCEFApp.MultiThreadedMessageLoop := False; GlobalCEFApp.ExternalMessagePump := False; - GlobalCEFApp.ChromeRuntime := True; // Enable this line to test the new "ChromeRuntime" mode. It's in experimental state. GlobalCEFApp.OnContextInitialized := GlobalCEFApp_OnContextInitialized; - GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; // This event is only used in "ChromeRuntime" mode + GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; GlobalCEFApp.SetCurrentDir := True; end; diff --git a/demos/Lazarus_Windows/TinyBrowser2/uTinyBrowser2.pas b/demos/Lazarus_Windows/TinyBrowser2/uTinyBrowser2.pas index 5098f608..d2f611c2 100644 --- a/demos/Lazarus_Windows/TinyBrowser2/uTinyBrowser2.pas +++ b/demos/Lazarus_Windows/TinyBrowser2/uTinyBrowser2.pas @@ -68,12 +68,11 @@ begin GlobalCEFApp := TCefApplication.Create; GlobalCEFApp.MultiThreadedMessageLoop := False; GlobalCEFApp.ExternalMessagePump := False; - GlobalCEFApp.ChromeRuntime := True; // Enable this line to enable the "ChromeRuntime" mode. It's in experimental state. GlobalCEFApp.DisablePopupBlocking := True; GlobalCEFApp.cache := 'cache'; GlobalCEFApp.SetCurrentDir := True; GlobalCEFApp.OnContextInitialized := GlobalCEFApp_OnContextInitialized; - GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; // This event is only used in "ChromeRuntime" mode + GlobalCEFApp.OnGetDefaultClient := GlobalCEFApp_OnGetDefaultClient; end; procedure DestroyTinyBrowser; diff --git a/demos/Lazarus_Windows/ToolBoxBrowser/uChildForm.lfm b/demos/Lazarus_Windows/ToolBoxBrowser/uChildForm.lfm index d2531f6c..932cd90b 100644 --- a/demos/Lazarus_Windows/ToolBoxBrowser/uChildForm.lfm +++ b/demos/Lazarus_Windows/ToolBoxBrowser/uChildForm.lfm @@ -18,7 +18,6 @@ object ChildForm: TChildForm OnShow = FormShow Position = poScreenCenter ShowInTaskBar = stAlways - LCLVersion = '2.0.4.0' object CEFWindowParent1: TCEFWindowParent Left = 0 Height = 394 @@ -33,8 +32,7 @@ object ChildForm: TChildForm OnBeforePopup = Chromium1BeforePopup OnAfterCreated = Chromium1AfterCreated OnBeforeClose = Chromium1BeforeClose - OnClose = Chromium1Close - left = 184 - top = 128 + Left = 184 + Top = 128 end end diff --git a/demos/Lazarus_Windows/ToolBoxBrowser/uChildForm.pas b/demos/Lazarus_Windows/ToolBoxBrowser/uChildForm.pas index 54153dea..a801a1d5 100644 --- a/demos/Lazarus_Windows/ToolBoxBrowser/uChildForm.pas +++ b/demos/Lazarus_Windows/ToolBoxBrowser/uChildForm.pas @@ -22,31 +22,18 @@ type TChildForm = class(TForm) CEFWindowParent1: TCEFWindowParent; Chromium1: TChromium; + procedure FormShow(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean); procedure FormDestroy(Sender: TObject); - procedure Chromium1AfterCreated(Sender: TObject; - const browser: ICefBrowser); - procedure Chromium1Close(Sender: TObject; const browser: ICefBrowser; - var aAction : TCefCloseBrowserAction); - procedure Chromium1PreKeyEvent(Sender: TObject; - const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; - out isKeyboardShortcut, Result: Boolean); - procedure Chromium1KeyEvent(Sender: TObject; - const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; - out Result: Boolean); - procedure Chromium1BeforeClose(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 Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); + procedure Chromium1PreKeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out isKeyboardShortcut, Result: Boolean); + procedure Chromium1KeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out Result: Boolean); + procedure Chromium1BeforeClose(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); private // Variables to control when can we destroy the form safely @@ -56,7 +43,6 @@ type protected procedure BrowserCreatedMsg(var aMessage : TMessage); message CEFBROWSER_CREATED; - procedure BrowserDestroyMsg(var aMessage : TMessage); message CEFBROWSER_DESTROY; procedure WMMove(var aMessage : TWMMove); message WM_MOVE; procedure WMMoving(var aMessage : TMessage); message WM_MOVING; procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP; @@ -79,9 +65,8 @@ uses // Destruction steps // ================= -// 1. FormCloseQuery calls TChromium.CloseBrowser -// 2. TChromium.OnClose sends a CEFBROWSER_DESTROY message to destroy CEFWindowParent1 in the main thread. -// 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 TChildForm.Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser); begin @@ -108,12 +93,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 TChildForm.Chromium1Close(Sender: TObject; const browser: ICefBrowser; var aAction : TCefCloseBrowserAction); -begin - PostMessage(Handle, CEFBROWSER_DESTROY, 0, 0); - aAction := cbaDelay; -end; - procedure TChildForm.Chromium1KeyEvent(Sender: TObject; const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out Result: Boolean); @@ -194,6 +173,7 @@ begin begin FClosing := True; Chromium1.CloseBrowser(True); + CEFWindowParent1.Free; end; end; @@ -249,9 +229,4 @@ begin Chromium1.LoadURL(FHomepage); end; -procedure TChildForm.BrowserDestroyMsg(var aMessage : TMessage); -begin - CEFWindowParent1.Free; -end; - end. diff --git a/demos/Lazarus_any_OS/BrowserWindow/uBrowserWindow.lfm b/demos/Lazarus_any_OS/BrowserWindow/uBrowserWindow.lfm index c06ca3bc..da48ff41 100644 --- a/demos/Lazarus_any_OS/BrowserWindow/uBrowserWindow.lfm +++ b/demos/Lazarus_any_OS/BrowserWindow/uBrowserWindow.lfm @@ -9,7 +9,7 @@ object Form1: TForm1 OnCloseQuery = FormCloseQuery OnCreate = FormCreate Position = poScreenCenter - LCLVersion = '2.2.6.0' + LCLVersion = '3.4.0.0' object AddressPnl: TPanel Left = 0 Height = 23 @@ -27,16 +27,16 @@ object Form1: TForm1 Width = 35 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 0 + OnClick = GoBtnClick end object AddressEdt: TComboBox Left = 0 - Height = 24 + Height = 23 Top = 0 Width = 932 Align = alClient - ItemHeight = 16 + ItemHeight = 15 ItemIndex = 0 Items.Strings = ( 'https://www.google.com' diff --git a/demos/Lazarus_any_OS/BrowserWindow/uBrowserWindow.pas b/demos/Lazarus_any_OS/BrowserWindow/uBrowserWindow.pas index 32236b05..a3d2207e 100644 --- a/demos/Lazarus_any_OS/BrowserWindow/uBrowserWindow.pas +++ b/demos/Lazarus_any_OS/BrowserWindow/uBrowserWindow.pas @@ -139,6 +139,7 @@ end; procedure TForm1.FormCreate(Sender: TObject); begin + BrowserWindow1.Chromium.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; BrowserWindow1.LoadURL(UTF8Decode(AddressEdt.Text)); end; diff --git a/demos/Lazarus_any_OS/BrowserWindowDom/uBrowserWindowDom.pas b/demos/Lazarus_any_OS/BrowserWindowDom/uBrowserWindowDom.pas index b5caaba8..7dfb4e07 100644 --- a/demos/Lazarus_any_OS/BrowserWindowDom/uBrowserWindowDom.pas +++ b/demos/Lazarus_any_OS/BrowserWindowDom/uBrowserWindowDom.pas @@ -193,7 +193,7 @@ begin BrowserWindow1.Chromium.OnBeforeContextMenu := @DoBeforeContextMenu; BrowserWindow1.Chromium.OnContextMenuCommand := @DoContextMenuCmd; BrowserWindow1.Chromium.OnProcessMessageReceived := @DoProcessMessageReceived; - + BrowserWindow1.Chromium.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; BrowserWindow1.LoadURL(UTF8Decode(AddressEdt.Text)); end; diff --git a/demos/Lazarus_any_OS/BrowserWindowEx/uBrowserWindowEx.lfm b/demos/Lazarus_any_OS/BrowserWindowEx/uBrowserWindowEx.lfm index 19044f03..b0cf3b6e 100644 --- a/demos/Lazarus_any_OS/BrowserWindowEx/uBrowserWindowEx.lfm +++ b/demos/Lazarus_any_OS/BrowserWindowEx/uBrowserWindowEx.lfm @@ -9,7 +9,7 @@ object Form1: TForm1 OnCloseQuery = FormCloseQuery OnCreate = FormCreate Position = poScreenCenter - LCLVersion = '2.2.6.0' + LCLVersion = '3.4.0.0' object PanelLeft: TPanel Left = 0 Height = 556 @@ -37,16 +37,16 @@ object Form1: TForm1 Width = 35 Align = alRight Caption = 'Go' - OnClick = GoBtnLeftClick TabOrder = 0 + OnClick = GoBtnLeftClick end object AddressEdtLeft: TComboBox Left = 0 - Height = 24 + Height = 23 Top = 0 Width = 424 Align = alClient - ItemHeight = 16 + ItemHeight = 15 ItemIndex = 0 Items.Strings = ( 'https://www.google.com' @@ -127,16 +127,16 @@ object Form1: TForm1 Width = 35 Align = alRight Caption = 'Go' - OnClick = GoBtnRightClick TabOrder = 0 + OnClick = GoBtnRightClick end object AddressEdtRight: TComboBox Left = 0 - Height = 24 + Height = 23 Top = 0 Width = 418 Align = alClient - ItemHeight = 16 + ItemHeight = 15 ItemIndex = 0 Items.Strings = ( 'https://www.google.com' @@ -201,31 +201,31 @@ object Form1: TForm1 ClientWidth = 967 TabOrder = 3 object BtnCloseApp: TButton - Left = 5 - Height = 26 - Top = 3 + Left = 6 + Height = 25 + Top = 4 Width = 80 Caption = 'Close App' - OnClick = BtnCloseAppClick TabOrder = 0 + OnClick = BtnCloseAppClick end object BtnCloseForm: TButton - Left = 95 - Height = 26 - Top = 3 + Left = 96 + Height = 25 + Top = 4 Width = 86 Caption = 'Close Form' - OnClick = BtnCloseFormClick TabOrder = 1 + OnClick = BtnCloseFormClick end object BtnModal: TButton - Left = 191 - Height = 26 - Top = 3 - Width = 93 + Left = 192 + Height = 25 + Top = 4 + Width = 92 Caption = 'Show Modal' - OnClick = BtnModalClick TabOrder = 2 + OnClick = BtnModalClick end end object ImageList1: TImageList diff --git a/demos/Lazarus_any_OS/BrowserWindowEx/uBrowserWindowEx.pas b/demos/Lazarus_any_OS/BrowserWindowEx/uBrowserWindowEx.pas index 6bee50bc..77d36a7d 100644 --- a/demos/Lazarus_any_OS/BrowserWindowEx/uBrowserWindowEx.pas +++ b/demos/Lazarus_any_OS/BrowserWindowEx/uBrowserWindowEx.pas @@ -120,7 +120,7 @@ begin FBrowserLeft.OnBrowserClosed := @LeftBrowserClosed; FBrowserLeft.Align := alClient; FBrowserLeft.Parent := PanelLeft; - + FBrowserLeft.Chromium.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; OpenBtnLeft.Enabled := False; GoBtnLeftClick(nil); end; @@ -163,6 +163,7 @@ begin {$ENDIF} FBrowserRight.Align := alClient; FBrowserRight.Parent := PanelRight; + FBrowserRight.Chromium.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; OpenBtnRight.Enabled := False; GoBtnRightClick(nil); diff --git a/demos/Lazarus_any_OS/ExternalPumpBrowser/uExternalPumpBrowser.lfm b/demos/Lazarus_any_OS/ExternalPumpBrowser/uExternalPumpBrowser.lfm index 96b97a0f..1d9e304c 100644 --- a/demos/Lazarus_any_OS/ExternalPumpBrowser/uExternalPumpBrowser.lfm +++ b/demos/Lazarus_any_OS/ExternalPumpBrowser/uExternalPumpBrowser.lfm @@ -10,7 +10,7 @@ object Form1: TForm1 OnCloseQuery = FormCloseQuery OnCreate = FormCreate Position = poScreenCenter - LCLVersion = '2.2.6.0' + LCLVersion = '3.4.0.0' object AddressPnl: TPanel Left = 0 Height = 23 @@ -29,16 +29,16 @@ object Form1: TForm1 Width = 35 Align = alRight Caption = 'Go' - OnClick = GoBtnClick TabOrder = 0 + OnClick = GoBtnClick end object AddressEdt: TComboBox Left = 0 - Height = 24 + Height = 23 Top = 0 Width = 932 Align = alClient - ItemHeight = 16 + ItemHeight = 15 ItemIndex = 0 Items.Strings = ( 'https://www.google.com' diff --git a/demos/Lazarus_any_OS/ExternalPumpBrowser/uExternalPumpBrowser.pas b/demos/Lazarus_any_OS/ExternalPumpBrowser/uExternalPumpBrowser.pas index bc372a7c..b6b3b395 100644 --- a/demos/Lazarus_any_OS/ExternalPumpBrowser/uExternalPumpBrowser.pas +++ b/demos/Lazarus_any_OS/ExternalPumpBrowser/uExternalPumpBrowser.pas @@ -104,7 +104,7 @@ procedure TForm1.FormCreate(Sender: TObject); begin FCanClose := False; FClosing := False; - + Chromium1.RuntimeStyle := CEF_RUNTIME_STYLE_ALLOY; Chromium1.DefaultURL := UTF8Decode(AddressEdt.Text); end; diff --git a/docs/cef4delphi.chm b/docs/cef4delphi.chm index 4d8e2c31..dcfd609b 100644 Binary files a/docs/cef4delphi.chm and b/docs/cef4delphi.chm differ diff --git a/docs/html/AllClasses.html b/docs/html/AllClasses.html index 9cb25c1f..66ab3c20 100644 --- a/docs/html/AllClasses.html +++ b/docs/html/AllClasses.html @@ -241,16 +241,6 @@

Implement this interface to receive notification when tracing has completed. The functions of this interface will be called on the browser process UI thread.

-ICefExtension -uCEFInterfaces -

Object representing an extension. Methods may be called on any thread unless otherwise indicated.

- - -ICefExtensionHandler -uCEFInterfaces -

Implement this interface to handle events related to browser extensions. The functions of this interface will be called on the UI thread. See ICefRequestContext.LoadExtension for information about extension loading.

- - ICefFileDialogCallback uCEFInterfaces

Callback interface for asynchronous continuation of file dialog requests.

@@ -299,400 +289,400 @@

The functions of this interface will be called on the UI thread unless otherwise indicated.

-ICefGetExtensionResourceCallback -uCEFInterfaces -

Callback interface used for asynchronous continuation of ICefExtensionHandler.GetExtensionResource.

- - ICefImage uCEFInterfaces

Container for a single image represented at different scale factors. All image representations should be the same size in density independent pixel (DIP) units. For example, if the image at scale factor 1.0 is 100x100 pixels then the image at scale factor 2.0 should be 200x200 pixels – both images will display with a DIP size of 100x100 units. The functions of this interface can be called on any browser process thread.

- + ICefJsDialogCallback uCEFInterfaces

Callback interface used for asynchronous continuation of JavaScript dialog requests.

- + ICefJsDialogHandler uCEFInterfaces

Implement this interface to handle events related to JavaScript dialogs. The functions of this interface will be called on the UI thread.

- + ICefKeyboardHandler uCEFInterfaces

Implement this interface to handle events related to keyboard input. The functions of this interface will be called on the UI thread.

- + ICefLabelButton uCEFInterfaces

LabelButton is a button with optional text and/or icon. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefLayout uCEFInterfaces

A Layout handles the sizing of the children of a Panel according to implementation-specific heuristics. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefLifeSpanHandler uCEFInterfaces

Implement this interface to handle events related to browser life span. The functions of this interface will be called on the UI thread unless otherwise indicated.

- + ICefListValue uCEFInterfaces

Interface representing a list value. Can be used on any process and thread.

- + ICefLoadHandler uCEFInterfaces

Implement this interface to handle events related to browser load status. The functions of this interface will be called on the browser process UI thread or render process main thread (TID_RENDERER).

- + ICefMediaAccessCallback uCEFInterfaces

Callback interface used for asynchronous continuation of media access permission requests.

- + ICefMediaAccessHandler uCEFInterfaces

Implement this interface to handle events related to media access permission requests. The functions of this interface will be called on the browser process UI thread.

- + ICefMediaObserver uCEFInterfaces

Implemented by the client to observe MediaRouter events and registered via ICefMediaRouter.AddObserver. The functions of this interface will be called on the browser process UI thread.

- + ICefMediaRoute uCEFInterfaces

Represents the route between a media source and sink. Instances of this object are created via ICefMediaRouter.CreateRoute and retrieved via ICefMediaObserver.OnRoutes. Contains the status and metadata of a routing operation. The functions of this interface may be called on any browser process thread unless otherwise indicated.

- + ICefMediaRouteCreateCallback uCEFInterfaces

Callback interface for ICefMediaRouter.CreateRoute. The functions of this interface will be called on the browser process UI thread.

- + ICefMediaRouter uCEFInterfaces

Supports discovery of and communication with media devices on the local network via the Cast and DIAL protocols. The functions of this interface may be called on any browser process thread unless otherwise indicated.

- + ICefMediaSink uCEFInterfaces

Represents a sink to which media can be routed. Instances of this object are retrieved via ICefMediaObserver.OnSinks. The functions of this interface may be called on any browser process thread unless otherwise indicated.

- + ICefMediaSinkDeviceInfoCallback uCEFInterfaces

Callback interface for ICefMediaSink.GetDeviceInfo. The functions of this interface will be called on the browser process UI thread.

- + ICefMediaSource uCEFInterfaces

Represents a source from which media can be routed. Instances of this object are retrieved via ICefMediaRouter.GetSource. The functions of this interface may be called on any browser process thread unless otherwise indicated.

- + ICefMenuButton uCEFInterfaces

MenuButton is a button with optional text, icon and/or menu marker that shows a menu when clicked with the left mouse button. All size and position values are in density independent pixels (DIP) unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefMenuButtonDelegate uCEFInterfaces

Implement this interface to handle MenuButton events. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + ICefMenuButtonDelegateEvents uCEFInterfaces

Custom interface used to handle all the ICefMenuButtonDelegate events.

- + ICefMenuButtonPressedLock uCEFInterfaces

MenuButton pressed lock is released when this object is destroyed.

- + ICefMenuModel uCEFInterfaces

Supports creation and modification of menus. See TCefMenuId for the command ids that have default implementations. All user-defined command ids should be between MENU_ID_USER_FIRST and MENU_ID_USER_LAST. The functions of this interface can only be accessed on the browser process the UI thread.

- + ICefMenuModelDelegate uCEFInterfaces

Implement this interface to handle menu model events. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + ICefNavigationEntry uCEFInterfaces

Interface used to represent an entry in navigation history.

- + ICefNavigationEntryVisitor uCEFInterfaces

Callback interface for ICefBrowserHost.GetNavigationEntries. The functions of this interface will be called on the browser process UI thread.

- + ICefOverlayController uCEFInterfaces

Controller for an overlay that contains a contents View added via ICefWindow.AddOverlayView. Methods exposed by this controller should be called in preference to functions of the same name exposed by the contents View unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefPanel uCEFInterfaces

A Panel is a container in the views hierarchy that can contain other Views as children. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefPanelDelegate uCEFInterfaces

Implement this interface to handle Panel events. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + ICefPanelDelegateEvents uCEFInterfaces

Custom interface used to handle all the ICefPanelDelegate events.

- + ICefPdfPrintCallback uCEFInterfaces

Callback interface for ICefBrowserHost.PrintToPDF. The functions of this interface will be called on the browser process UI thread.

- + ICefPermissionHandler uCEFInterfaces

Implement this interface to handle events related to permission requests. The functions of this interface will be called on the browser process UI thread.

- + ICefPermissionPromptCallback uCEFInterfaces

Callback interface used for asynchronous continuation of permission prompts.

- + ICefPostData uCEFInterfaces

Interface used to represent post data for a web request. The functions of this interface may be called on any thread.

- + ICefPostDataElement uCEFInterfaces

Interface used to represent a single element in the request post data. The functions of this interface may be called on any thread.

- + ICefPreferenceManager uCEFInterfaces

Manage access to preferences. Many built-in preferences are registered by Chromium. Custom preferences can be registered in ICefBrowserProcessHandler.OnRegisterCustomPreferences.

- + ICefPrintDialogCallback uCEFInterfaces

Callback interface for asynchronous continuation of print dialog requests.

- + ICefPrintHandler uCEFInterfaces

Implement this interface to handle printing on Linux. Each browser will have only one print job in progress at a time. The functions of this interface will be called on the browser process UI thread.

- + ICefPrintJobCallback uCEFInterfaces

Callback interface for asynchronous continuation of print job requests.

- + ICefPrintSettings uCEFInterfaces

Interface representing print settings.

- + ICefProcessMessage uCEFInterfaces

Interface representing a message. Can be used on any process and thread.

- + ICefReadHandler uCEFInterfaces

Structure the client can implement to provide a custom stream reader. The functions of this structure may be called on any thread.

- + ICefRegistration uCEFInterfaces

Generic callback interface used for managing the lifespan of a registration.

- + ICefRenderHandler uCEFInterfaces

Implement this interface to handle events when window rendering is disabled. The functions of this interface will be called on the UI thread.

- + ICefRenderProcessHandler uCEFInterfaces

Interface used to implement render process callbacks. The functions of this interface will be called on the render process main thread (TID_RENDERER) unless otherwise indicated.

- + ICefRequest uCEFInterfaces

Interface used to represent a web request. The functions of this interface may be called on any thread.

- + ICefRequestContext uCEFInterfaces

A request context provides request handling for a set of related browser or URL request objects. A request context can be specified when creating a new browser via the ICefBrowserHost static factory functions or when creating a new URL request via the ICefUrlRequest static factory functions. Browser objects with different request contexts will never be hosted in the same render process. Browser objects with the same request context may or may not be hosted in the same render process depending on the process model. Browser objects created indirectly via the JavaScript window.open function or targeted links will share the same render process and the same request context as the source browser. When running in single-process mode there is only a single render process (the main process) and so all browsers created in single-process mode will share the same request context. This will be the first request context passed into a ICefBrowserHost static factory function and all other request context objects will be ignored.

- + ICefRequestContextHandler uCEFInterfaces

Implement this interface to provide handler implementations. The handler instance will not be released until all objects related to the context have been destroyed.

- + ICefRequestHandler uCEFInterfaces

Implement this interface to handle events related to browser requests. The functions of this interface will be called on the thread indicated.

- + ICefResolveCallback uCEFInterfaces

Callback interface for ICefRequestContext.ResolveHost.

- + ICefResourceBundle uCEFInterfaces

Interface used for retrieving resources from the resource bundle (*.pak) files loaded by CEF during startup or via the ICefResourceBundleHandler returned from ICefApp.GetResourceBundleHandler. See TCefSettings for additional options related to resource bundle loading. The functions of this interface may be called on any thread unless otherwise indicated.

- + ICefResourceBundleHandler uCEFInterfaces

Interface used to implement a custom resource bundle interface. See TCefSettings for additional options related to resource bundle loading. The functions of this interface may be called on multiple threads.

- + ICefResourceHandler uCEFInterfaces

Interface used to implement a custom request handler interface. The functions of this interface will be called on the IO thread unless otherwise indicated.

- + ICefResourceReadCallback uCEFInterfaces

Callback for asynchronous continuation of ICefResourceHandler.read.

- + ICefResourceRequestHandler uCEFInterfaces

Implement this interface to handle events related to browser requests. The functions of this interface will be called on the IO thread unless otherwise indicated.

- + ICefResourceSkipCallback uCEFInterfaces

Callback for asynchronous continuation of ICefResourceHandler.skip.

- + ICefResponse uCEFInterfaces

Interface used to represent a web response. The functions of this interface may be called on any thread.

- + ICefResponseFilter uCEFInterfaces

Implement this interface to filter resource response content. The functions of this interface will be called on the browser process IO thread.

- + ICefRunContextMenuCallback uCEFInterfaces

Callback interface used for continuation of custom context menu display.

- + ICefRunFileDialogCallback uCEFInterfaces

Callback interface for ICefBrowserHost.RunFileDialog. The functions of this interface will be called on the browser process UI thread.

- + ICefRunQuickMenuCallback uCEFInterfaces

Callback interface used for continuation of custom quick menu display.

- + ICefSchemeHandlerFactory uCEFInterfaces

Interface that creates ICefResourceHandler instances for handling scheme requests. The functions of this interface will always be called on the IO thread.

- + ICefScrollView uCEFInterfaces

A ScrollView will show horizontal and/or vertical scrollbars when necessary based on the size of the attached content view. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefSelectClientCertificateCallback uCEFInterfaces

Callback interface used to select a client certificate for authentication.

- + ICefServer uCEFInterfaces

Interface representing a server that supports HTTP and WebSocket requests. Server capacity is limited and is intended to handle only a small number of simultaneous connections (e.g. for communicating between applications on localhost). The functions of this interface are safe to call from any thread in the brower process unless otherwise indicated.

- + ICefServerHandler uCEFInterfaces

Implement this interface to handle HTTP server requests. A new thread will be created for each ICefServer.CreateServer call (the "dedicated server thread"), and the functions of this interface will be called on that thread. It is therefore recommended to use a different ICefServerHandler instance for each ICefServer.CreateServer call to avoid thread safety issues in the ICefServerHandler implementation.

- + ICefSetCookieCallback uCEFInterfaces

Interface to implement to be notified of asynchronous completion via ICefCookieManager.SetCookie.

- + ICefSharedMemoryRegion uCEFInterfaces

Interface that wraps platform-dependent share memory region mapping.

- + ICefSharedProcessMessageBuilder uCEFInterfaces

Interface that builds a ICefProcessMessage containing a shared memory region. This interface is not thread-safe but may be used exclusively on a different thread from the one which constructed it.

- + ICefSslInfo uCEFInterfaces

Interface representing SSL information.

- + ICefSSLStatus uCEFInterfaces

Interface representing the SSL information for a navigation entry.

- + ICefStreamReader uCEFInterfaces

Interface used to read data from a stream. The functions of this interface may be called on any thread.

- + ICefStreamWriter uCEFInterfaces

Interface used to write data to a stream. The functions of this interface may be called on any thread.

- + ICefStringList uCEFInterfaces

Custom interface used to handle all the CEF functions related to CefStringList.

- + ICefStringMap uCEFInterfaces

Custom interface used to handle all the CEF functions related to CefStringMap.

- + ICefStringMultimap uCEFInterfaces

Custom interface used to handle all the CEF functions related to CefStringMultimap.

- + ICefStringVisitor uCEFInterfaces

Implement this interface to receive string values asynchronously.

- + ICefTask uCEFInterfaces

Implement this interface for asynchronous task execution. If the task is posted successfully and if the associated message loop is still running then the execute() function will be called on the target thread. If the task fails to post then the task object may be destroyed on the source thread instead of the target thread. For this reason be cautious when performing work in the task object destructor.

+ +ICefTaskManager +uCEFInterfaces +

Interface that facilitates managing the browser-related tasks. The functions of this structure may only be called on the UI thread.

+ ICefTaskRunner uCEFInterfaces @@ -1086,7 +1076,7 @@ TCEFBrowserViewComponent uCEFBrowserViewComponent -

Component hosting a ICefBrowserView instance. Used in Chrome runtime mode only.

+

Component hosting a ICefBrowserView instance.

TCefBrowserViewDelegate @@ -1564,181 +1554,156 @@

 

-TCefExtension -uCEFTypes -

Object representing an extension. Methods may be called on any thread unless otherwise indicated.

- - -TCefExtensionHandler -uCEFTypes -

Implement this structure to handle events related to browser extensions. The functions of this structure will be called on the UI thread. See ICefRequestContext.LoadExtension for information about extension loading.

- - -TCefExtensionHandlerOwn -uCEFExtensionHandler -

 

- - -TCefExtensionHandlerRef -uCEFExtensionHandler -

 

- - -TCefExtensionRef -uCEFExtension -

 

- - TCefFastCompletionCallback uCEFCompletionCallback

 

- + TCefFastCookieVisitor uCEFCookieVisitor

 

- + TCefFastDeleteCookiesCallback uCEFDeleteCookiesCallback

 

- + TCefFastDomVisitor uCEFDomVisitor

 

- + TCefFastDomVisitor2 uCEFDomVisitor

 

- + TCefFastDomVisitor3 uCEFDomVisitor

 

- + TCefFastDownloadImageCallback uCEFDownloadImageCallBack

 

- + TCefFastEndTracingCallback uCEFEndTracingCallback

 

- + TCefFastMediaRouteCreateCallback uCEFMediaRouteCreateCallback

 

- + TCefFastMediaSinkDeviceInfoCallback uCEFMediaSinkDeviceInfoCallback

 

- + TCefFastNavigationEntryVisitor uCEFNavigationEntryVisitor

 

- + TCefFastPdfPrintCallback uCEFPDFPrintCallback

 

- + TCefFastRunFileDialogCallback uCEFRunFileDialogCallback

 

- + TCefFastSetCookieCallback uCEFSetCookieCallback

 

- + TCefFastStringVisitor uCEFStringVisitor

 

- + TCefFastTask uCEFTask

 

- + TCefFastV8Accessor uCEFv8Accessor

 

- + TCefFastv8ArrayBufferReleaseCallback uCEFv8ArrayBufferReleaseCallback

 

- + TCefFastV8Interceptor uCEFv8Interceptor

 

- + TCefFileDialogCallback uCEFTypes

Callback structure for asynchronous continuation of file dialog requests.

- + TCefFileDialogCallbackRef uCEFFileDialogCallback

 

- + TCEFFileDialogInfo uCEFFileDialogInfo

 

- + TCefFillLayout uCEFTypes

A simple Layout that causes the associated Panel's one child to be sized to match the bounds of its parent. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefFillLayoutRef uCEFFillLayout

A simple Layout that causes the associated Panel's one child to be sized to match the bounds of its parent. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefFindHandler uCEFTypes

Implement this structure to handle events related to find results. The functions of this structure will be called on the UI thread.

- + TCefFindHandlerOwn uCEFFindHandler

 

- + TCefFlushStoreCompletionCallback uCEFCookieManager

 

- + TCefFocusHandler uCEFTypes

Implement this structure to handle events related to focus. The functions of this structure will be called on the UI thread.

- + TCefFocusHandlerOwn uCEFFocusHandler

 

- + TCefFrame uCEFTypes

Structure used to represent a frame in the browser window. When used in the browser process the functions of this structure may be called on any thread unless otherwise indicated in the comments. When used in the render process the functions of this structure may only be called on the main thread.

- + TCefFrameHandler uCEFTypes

Implement this STRUCTURE to handle events related to ICefFrame life span. The order of callbacks is: @@ -1761,131 +1726,126 @@

The functions of this interface will be called on the UI thread unless otherwise indicated.

- + TCefFrameHandlerOwn uCEFFrameHandler

 

- + TCefFrameRef uCEFFrame

 

- + TCefGenericTask uCEFTask

 

- -TCefGetExtensionResourceCallback -uCEFTypes -

Callback structure used for asynchronous continuation of ICefExtensionHandler.GetExtensionResource.

- -TCefGetExtensionResourceCallbackRef -uCEFGetExtensionResourceCallback -

 

- - TCefImage uCEFTypes

Container for a single image represented at different scale factors. All image representations should be the same size in density independent pixel (DIP) units. For example, if the image at scale factor 1.0 is 100x100 pixels then the image at scale factor 2.0 should be 200x200 pixels – both images will display with a DIP size of 100x100 units. The functions of this structure can be called on any browser process thread.

- + TCefImageRef uCEFImage

 

- + TCefInsets uCEFTypes

Structure representing insets.

- + TCefJsDialogCallback uCEFTypes

Callback structure used for asynchronous continuation of JavaScript dialog requests.

- + TCefJsDialogCallbackRef uCEFJsDialogCallback

 

- + TCefJsDialogHandler uCEFTypes

Implement this structure to handle events related to JavaScript dialogs. The functions of this structure will be called on the UI thread.

- + TCefJsDialogHandlerOwn uCEFJsDialogHandler

 

- + TCEFJson uCEFJson

 

- + TCefKeyboardHandler uCEFTypes

Implement this structure to handle events related to keyboard input. The functions of this structure will be called on the UI thread.

- + TCefKeyboardHandlerOwn uCEFKeyboardHandler

 

- + TCefKeyEvent uCEFTypes

Structure representing keyboard event information.

- + TCefLabelButton uCEFTypes

LabelButton is a button with optional text and/or icon. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCEFLabelButtonComponent uCEFLabelButtonComponent

 

- + TCefLabelButtonRef uCEFLabelButton

LabelButton is a button with optional text and/or icon. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefLayout uCEFTypes

A Layout handles the sizing of the children of a Panel according to implementation-specific heuristics. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefLayoutRef uCEFLayout

A Layout handles the sizing of the children of a Panel according to implementation-specific heuristics. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefLifeSpanHandler uCEFTypes

Implement this structure to handle events related to browser life span. The functions of this structure will be called on the UI thread unless otherwise indicated.

- + TCefLifeSpanHandlerOwn uCEFLifeSpanHandler

 

- + TCEFLinkedWinControlBase uCEFLinkedWinControlBase

TCEFLinkedWinControlBase is a custom TWinControl to host the child controls created by the web browser to show the web contents and it's linked to the TChromium instance that handles that web browser. TCEFLinkedWinControlBase is the parent class of TChromiumWindow, TBrowserWindow and TCEFLinkedWindowParent.

- + TCEFLinkedWindowParent uCEFLinkedWindowParent

This component can be used by VCL and LCL applications. It has the same purpose as TCEFWindowParent but it has a Chromium property to link it directly to a TChromium component. TCEFLinkedWindowParent resizes the child controls created by CEF for browsers in normal mode and sets the browser focus using the linked TChromium component. TCEFWindowParent and TCEFLinkedWindowParent work fine in Windows and you can used any of them but you can't use TCEFWindowParent in Linux or MacOS.

+ +TCefLinuxWindowProperties +uCEFTypes +

Linux window properties, such as X11's WM_CLASS or Wayland's app_id. Those are passed to CefWindowDelegate, so the client can set them for the CefWindow's top-level. Thus, allowing window managers to correctly display the application's information (e.g., icons).

+ TCefListValue uCEFTypes @@ -2787,368 +2747,383 @@

Implement this structure for asynchronous task execution. If the task is posted successfully and if the associated message loop is still running then the execute() function will be called on the target thread. If the task fails to post then the task object may be destroyed on the source thread instead of the target thread. For this reason be cautious when performing work in the task object destructor.

+TCefTaskInfo +uCEFTypes +

Structure representing task information provided by ICefTaskManager.

+ + +TCefTaskManager +uCEFTypes +

Structure that facilitates managing the browser-related tasks. The functions of this structure may only be called on the UI thread.

+ + +TCefTaskManagerRef +uCEFTaskManager +

Class that facilitates managing the browser-related tasks.

+ + TCefTaskOwn uCEFTask

 

- + TCefTaskRef uCEFTask

 

- + TCefTaskRunner uCEFTypes

Structure that asynchronously executes tasks on the associated thread. It is safe to call the functions of this structure on any thread.

CEF maintains multiple internal threads that are used for handling different types of tasks in different processes. The TCefThreadId definitions in cef_types.h list the common CEF threads. Task runners are also available for other CEF threads as appropriate (for example, V8 WebWorker threads).

- + TCefTaskRunnerRef uCEFTaskRunner

 

- + TCefTextfield uCEFTypes

A Textfield supports editing of text. This control is custom rendered with no platform-specific code. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCEFTextfieldComponent uCEFTextfieldComponent

 

- + TCefTextfieldDelegate uCEFTypes

Implement this structure to handle Textfield events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.

- + TCefTextfieldDelegateOwn uCEFTextfieldDelegate

Implement this interface to handle Textfield events. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + TCefTextfieldDelegateRef uCEFTextfieldDelegate

 

- + TCefTextfieldRef uCEFTextfield

A Textfield supports editing of text. This control is custom rendered with no platform-specific code. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefThread uCEFTypes

A simple thread abstraction that establishes a message loop on a new thread. The consumer uses ICefTaskRunner to execute code on the thread's message loop. The thread is terminated when the ICefThread object is destroyed or stop() is called. All pending tasks queued on the thread's message loop will run to completion before the thread is terminated. cef_thread_create() can be called on any valid CEF thread in either the browser or render process. This structure should only be used for tasks that require a dedicated thread. In most cases you can post tasks to an existing CEF thread instead of creating a new one; see cef_task.h for details.

- + TCefThreadRef uCEFThread

 

- + TCefTime uCEFTypes

Time information. Values should always be in UTC.

- + TCEFTimerWorkScheduler uCEFTimerWorkScheduler

 

- + TCefToggleAudioMutedTask uCEFTask

 

- + TCefTouchEvent uCEFTypes

Structure representing touch event information.

- + TCefTouchHandleState uCEFTypes

Touch handle state.

- + TCefUnresponsiveProcessCallback uCEFTypes

Callback structure for asynchronous handling of an unresponsive process.

- + TCefUnresponsiveProcessCallbackRef uCEFUnresponsiveProcessCallback

 

- + TCefUpdatePrefsTask uCEFTask

 

- + TCefUpdateZoomPctTask uCEFTask

 

- + TCefUpdateZoomStepTask uCEFTask

 

- + TCefUrlParts uCEFTypes

URL component parts.

- + TCefUrlRequest uCEFTypes

Structure used to make a URL request. URL requests are not associated with a browser instance so no ICefClient callbacks will be executed. URL requests can be created on any valid CEF thread in either the browser or render process. Once created the functions of the URL request object must be accessed on the same thread that created it.

- + TCefUrlrequestClient uCEFTypes

Structure that should be implemented by the ICefUrlRequest client. The functions of this structure will be called on the same thread that created the request unless otherwise documented.

- + TCEFUrlRequestClientComponent uCEFUrlRequestClientComponent

The TCEFUrlRequestClientComponent class puts together all CEF URL request procedures, functions, properties and events in one place.

- + TCefUrlrequestClientOwn uCEFUrlrequestClient

 

- + TCefUrlrequestClientRef uCEFUrlrequestClient

 

- + TCefURLRequestClientTask uCEFTask

Custom class used to execute CEF tasks with a TCEFUrlRequestClientComponent component.

- + TCefUrlRequestRef uCEFUrlRequest

 

- + TCefURLRequestTask uCEFTask

 

- + TCefV8Accessor uCEFTypes

Structure that should be implemented to handle V8 accessor calls. Accessor identifiers are registered by calling ICefv8value.SetValue(). The functions of this structure will be called on the thread associated with the V8 accessor.

- + TCefV8AccessorOwn uCEFv8Accessor

 

- + TCefv8ArrayBufferReleaseCallback uCEFTypes

Callback structure that is passed to ICefv8value.CreateArrayBuffer.

- + TCefv8ArrayBufferReleaseCallbackOwn uCEFv8ArrayBufferReleaseCallback

 

- + TCefv8ArrayBufferReleaseCallbackRef uCEFv8ArrayBufferReleaseCallback

 

- + TCefV8Context uCEFTypes

Structure representing a V8 context handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.

- + TCefv8ContextRef uCEFv8Context

 

- + TCefV8Exception uCEFTypes

Structure representing a V8 exception. The functions of this structure may be called on any render process thread.

- + TCefV8ExceptionRef uCEFv8Exception

 

- + TCefv8Handler uCEFTypes

Structure that should be implemented to handle V8 function calls. The functions of this structure will be called on the thread associated with the V8 function.

- + TCefv8HandlerOwn uCEFv8Handler

 

- + TCefv8HandlerRef uCEFv8Handler

 

- + TCefV8Interceptor uCEFTypes

Structure that should be implemented to handle V8 interceptor calls. The functions of this structure will be called on the thread associated with the V8 interceptor. Interceptor's named property handlers (with first argument of type CefString) are called when object is indexed by string. Indexed property handlers (with first argument of type int) are called when object is indexed by integer.

- + TCefV8InterceptorOwn uCEFv8Interceptor

 

- + TCefV8StackFrame uCEFTypes

Structure representing a V8 stack frame handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.

- + TCefV8StackFrameRef uCEFv8StackFrame

 

- + TCefV8StackTrace uCEFTypes

Structure representing a V8 stack trace handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.

- + TCefV8StackTraceRef uCEFv8StackTrace

 

- + TCefv8Value uCEFTypes

Structure representing a V8 value handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.

- + TCefv8ValueRef uCEFv8Value

 

- + TCefValue uCEFTypes

Structure that wraps other data value types. Complex types (binary, dictionary and list) will be referenced but not owned by this object. Can be used on any process and thread.

- + TCefValueRef uCEFValue

 

- + TCefView uCEFTypes

A View is a rectangle within the views View hierarchy. It is the base structure for all Views. All size and position values are in density independent pixels (DIP) unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCEFViewComponent uCEFViewComponent

 

- + TCefViewDelegate uCEFTypes

Implement this structure to handle view events. All size and position values are in density independent pixels (DIP) unless otherwise indicated. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.

- + TCefViewDelegateOwn uCEFViewDelegate

Implement this interface to handle view events. All size and position values are in density independent pixels (DIP) unless otherwise indicated. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + TCefViewDelegateRef uCEFViewDelegate

 

- + TCefViewDelegateTask uCEFTask

Custom class used to execute CEF tasks with a TCEFViewComponent component.

- + TCefViewRef uCEFView

A View is a rectangle within the views View hierarchy. It is the base interface for all Views. All size and position values are in density independent pixels (DIP) unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefWaitableEvent uCEFTypes

WaitableEvent is a thread synchronization tool that allows one thread to wait for another thread to finish some work. This is equivalent to using a Lock+ConditionVariable to protect a simple boolean value. However, using WaitableEvent in conjunction with a Lock to wait for a more complex state change (e.g., for an item to be added to a queue) is not recommended. In that case consider using a ConditionVariable instead of a WaitableEvent. It is safe to create and/or signal a WaitableEvent from any thread. Blocking on a WaitableEvent by calling the *wait() functions is not allowed on the browser process UI or IO threads.

- + TCefWaitableEventRef uCEFWaitableEvent

 

- + TCEFWinControl uCEFWinControl

Custom TWinControl used by CEF browsers.

- + TCefWindow uCEFTypes

A Window is a top-level Window/widget in the Views hierarchy. By default it will have a non-client area with title bar, icon and buttons that supports moving and resizing. All size and position values are in density independent pixels (DIP) unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCEFWindowComponent uCEFWindowComponent

 

- + TCefWindowDelegate uCEFTypes

Implement this structure to handle window events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.

- + TCefWindowDelegateOwn uCEFWindowDelegate

Implement this interface to handle window events. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + TCefWindowDelegateRef uCEFWindowDelegate

 

- + TCefWindowInfo uCEFTypes

Structure representing window information.

- + TCEFWindowInfoWrapper uCEFWindowInfoWrapper

Wrapper class used to initialize a TCEFWindowInfo record.

- + TCEFWindowParent uCEFWindowParent

 

- + TCefWindowRef uCEFWindow

A Window is a top-level Window/widget in the Views hierarchy. By default it will have a non-client area with title bar, icon and buttons that supports moving and resizing. All size and position values are in density independent pixels (DIP) unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCEFWorkScheduler uCEFWorkScheduler

@@ -3159,87 +3134,87 @@

- + TCEFWorkSchedulerQueueThread uCEFWorkSchedulerQueueThread

 

- + TCEFWorkSchedulerThread uCEFWorkSchedulerThread

 

- + TCefWriteHandler uCEFTypes

Structure the client can implement to provide a custom stream writer. The functions of this structure may be called on any thread.

- + TCefWriteHandlerOwn uCEFWriteHandler

 

- + TCefX509Certificate uCEFTypes

Structure representing a X.509 certificate.

- + TCEFX509CertificateRef uCEFX509Certificate

 

- + TCefX509CertPrincipal uCEFTypes

Structure representing the issuer or subject field of an X.509 certificate.

- + TCefX509CertPrincipalRef uCEFX509CertPrincipal

 

- + TCefXmlReader uCEFTypes

Structure that supports the reading of XML data via the libxml streaming API. The functions of this structure should only be called on the thread that creates the object.

- + TCefXmlReaderRef uCEFXmlReader

 

- + TCefZipReader uCEFTypes

Structure that supports the reading of zip archives via the zlib unzip API. The functions of this structure should only be called on the thread that creates the object.

- + TCefZipReaderRef uCEFZipReader -

 

+

Class that supports the reading of zip archives via the zlib unzip API. The functions of this interface should only be called on the thread that creates the object.

- + TChromium uCEFChromium

VCL and LCL version of TChromiumCore that puts together all browser procedures, functions, properties and events in one place. It has all you need to create, modify and destroy a web browser.

- + TChromiumCore uCEFChromiumCore

Parent class of TChromium and TFMXChromium that puts together all browser procedures, functions, properties and events in one place. It has all you need to create, modify and destroy a web browser.

- + TChromiumFontOptions uCEFChromiumFontOptions

The TChromiumFontOptions properties are used to fill the TCefBrowserSettings record which is used during the browser creation.

- + TChromiumOptions uCEFChromiumOptions

The TChromiumOptions properties used to fill the TCefBrowserSettings record which is used during the browser creation.

- + TChromiumWindow uCEFChromiumWindow

@@ -3250,106 +3225,101 @@

- + TChromiumWrapper uCEFBrowserWindow

TChromiumWrapper

- + TCookie uCEFTypes

Cookie information.

- + TCustomAccessibilityHandler uCEFAccessibilityHandler

 

- + TCustomAudioHandler uCEFAudioHandler

 

- + TCustomBrowserViewDelegate uCEFBrowserViewDelegate

This class handles all the ICefBrowserViewDelegate methods which call the ICefBrowserViewDelegateEvents methods. ICefBrowserViewDelegateEvents will be implemented by the control receiving the ICefBrowserViewDelegate events.

- + TCustomButtonDelegate uCEFButtonDelegate

This class handles all the ICefButtonDelegate methods which call the ICefButtonDelegateEvents methods. ICefButtonDelegateEvents will be implemented by the control receiving the ICefButtonDelegate events.

- + TCustomCefApp uCEFApp

 

- + TCustomCefNavigationEntryVisitor uCEFNavigationEntryVisitor

 

- + TCustomCefStringVisitor uCEFStringVisitor

 

- + TCustomCefUrlrequestClient uCEFUrlrequestClient

 

- + TCustomClientHandler uCEFClient

 

- + TCustomCommandHandler uCEFCommandHandler

 

- + TCustomContextMenuHandler uCEFContextMenuHandler

 

- + TCustomCookieAccessFilter uCEFCookieAccessFilter

 

- + TCustomDevToolsMessageObserver uCEFDevToolsMessageObserver

 

- + TCustomDialogHandler uCEFDialogHandler

 

- + TCustomDisplayHandler uCEFDisplayHandler

 

- + TCustomDownloadHandler uCEFDownloadHandler

 

- + TCustomDragHandler uCEFDragHandler

 

- -TCustomExtensionHandler -uCEFExtensionHandler -

 

- TCustomFindHandler uCEFFindHandler @@ -3446,21 +3416,26 @@

 

+TCustomTaskInfo +uCEFTypes +

Pascal version of TCefTaskInfo.

+ + TCustomTextfieldDelegate uCEFTextfieldDelegate

This class handles all the ICefTextfieldDelegate and ICefViewDelegate methods which call the ICefTextfieldDelegateEvents methods. ICefTextfieldDelegateEvents will be implemented by the control receiving the ICefTextfieldDelegate events.

- + TCustomViewDelegate uCEFViewDelegate

This class handles all the ICefViewDelegate methods which call the ICefViewDelegateEvents methods. ICefViewDelegateEvents will be implemented by the control receiving the ICefViewDelegate events.

- + TCustomWindowDelegate uCEFWindowDelegate

This class handles all the TCustomWindowDelegate methods which call the ICefWindowDelegateEvents methods. ICefWindowDelegateEvents will be implemented by the control receiving the TCustomWindowDelegate events.

- + TEmbeddedChromium uCEFBrowserWindow

TEmbeddedChromium @@ -3469,34 +3444,34 @@

2) TEmbeddedChromium adds InternalEvents that can be hooked by the component that owns the TEmbeddedChromium. This means the default published events are available to the end user. Published events that should not be available are hidden via THiddenPropertyEditor * Hidden event properties must not be assigned by any end user code. *

- + TEmbeddedOsrChromium uCEFOsrBrowserWindow

TEmbeddedOsrChromium

Hides (THiddenPropertyEditor) any published event that is used by TOsrBrowserWindow * Hidden events must also not be used by user code *

- + TFileVersionInfo uCEFTypes

Record used by GetDLLVersion to get the DLL version information

- + TFMXBufferPanel uCEFFMXBufferPanel

TBufferPanel is used by FMX applications with browsers in OSR mode to draw the browser contents. See the FMXExternalPumpBrowser demo for more details.

- + TFMXChromium uCEFFMXChromium

FMX version of TChromiumCore that puts together all browser procedures, functions, properties and events in one place. It has all you need to create, modify and destroy a web browser.

- + TFMXWindowParent uCEFFMXWindowParent

 

- + TFMXWorkScheduler uCEFFMXWorkScheduler

@@ -3507,6 +3482,11 @@

+ +TLinuxWindowProperties +uCEFTypes +

String version of TCefLinuxWindowProperties

+ TLoggingInterfacedObject uCEFBaseRefCounted diff --git a/docs/html/AllConstants.html b/docs/html/AllConstants.html index 30727c0e..406e83f5 100644 --- a/docs/html/AllConstants.html +++ b/docs/html/AllConstants.html @@ -536,506 +536,511 @@

Result codes for ICefMediaRouter.CreateRoute. Should be kept in sync with Chromium's media_router::mojom::RouteRequestResultCode type.

+CEF_ONEDAYINMILLISECONDS +uCEFConstants +

This value may be used with the mseconds_between_dumps parameter in GlobalCEFApp.DumpWithoutCrashing.

+ + CEF_OSR_FRAMERATE_DEFAULT uCEFConstants

Default values for the Windowsless framerate setting in TChromiumOptions The values are frames per second.

- + CEF_OSR_SHARED_TEXTURES_FRAMERATE_DEFAULT uCEFConstants

Used when the shared textures are disabled.

- + CEF_PENDINGINVALIDATE uCEFConstants

 

- + CEF_PENDINGRESIZE uCEFConstants

 

- + CEF_PERMISSION_TYPE_ACCESSIBILITY_EVENTS uCEFConstants

 

- + CEF_PERMISSION_TYPE_AR_SESSION uCEFConstants

 

- + CEF_PERMISSION_TYPE_CAMERA_PAN_TILT_ZOOM uCEFConstants

 

- + CEF_PERMISSION_TYPE_CAMERA_STREAM uCEFConstants

 

- + CEF_PERMISSION_TYPE_CAPTURED_SURFACE_CONTROL uCEFConstants

 

- + CEF_PERMISSION_TYPE_CLIPBOARD uCEFConstants

 

- + CEF_PERMISSION_TYPE_DISK_QUOTA uCEFConstants

 

- + CEF_PERMISSION_TYPE_FILE_SYSTEM_ACCESS uCEFConstants

 

- + CEF_PERMISSION_TYPE_GEOLOCATION uCEFConstants

 

- + CEF_PERMISSION_TYPE_IDENTITY_PROVIDER uCEFConstants

 

- + CEF_PERMISSION_TYPE_IDLE_DETECTION uCEFConstants

 

- + CEF_PERMISSION_TYPE_KEYBOARD_LOCK uCEFConstants

 

- + CEF_PERMISSION_TYPE_LOCAL_FONTS uCEFConstants

 

- + CEF_PERMISSION_TYPE_MIC_STREAM uCEFConstants

 

- + CEF_PERMISSION_TYPE_MIDI_SYSEX uCEFConstants

 

- + CEF_PERMISSION_TYPE_MULTIPLE_DOWNLOADS uCEFConstants

 

- + CEF_PERMISSION_TYPE_NONE uCEFConstants -

Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with the Chrome runtime. Should be kept in sync with Chromium's permissions::RequestType type.

+

Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with Chrome style. Should be kept in sync with Chromium's permissions::RequestType type.

- + CEF_PERMISSION_TYPE_NOTIFICATIONS uCEFConstants

 

- + CEF_PERMISSION_TYPE_POINTER_LOCK uCEFConstants

 

- + CEF_PERMISSION_TYPE_PROTECTED_MEDIA_IDENTIFIER uCEFConstants

 

- + CEF_PERMISSION_TYPE_REGISTER_PROTOCOL_HANDLER uCEFConstants

 

- + CEF_PERMISSION_TYPE_STORAGE_ACCESS uCEFConstants

 

- + CEF_PERMISSION_TYPE_TOP_LEVEL_STORAGE_ACCESS uCEFConstants

 

- + CEF_PERMISSION_TYPE_VR_SESSION uCEFConstants

 

- + CEF_PERMISSION_TYPE_WINDOW_MANAGEMENT uCEFConstants

 

- + CEF_PREFERENCES_SAVED uCEFConstants

 

- + CEF_PRESSED_MOUSE_BUTTONS_BACK uCEFConstants

 

- + CEF_PRESSED_MOUSE_BUTTONS_FORWARD uCEFConstants

 

- + CEF_PRESSED_MOUSE_BUTTONS_LEFT uCEFConstants

 

- + CEF_PRESSED_MOUSE_BUTTONS_MIDDLE uCEFConstants

 

- + CEF_PRESSED_MOUSE_BUTTONS_NONE uCEFConstants

Modifier values used in the Input.dispatchMouseEvent DevTools method. A number indicating which buttons are pressed on the mouse when a mouse event is triggered. Left=1, Right=2, Middle=4, Back=8, Forward=16, None=0. https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent

- + CEF_PRESSED_MOUSE_BUTTONS_RIGHT uCEFConstants

 

- + CEF_PROXYTYPE_AUTODETECT uCEFConstants

Auto_detect proxy type: Auto detect proxy settings.

- + CEF_PROXYTYPE_DIRECT uCEFConstants

Direct proxy type: Never use a proxy.

- + CEF_PROXYTYPE_FIXED_SERVERS uCEFConstants

Fixed_servers proxy type: Use fixed proxy servers.

- + CEF_PROXYTYPE_PAC_SCRIPT uCEFConstants

Pac_script proxy type: Use a .pac proxy script.

- + CEF_PROXYTYPE_SYSTEM uCEFConstants

System proxy type: Use system proxy settings.

- + CEF_PUMPHAVEWORK uCEFConstants

 

- + CEF_RESULT_CODE_ACTION_DISALLOWED_BY_POLICY uCEFConstants

The action is not allowed by a policy.

- + CEF_RESULT_CODE_BAD_PROCESS_TYPE uCEFConstants

The process is of an unknown type.

- + CEF_RESULT_CODE_CHROME_FIRST uCEFConstants

First Chrome result code.

- + CEF_RESULT_CODE_CHROME_LAST uCEFConstants

Last Chrome result code.

- + CEF_RESULT_CODE_CLOUD_POLICY_ENROLLMENT_FAILED uCEFConstants

Cloud policy enrollment is failed or given up by user.

- + CEF_RESULT_CODE_DOWNGRADE_AND_RELAUNCH uCEFConstants

Chrome was downgraded since the last launch. Perform downgrade processing and relaunch.

- + CEF_RESULT_CODE_EULA_REFUSED uCEFConstants

Returned when the user has not yet accepted the EULA.

- + CEF_RESULT_CODE_GPU_DEAD_ON_ARRIVAL uCEFConstants

The GPU process exited because initialization failed.

- + CEF_RESULT_CODE_GPU_EXIT_ON_CONTEXT_LOST uCEFConstants

The GPU process was terminated due to context lost.

- + CEF_RESULT_CODE_HUNG uCEFConstants

Process hung.

- + CEF_RESULT_CODE_IMPORTER_HUNG uCEFConstants

Browser import hung and was killed.

- + CEF_RESULT_CODE_INSTALL_FROM_WEBSTORE_ERROR_2 uCEFConstants

Failed to install an item from the webstore when the kInstallEphemeralAppFromWebstore command line flag was present. As this flag is no longer supported, this return code should never be returned.

- + CEF_RESULT_CODE_INVALID_CMDLINE_URL uCEFConstants

An invalid command line url was given.

- + CEF_RESULT_CODE_INVALID_POST_LOGIN_PARAMS uCEFConstants

The Lacros process exited because the post-login parameters received from Ash are either empty or invalid (Lacros-only).

- + CEF_RESULT_CODE_INVALID_SANDBOX_STATE uCEFConstants

A browser process was sandboxed. This should never happen.

- + CEF_RESULT_CODE_KILLED uCEFConstants

Process was killed by user or system.

- + CEF_RESULT_CODE_KILLED_BAD_MESSAGE uCEFConstants

A bad message caused the process termination.

- + CEF_RESULT_CODE_MACHINE_LEVEL_INSTALL_EXISTS uCEFConstants

Machine level install exists.

- + CEF_RESULT_CODE_MISSING_DATA uCEFConstants

A critical chrome file is missing.

- + CEF_RESULT_CODE_NORMAL_EXIT uCEFConstants

Normal exit code.

- + CEF_RESULT_CODE_NORMAL_EXIT_CANCEL uCEFConstants

For experiments this return code means that the user canceled causes the did_run "dr" signal to be reset soi this chrome run does not count as active chrome usage.

- + CEF_RESULT_CODE_NORMAL_EXIT_EXP1 uCEFConstants

Generic code used to communicate some simple outcome back to the process that launched us. This is used for experiments and the actual meaning depends on the experiment.

- + CEF_RESULT_CODE_NORMAL_EXIT_EXP2 uCEFConstants

Generic code used to communicate some simple outcome back to the process that launched us. This is used for experiments and the actual meaning depends on the experiment.

- + CEF_RESULT_CODE_NORMAL_EXIT_EXP3 uCEFConstants

Generic code used to communicate some simple outcome back to the process that launched us. This is used for experiments and the actual meaning depends on the experiment.

- + CEF_RESULT_CODE_NORMAL_EXIT_EXP4 uCEFConstants

Generic code used to communicate some simple outcome back to the process that launched us. This is used for experiments and the actual meaning depends on the experiment.

- + CEF_RESULT_CODE_NORMAL_EXIT_PACK_EXTENSION_SUCCESS uCEFConstants

An early startup command was executed and the browser must exit.

- + CEF_RESULT_CODE_NORMAL_EXIT_PROCESS_NOTIFIED uCEFConstants

The browser process exited early by passing the command line to another running browser.

- + CEF_RESULT_CODE_NORMAL_EXIT_UPGRADE_RELAUNCHED uCEFConstants

Chrome detected that there was a new version waiting to launch and renamed the files and launched the new version. This result code is never returned from the main process, but is instead used as a signal for early termination of browser. See `IsNormalResultCode` below.

- + CEF_RESULT_CODE_NOTUSED_1 uCEFConstants

A dummy value we should not use. See crbug.com/152285.

- + CEF_RESULT_CODE_NOTUSED_2 uCEFConstants

A dummy value we should not use. See crbug.com/152285.

- + CEF_RESULT_CODE_PACK_EXTENSION_ERROR uCEFConstants

Failed to pack an extension via the cmd line.

- + CEF_RESULT_CODE_PROFILE_IN_USE uCEFConstants

The profile was in use on another host.

- + CEF_RESULT_CODE_RESPAWN_FAILED uCEFConstants

Trying to restart the browser we crashed.

- + CEF_RESULT_CODE_SANDBOX_FATAL_CACHEDISABLE uCEFConstants

Windows sandbox failed to forbid HCKU caching.

- + CEF_RESULT_CODE_SANDBOX_FATAL_CLOSEHANDLES uCEFConstants

Windows sandbox failed to close pending handles.

- + CEF_RESULT_CODE_SANDBOX_FATAL_DROPTOKEN uCEFConstants

Windows sandbox could not lower the token.

- + CEF_RESULT_CODE_SANDBOX_FATAL_FIRST uCEFConstants

First Sandbox result code.

- + CEF_RESULT_CODE_SANDBOX_FATAL_FLUSHANDLES uCEFConstants

Windows sandbox failed to flush registry handles.

- + CEF_RESULT_CODE_SANDBOX_FATAL_INTEGRITY uCEFConstants

Windows sandbox could not set the integrity level.

- + CEF_RESULT_CODE_SANDBOX_FATAL_LAST uCEFConstants

Last Sandbox result code.

- + CEF_RESULT_CODE_SANDBOX_FATAL_MEMORY_EXCEEDED uCEFConstants

Windows sandbox exceeded the job memory limit.

- + CEF_RESULT_CODE_SANDBOX_FATAL_MITIGATION uCEFConstants

Windows sandbox could not set the mitigation policy.

- + CEF_RESULT_CODE_SANDBOX_FATAL_WARMUP uCEFConstants

Windows sandbox failed to warmup.

- + CEF_RESULT_CODE_SHELL_INTEGRATION_FAILED uCEFConstants

Failed to make Chrome default browser (not used?).

- + CEF_RESULT_CODE_SXS_MIGRATION_FAILED_NOT_USED uCEFConstants

Failed to migrate user data directory for side-by-side package support (Linux-only).

- + CEF_RESULT_CODE_SYSTEM_RESOURCE_EXHAUSTED uCEFConstants

The browser process exited because system resource are exhausted. The system state can't be recovered and will be unstable.

- + CEF_RESULT_CODE_UNINSTALL_CHROME_ALIVE uCEFConstants

Uninstall detected another chrome instance.

- + CEF_RESULT_CODE_UNINSTALL_DELETE_PROFILE uCEFConstants

Delete profile as well during uninstall.

- + CEF_RESULT_CODE_UNINSTALL_EXTENSION_ERROR uCEFConstants

Failed to silently uninstall an extension.

- + CEF_RESULT_CODE_UNINSTALL_USER_CANCEL uCEFConstants

The user changed their mind.

- + CEF_RESULT_CODE_UNSUPPORTED_PARAM uCEFConstants

Command line parameter is not supported.

- + CEF_SCHEME_OPTION_CORS_ENABLED uCEFConstants

If CEF_SCHEME_OPTION_CORS_ENABLED is set the scheme can be sent CORS requests. This value should be set in most cases where CEF_SCHEME_OPTION_STANDARD is set.

- + CEF_SCHEME_OPTION_CSP_BYPASSING uCEFConstants

If CEF_SCHEME_OPTION_CSP_BYPASSING is set the scheme can bypass Content- Security-Policy (CSP) checks. This value should not be set in most cases where CEF_SCHEME_OPTION_STANDARD is set.

- + CEF_SCHEME_OPTION_DISPLAY_ISOLATED uCEFConstants

If CEF_SCHEME_OPTION_DISPLAY_ISOLATED is set the scheme can only be displayed from other content hosted with the same scheme. For example, pages in other origins cannot create iframes or hyperlinks to URLs with the scheme. For schemes that must be accessible from other schemes don't set this, set CEF_SCHEME_OPTION_CORS_ENABLED, and use CORS "Access-Control-Allow-Origin" headers to further restrict access.

- + CEF_SCHEME_OPTION_FETCH_ENABLED uCEFConstants

If CEF_SCHEME_OPTION_FETCH_ENABLED is set the scheme can perform Fetch API requests.

- + CEF_SCHEME_OPTION_LOCAL uCEFConstants

If CEF_SCHEME_OPTION_LOCAL is set the scheme will be treated with the same security rules as those applied to "file" URLs. Normal pages cannot link to or access local URLs. Also, by default, local URLs can only perform XMLHttpRequest calls to the same URL (origin + path) that originated the request. To allow XMLHttpRequest calls from a local URL to other URLs with the same origin set the CefSettings.file_access_from_file_urls_allowed value to true (1). To allow XMLHttpRequest calls from a local URL to all origins set the CefSettings.universal_access_from_file_urls_allowed value to true (1).

- + CEF_SCHEME_OPTION_NONE uCEFConstants

No options.

- + CEF_SCHEME_OPTION_SECURE uCEFConstants

If CEF_SCHEME_OPTION_SECURE is set the scheme will be treated with the same security rules as those applied to "https" URLs. For example, loading this scheme from other secure schemes will not trigger mixed content warnings.

- + CEF_SCHEME_OPTION_STANDARD uCEFConstants

If CEF_SCHEME_OPTION_STANDARD is set the scheme will be treated as a standard scheme. Standard schemes are subject to URL canonicalization and parsing rules as defined in the Common Internet Scheme Syntax RFC 1738 Section 3.1 available at http://www.ietf.org/rfc/rfc1738.txt @@ -1044,4692 +1049,4692 @@

For non-standard scheme URLs only the "scheme:" component is parsed and canonicalized. The remainder of the URL will be passed to the handler as- is. For example, "scheme:///some%20text" will remain the same. Non-standard scheme URLs cannot be used as a target for form submission.

- + CEF_SENTINEL_DOCLOSE uCEFConstants

 

- + CEF_SENTINEL_START uCEFConstants

 

- + CEF_SETTINGS_URL uCEFConstants

 

- + CEF_SHOW_STATE_FULLSCREEN uCEFConstants

Show the window as fullscreen.

- + CEF_SHOW_STATE_HIDDEN uCEFConstants

Show the window as hidden (no dock thumbnail). Only supported on MacOS..

- + CEF_SHOW_STATE_MAXIMIZED uCEFConstants

Show the window as maximized.

- + CEF_SHOW_STATE_MINIMIZED uCEFConstants

Show the window as minimized.

- + CEF_SHOW_STATE_NORMAL uCEFConstants

Show the window as normal.

- + CEF_STARTDRAGGING uCEFConstants

 

- + CEF_SUPPORTED_VERSION_BUILD uCEFApplication

 

- + CEF_SUPPORTED_VERSION_BUILD uCEFApplicationCore

 

- + CEF_SUPPORTED_VERSION_MAJOR uCEFApplication

 

- + CEF_SUPPORTED_VERSION_MAJOR uCEFApplicationCore

 

- + CEF_SUPPORTED_VERSION_MINOR uCEFApplication

 

- + CEF_SUPPORTED_VERSION_MINOR uCEFApplicationCore

 

- + CEF_SUPPORTED_VERSION_RELEASE uCEFApplication

 

- + CEF_SUPPORTED_VERSION_RELEASE uCEFApplicationCore

 

- + CEF_TFC_COPY uCEFConstants

 

- + CEF_TFC_CUT uCEFConstants

Represents commands available to TextField.

- + CEF_TFC_DELETE uCEFConstants

 

- + CEF_TFC_PASTE uCEFConstants

 

- + CEF_TFC_SELECT_ALL uCEFConstants

 

- + CEF_TFC_UNDO uCEFConstants

 

- + CEF_THS_FLAG_ALPHA uCEFConstants

 

- + CEF_THS_FLAG_ENABLED uCEFConstants

 

- + CEF_THS_FLAG_NONE uCEFConstants

Values indicating what state of the touch handle is set.

- + CEF_THS_FLAG_ORIENTATION uCEFConstants

 

- + CEF_THS_FLAG_ORIGIN uCEFConstants

 

- + CEF_TIMER_DEPLETEWORK_CYCLES uCEFConstants

 

- + CEF_TIMER_DEPLETEWORK_DELAY uCEFConstants

 

- + CEF_TIMER_MAXDELAY uCEFConstants

 

- + CEF_TIMER_MAXIMUM uCEFConstants

 

- + CEF_TIMER_MINIMUM uCEFConstants

Used when the shared textures are enabled.

- + CEF_URLS_URL uCEFConstants

 

- + CEF_VERSION_URL uCEFConstants

 

- + CERT_STATUS_AUTHORITY_INVALID uCEFConstants

 

- + CERT_STATUS_COMMON_NAME_INVALID uCEFConstants

 

- + CERT_STATUS_CT_COMPLIANCE_FAILED uCEFConstants

 

- + CERT_STATUS_DATE_INVALID uCEFConstants

 

- + CERT_STATUS_FIRST_ERROR uCEFConstants

 

- + CERT_STATUS_INVALID uCEFConstants

 

- + CERT_STATUS_IS_EV uCEFConstants

 

- + CERT_STATUS_LAST_ERROR uCEFConstants

 

- + CERT_STATUS_NAME_CONSTRAINT_VIOLATION uCEFConstants

 

- + CERT_STATUS_NONE uCEFConstants

Supported certificate status code values. See net\cert\cert_status_flags.h for more information. CERT_STATUS_NONE is new in CEF because we use an enum while cert_status_flags.h uses a typedef and static const variables.

- + CERT_STATUS_NON_UNIQUE_NAME uCEFConstants

 

- + CERT_STATUS_NO_REVOCATION_MECHANISM uCEFConstants

 

- + CERT_STATUS_PINNED_KEY_MISSING uCEFConstants

 

- + CERT_STATUS_REVOKED uCEFConstants

 

- + CERT_STATUS_REV_CHECKING_ENABLED uCEFConstants

 

- + CERT_STATUS_SHA1_SIGNATURE_PRESENT uCEFConstants

 

- + CERT_STATUS_UNABLE_TO_CHECK_REVOCATION uCEFConstants

 

- + CERT_STATUS_VALIDITY_TOO_LONG uCEFConstants

 

- + CERT_STATUS_WEAK_KEY uCEFConstants

 

- + CERT_STATUS_WEAK_SIGNATURE_ALGORITHM uCEFConstants

 

- + CHROMEELF_DLL uCEFApplication

 

- + CHROMEELF_DLL uCEFApplicationCore

 

- + CHROMIUM_NONBROWSERSHUTDOWNPRIORITY uCEFConstants

This constant is defined by Chromium in chrome/app/main_dll_loader_win.cc It's used with SetProcessShutdownParameters to set a shutdown priority for the subprocesses. $280 is the default value for applications.

- + CM_EDITFLAG_CAN_COPY uCEFConstants

 

- + CM_EDITFLAG_CAN_CUT uCEFConstants

 

- + CM_EDITFLAG_CAN_DELETE uCEFConstants

 

- + CM_EDITFLAG_CAN_EDIT_RICHLY uCEFConstants

 

- + CM_EDITFLAG_CAN_PASTE uCEFConstants

 

- + CM_EDITFLAG_CAN_REDO uCEFConstants

 

- + CM_EDITFLAG_CAN_SELECT_ALL uCEFConstants

 

- + CM_EDITFLAG_CAN_TRANSLATE uCEFConstants

 

- + CM_EDITFLAG_CAN_UNDO uCEFConstants

 

- + CM_EDITFLAG_NONE uCEFConstants

Supported context menu edit state bit flags. These constants match their equivalents in Chromium's ContextMenuDataEditFlags and should not be renumbered.

- + CM_MEDIAFLAG_CAN_LOOP uCEFConstants

 

- + CM_MEDIAFLAG_CAN_PICTURE_IN_PICTURE uCEFConstants

 

- + CM_MEDIAFLAG_CAN_PRINT uCEFConstants

 

- + CM_MEDIAFLAG_CAN_ROTATE uCEFConstants

 

- + CM_MEDIAFLAG_CAN_SAVE uCEFConstants

 

- + CM_MEDIAFLAG_CAN_TOGGLE_CONTROLS uCEFConstants

 

- + CM_MEDIAFLAG_CONTROLS uCEFConstants

 

- + CM_MEDIAFLAG_HAS_AUDIO uCEFConstants

 

- + CM_MEDIAFLAG_IN_ERROR uCEFConstants

 

- + CM_MEDIAFLAG_LOOP uCEFConstants

 

- + CM_MEDIAFLAG_MUTED uCEFConstants

 

- + CM_MEDIAFLAG_NONE uCEFConstants

Supported context menu media state bit flags. These constants match their equivalents in Chromium's ContextMenuData::MediaFlags and should not be renumbered.

- + CM_MEDIAFLAG_PAUSED uCEFConstants

 

- + CM_MEDIAFLAG_PICTURE_IN_PICTURE uCEFConstants

 

- + CM_TYPEFLAG_EDITABLE uCEFConstants

An editable element is selected.

- + CM_TYPEFLAG_FRAME uCEFConstants

A subframe page is selected.

- + CM_TYPEFLAG_LINK uCEFConstants

A link is selected.

- + CM_TYPEFLAG_MEDIA uCEFConstants

A media node is selected.

- + CM_TYPEFLAG_NONE uCEFConstants

No node is selected.

- + CM_TYPEFLAG_PAGE uCEFConstants

The top page is selected.

- + CM_TYPEFLAG_SELECTION uCEFConstants

There is a textual or mixed selection that is selected.

- + COMMAND_ID_FIRST_UNBOUNDED uCEFConstants

command_id constants declared in cef_command_ids.h and used by some callbacks in ICefCommandHandler cef_command_ids.h is generated in /include/cef_command_ids.h

- + CRLF uCEFConstants

 

- + CUSTOM_ARRAY_LENGTH uCEFOLEDragAndDrop

 

- + DEFAULT_BLINK_BACKGROUND_COLOR uCEFOSRIMEHandler

Black SkColor

- + DEFAULT_BLINK_UNDERLINE_COLOR uCEFOSRIMEHandler

 

- + DEFAULT_BLINK_UNDERLINE_STYLE uCEFOSRIMEHandler

White SkColor

- + DEFAULT_CEFSERVER_ADDRESS uCEFServerComponent

 

- + DEFAULT_CEFSERVER_BACKLOG uCEFServerComponent

 

- + DEFAULT_CEFSERVER_PORT uCEFServerComponent

 

- + DEFAULT_REDIRECT_IPV4_HOST uCEFOAuth2Helper

REFERENCES : ============ https://tools.ietf.org/html/rfc6749 https://tools.ietf.org/html/rfc6750 https://tools.ietf.org/html/rfc8252 https://tools.ietf.org/html/rfc6819 https://tools.ietf.org/html/rfc7636 https://tools.ietf.org/html/draft-ietf-oauth-native-apps-12 https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13 https://developers.google.com/identity/protocols/OAuth2 https://developers.google.com/identity/protocols/OAuth2InstalledApp https://developers.google.com/identity/protocols/googlescopes https://developers.google.com/identity/protocols/OpenIDConnect https://aaronparecki.com/oauth-2-simplified/ https://example-app.com/pkce

- + DEFAULT_REDIRECT_IPV6_HOST uCEFOAuth2Helper

 

- + DEFAULT_REDIRECT_PORT uCEFOAuth2Helper

 

- + DEVTOOLS_WINDOWNAME uCEFConstants

 

- + DOM_EVENT_CATEGORY_BEFORE_TEXT_INSERTED uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_CLIPBOARD uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_COMPOSITION uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_DRAG uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_KEYBOARD uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_MESSAGE uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_MOUSE uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_MUTATION uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_OVERFLOW uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_PAGE_TRANSITION uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_POPSTATE uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_PROGRESS uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_TEXT uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_UI uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_UNKNOWN uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_WHEEL uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_XMLHTTPREQUEST_PROGRESS uCEFConstants

DOM event category flag.

- + DRAG_OPERATION_COPY uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_DELETE uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_EVERY uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_GENERIC uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_LINK uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_MOVE uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_NONE uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_PRIVATE uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DUPLEX_MODE_LONG_EDGE uCEFConstants

 

- + DUPLEX_MODE_SHORT_EDGE uCEFConstants

 

- + DUPLEX_MODE_SIMPLEX uCEFConstants

 

- + DUPLEX_MODE_UNKNOWN uCEFConstants

Print job duplex mode values.

- + ERR_ABORTED uCEFConstants

 

- + ERR_ACCESS_DENIED uCEFConstants

 

- + ERR_ADDRESS_INVALID uCEFConstants

 

- + ERR_ADDRESS_IN_USE uCEFConstants

 

- + ERR_ADDRESS_UNREACHABLE uCEFConstants

 

- + ERR_ADD_USER_CERT_FAILED uCEFConstants

 

- + ERR_ALPN_NEGOTIATION_FAILED uCEFConstants

 

- + ERR_BAD_SSL_CLIENT_AUTH_CERT uCEFConstants

 

- + ERR_BLOCKED_BY_ADMINISTRATOR uCEFConstants

 

- + ERR_BLOCKED_BY_CLIENT uCEFConstants

 

- + ERR_BLOCKED_BY_CSP uCEFConstants

 

- + ERR_BLOCKED_BY_RESPONSE uCEFConstants

 

- + ERR_BLOCKED_BY_XSS_AUDITOR uCEFConstants

 

- + ERR_BLOCKED_ENROLLMENT_CHECK_PENDING uCEFConstants

 

- + ERR_CACHE_AUTH_FAILURE_AFTER_READ uCEFConstants

 

- + ERR_CACHE_CHECKSUM_MISMATCH uCEFConstants

 

- + ERR_CACHE_CHECKSUM_READ_FAILURE uCEFConstants

 

- + ERR_CACHE_CREATE_FAILURE uCEFConstants

 

- + ERR_CACHE_DOOM_FAILURE uCEFConstants

 

- + ERR_CACHE_ENTRY_NOT_SUITABLE uCEFConstants

 

- + ERR_CACHE_LOCK_TIMEOUT uCEFConstants

 

- + ERR_CACHE_MISS uCEFConstants

 

- + ERR_CACHE_OPEN_FAILURE uCEFConstants

 

- + ERR_CACHE_OPEN_OR_CREATE_FAILURE uCEFConstants

 

- + ERR_CACHE_OPERATION_NOT_SUPPORTED uCEFConstants

 

- + ERR_CACHE_RACE uCEFConstants

 

- + ERR_CACHE_READ_FAILURE uCEFConstants

 

- + ERR_CACHE_WRITE_FAILURE uCEFConstants

 

- + ERR_CERTIFICATE_TRANSPARENCY_REQUIRED uCEFConstants

 

- + ERR_CERT_AUTHORITY_INVALID uCEFConstants

 

- + ERR_CERT_COMMON_NAME_INVALID uCEFConstants

 

- + ERR_CERT_CONTAINS_ERRORS uCEFConstants

 

- + ERR_CERT_DATABASE_CHANGED uCEFConstants

 

- + ERR_CERT_DATE_INVALID uCEFConstants

 

- + ERR_CERT_END uCEFConstants

 

- + ERR_CERT_ERROR_IN_SSL_RENEGOTIATION uCEFConstants

 

- + ERR_CERT_INVALID uCEFConstants

 

- + ERR_CERT_KNOWN_INTERCEPTION_BLOCKED uCEFConstants

 

- + ERR_CERT_NAME_CONSTRAINT_VIOLATION uCEFConstants

 

- + ERR_CERT_NON_UNIQUE_NAME uCEFConstants

 

- + ERR_CERT_NO_REVOCATION_MECHANISM uCEFConstants

 

- + ERR_CERT_REVOKED uCEFConstants

 

- + ERR_CERT_SYMANTEC_LEGACY uCEFConstants

 

- + ERR_CERT_UNABLE_TO_CHECK_REVOCATION uCEFConstants

 

- + ERR_CERT_VALIDITY_TOO_LONG uCEFConstants

 

- + ERR_CERT_WEAK_KEY uCEFConstants

 

- + ERR_CERT_WEAK_SIGNATURE_ALGORITHM uCEFConstants

 

- + ERR_CLEARTEXT_NOT_PERMITTED uCEFConstants

 

- + ERR_CLIENT_AUTH_CERT_TYPE_UNSUPPORTED uCEFConstants

 

- + ERR_CONNECTION_ABORTED uCEFConstants

 

- + ERR_CONNECTION_CLOSED uCEFConstants

 

- + ERR_CONNECTION_FAILED uCEFConstants

 

- + ERR_CONNECTION_REFUSED uCEFConstants

 

- + ERR_CONNECTION_RESET uCEFConstants

 

- + ERR_CONNECTION_TIMED_OUT uCEFConstants

 

- + ERR_CONTENT_DECODING_FAILED uCEFConstants

 

- + ERR_CONTENT_DECODING_INIT_FAILED uCEFConstants

 

- + ERR_CONTENT_LENGTH_MISMATCH uCEFConstants

 

- + ERR_CONTEXT_SHUT_DOWN uCEFConstants

 

- + ERR_CT_CONSISTENCY_PROOF_PARSING_FAILED uCEFConstants

 

- + ERR_CT_STH_INCOMPLETE uCEFConstants

 

- + ERR_CT_STH_PARSING_FAILED uCEFConstants

 

- + ERR_DISALLOWED_URL_SCHEME uCEFConstants

 

- + ERR_DNS_MALFORMED_RESPONSE uCEFConstants

 

- + ERR_DNS_NAME_HTTPS_ONLY uCEFConstants

 

- + ERR_DNS_SEARCH_EMPTY uCEFConstants

 

- + ERR_DNS_SECURE_RESOLVER_HOSTNAME_RESOLUTION_FAILED uCEFConstants

 

- + ERR_DNS_SERVER_FAILED uCEFConstants

 

- + ERR_DNS_SERVER_REQUIRES_TCP uCEFConstants

 

- + ERR_DNS_SORT_ERROR uCEFConstants

 

- + ERR_DNS_TIMED_OUT uCEFConstants

 

- + ERR_EARLY_DATA_REJECTED uCEFConstants

 

- + ERR_ECH_FALLBACK_CERTIFICATE_INVALID uCEFConstants

 

- + ERR_ECH_NOT_NEGOTIATED uCEFConstants

 

- + ERR_EMPTY_RESPONSE uCEFConstants

 

- + ERR_ENCODING_CONVERSION_FAILED uCEFConstants

 

- + ERR_ENCODING_DETECTION_FAILED uCEFConstants

 

- + ERR_FAILED uCEFConstants

 

- + ERR_FILE_EXISTS uCEFConstants

 

- + ERR_FILE_NOT_FOUND uCEFConstants

 

- + ERR_FILE_NO_SPACE uCEFConstants

 

- + ERR_FILE_PATH_TOO_LONG uCEFConstants

 

- + ERR_FILE_TOO_BIG uCEFConstants

 

- + ERR_FILE_VIRUS_INFECTED uCEFConstants

 

- + ERR_FTP_BAD_COMMAND_SEQUENCE uCEFConstants

 

- + ERR_FTP_COMMAND_NOT_SUPPORTED uCEFConstants

 

- + ERR_FTP_FAILED uCEFConstants

 

- + ERR_FTP_FILE_BUSY uCEFConstants

 

- + ERR_FTP_SERVICE_UNAVAILABLE uCEFConstants

 

- + ERR_FTP_SYNTAX_ERROR uCEFConstants

 

- + ERR_FTP_TRANSFER_ABORTED uCEFConstants

 

- + ERR_H2_OR_QUIC_REQUIRED uCEFConstants

 

- + ERR_HOST_RESOLVER_QUEUE_TOO_LARGE uCEFConstants

 

- + ERR_HTTPS_PROXY_TUNNEL_RESPONSE_REDIRECT uCEFConstants

 

- + ERR_HTTP_1_1_REQUIRED uCEFConstants

 

- + ERR_HTTP_RESPONSE_CODE_FAILURE uCEFConstants

 

- + ERR_ICANN_NAME_COLLISION uCEFConstants

 

- + ERR_IMPORT_CA_CERT_FAILED uCEFConstants

 

- + ERR_IMPORT_CA_CERT_NOT_CA uCEFConstants

 

- + ERR_IMPORT_CERT_ALREADY_EXISTS uCEFConstants

 

- + ERR_IMPORT_SERVER_CERT_FAILED uCEFConstants

 

- + ERR_INCOMPLETE_CHUNKED_ENCODING uCEFConstants

 

- + ERR_INCOMPLETE_SPDY_HEADERS uCEFConstants

 

- + ERR_INSECURE_RESPONSE uCEFConstants

 

- + ERR_INSUFFICIENT_RESOURCES uCEFConstants

 

- + ERR_INTERNET_DISCONNECTED uCEFConstants

 

- + ERR_INVALID_ARGUMENT uCEFConstants

 

- + ERR_INVALID_AUTH_CREDENTIALS uCEFConstants

 

- + ERR_INVALID_CHUNKED_ENCODING uCEFConstants

 

- + ERR_INVALID_ECH_CONFIG_LIST uCEFConstants

 

- + ERR_INVALID_HANDLE uCEFConstants

 

- + ERR_INVALID_HTTP_RESPONSE uCEFConstants

 

- + ERR_INVALID_REDIRECT uCEFConstants

 

- + ERR_INVALID_RESPONSE uCEFConstants

 

- + ERR_INVALID_SIGNED_EXCHANGE uCEFConstants

 

- + ERR_INVALID_URL uCEFConstants

 

- + ERR_INVALID_WEB_BUNDLE uCEFConstants

 

- + ERR_IO_PENDING uCEFConstants

 

- + ERR_KEY_GENERATION_FAILED uCEFConstants

 

- + ERR_MALFORMED_IDENTITY uCEFConstants

 

- + ERR_MANDATORY_PROXY_CONFIGURATION_FAILED uCEFConstants

 

- + ERR_METHOD_NOT_SUPPORTED uCEFConstants

 

- + ERR_MISCONFIGURED_AUTH_ENVIRONMENT uCEFConstants

 

- + ERR_MISSING_AUTH_CREDENTIALS uCEFConstants

 

- + ERR_MSG_TOO_BIG uCEFConstants

 

- + ERR_NAME_NOT_RESOLVED uCEFConstants

 

- + ERR_NAME_RESOLUTION_FAILED uCEFConstants

 

- + ERR_NETWORK_ACCESS_DENIED uCEFConstants

 

- + ERR_NETWORK_CHANGED uCEFConstants

 

- + ERR_NETWORK_IO_SUSPENDED uCEFConstants

 

- + ERR_NONE uCEFConstants

Supported error code values. Ranges: 0- 99 System related errors 100-199 Connection related errors 200-299 Certificate errors 300-399 HTTP errors 400-499 Cache errors 500-599 ? 600-699 FTP errors 700-799 Certificate manager errors 800-899 DNS resolver errors

- + ERR_NOT_IMPLEMENTED uCEFConstants

 

- + ERR_NO_BUFFER_SPACE uCEFConstants

 

- + ERR_NO_PRIVATE_KEY_FOR_CERT uCEFConstants

 

- + ERR_NO_SSL_VERSIONS_ENABLED uCEFConstants

 

- + ERR_NO_SUPPORTED_PROXIES uCEFConstants

 

- + ERR_NS_CACHE_MISS uCEFConstants

 

- + ERR_OUT_OF_MEMORY uCEFConstants

 

- + ERR_PAC_NOT_IN_DHCP uCEFConstants

 

- + ERR_PAC_SCRIPT_FAILED uCEFConstants

 

- + ERR_PAC_SCRIPT_TERMINATED uCEFConstants

 

- + ERR_PKCS12_IMPORT_BAD_PASSWORD uCEFConstants

 

- + ERR_PKCS12_IMPORT_FAILED uCEFConstants

 

- + ERR_PKCS12_IMPORT_INVALID_FILE uCEFConstants

 

- + ERR_PKCS12_IMPORT_INVALID_MAC uCEFConstants

 

- + ERR_PKCS12_IMPORT_UNSUPPORTED uCEFConstants

 

- + ERR_PRECONNECT_MAX_SOCKET_LIMIT uCEFConstants

 

- + ERR_PRIVATE_KEY_EXPORT_FAILED uCEFConstants

 

- + ERR_PROXY_AUTH_REQUESTED uCEFConstants

 

- + ERR_PROXY_AUTH_REQUESTED_WITH_NO_CONNECTION uCEFConstants

 

- + ERR_PROXY_AUTH_UNSUPPORTED uCEFConstants

 

- + ERR_PROXY_CERTIFICATE_INVALID uCEFConstants

 

- + ERR_PROXY_CONNECTION_FAILED uCEFConstants

 

- + ERR_PROXY_HTTP_1_1_REQUIRED uCEFConstants

 

- + ERR_QUIC_CERT_ROOT_NOT_KNOWN uCEFConstants

 

- + ERR_QUIC_GOAWAY_REQUEST_CAN_BE_RETRIED uCEFConstants

 

- + ERR_QUIC_HANDSHAKE_FAILED uCEFConstants

 

- + ERR_QUIC_PROTOCOL_ERROR uCEFConstants

 

- + ERR_READ_IF_READY_NOT_IMPLEMENTED uCEFConstants

 

- + ERR_REQUEST_RANGE_NOT_SATISFIABLE uCEFConstants

 

- + ERR_RESPONSE_BODY_TOO_BIG_TO_DRAIN uCEFConstants

 

- + ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION uCEFConstants

 

- + ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_LENGTH uCEFConstants

 

- + ERR_RESPONSE_HEADERS_MULTIPLE_LOCATION uCEFConstants

 

- + ERR_RESPONSE_HEADERS_TOO_BIG uCEFConstants

 

- + ERR_RESPONSE_HEADERS_TRUNCATED uCEFConstants

 

- + ERR_SELF_SIGNED_CERT_GENERATION_FAILED uCEFConstants

 

- + ERR_SOCKET_IS_CONNECTED uCEFConstants

 

- + ERR_SOCKET_NOT_CONNECTED uCEFConstants

 

- + ERR_SOCKET_RECEIVE_BUFFER_SIZE_UNCHANGEABLE uCEFConstants

 

- + ERR_SOCKET_SEND_BUFFER_SIZE_UNCHANGEABLE uCEFConstants

 

- + ERR_SOCKET_SET_RECEIVE_BUFFER_SIZE_ERROR uCEFConstants

 

- + ERR_SOCKET_SET_SEND_BUFFER_SIZE_ERROR uCEFConstants

 

- + ERR_SOCKS_CONNECTION_FAILED uCEFConstants

 

- + ERR_SOCKS_CONNECTION_HOST_UNREACHABLE uCEFConstants

 

- + ERR_SPDY_CLAIMED_PUSHED_STREAM_RESET_BY_SERVER uCEFConstants

 

- + ERR_SPDY_CLIENT_REFUSED_STREAM uCEFConstants

 

- + ERR_SPDY_COMPRESSION_ERROR uCEFConstants

 

- + ERR_SPDY_FLOW_CONTROL_ERROR uCEFConstants

 

- + ERR_SPDY_FRAME_SIZE_ERROR uCEFConstants

 

- + ERR_SPDY_INADEQUATE_TRANSPORT_SECURITY uCEFConstants

 

- + ERR_SPDY_PING_FAILED uCEFConstants

 

- + ERR_SPDY_PROTOCOL_ERROR uCEFConstants

 

- + ERR_SPDY_PUSHED_RESPONSE_DOES_NOT_MATCH uCEFConstants

 

- + ERR_SPDY_PUSHED_STREAM_NOT_AVAILABLE uCEFConstants

 

- + ERR_SPDY_RST_STREAM_NO_ERROR_RECEIVED uCEFConstants

 

- + ERR_SPDY_SERVER_REFUSED_STREAM uCEFConstants

 

- + ERR_SPDY_STREAM_CLOSED uCEFConstants

 

- + ERR_SSL_BAD_PEER_PUBLIC_KEY uCEFConstants

 

- + ERR_SSL_BAD_RECORD_MAC_ALERT uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_CERT_BAD_FORMAT uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_CERT_NEEDED uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_CERT_NO_PRIVATE_KEY uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_NO_COMMON_ALGORITHMS uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_PRIVATE_KEY_ACCESS_DENIED uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED uCEFConstants

 

- + ERR_SSL_DECOMPRESSION_FAILURE_ALERT uCEFConstants

 

- + ERR_SSL_DECRYPT_ERROR_ALERT uCEFConstants

 

- + ERR_SSL_HANDSHAKE_NOT_COMPLETED uCEFConstants

 

- + ERR_SSL_KEY_USAGE_INCOMPATIBLE uCEFConstants

 

- + ERR_SSL_NO_RENEGOTIATION uCEFConstants

 

- + ERR_SSL_OBSOLETE_CIPHER uCEFConstants

 

- + ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN uCEFConstants

 

- + ERR_SSL_PROTOCOL_ERROR uCEFConstants

 

- + ERR_SSL_RENEGOTIATION_REQUESTED uCEFConstants

 

- + ERR_SSL_SERVER_CERT_BAD_FORMAT uCEFConstants

 

- + ERR_SSL_SERVER_CERT_CHANGED uCEFConstants

 

- + ERR_SSL_UNRECOGNIZED_NAME_ALERT uCEFConstants

 

- + ERR_SSL_VERSION_OR_CIPHER_MISMATCH uCEFConstants

 

- + ERR_SYN_REPLY_NOT_RECEIVED uCEFConstants

 

- + ERR_TEMPORARILY_THROTTLED uCEFConstants

 

- + ERR_TIMED_OUT uCEFConstants

 

- + ERR_TLS13_DOWNGRADE_DETECTED uCEFConstants

 

- + ERR_TOO_MANY_REDIRECTS uCEFConstants

 

- + ERR_TOO_MANY_RETRIES uCEFConstants

 

- + ERR_TRUST_TOKEN_OPERATION_FAILED uCEFConstants

 

- + ERR_TRUST_TOKEN_OPERATION_SUCCESS_WITHOUT_SENDING_REQUEST uCEFConstants

 

- + ERR_TUNNEL_CONNECTION_FAILED uCEFConstants

 

- + ERR_UNABLE_TO_REUSE_CONNECTION_FOR_PROXY_AUTH uCEFConstants

 

- + ERR_UNDOCUMENTED_SECURITY_LIBRARY_STATUS uCEFConstants

 

- + ERR_UNEXPECTED uCEFConstants

 

- + ERR_UNEXPECTED_PROXY_AUTH uCEFConstants

 

- + ERR_UNEXPECTED_SECURITY_LIBRARY_STATUS uCEFConstants

 

- + ERR_UNKNOWN_URL_SCHEME uCEFConstants

 

- + ERR_UNRECOGNIZED_FTP_DIRECTORY_LISTING_FORMAT uCEFConstants

 

- + ERR_UNSAFE_PORT uCEFConstants

 

- + ERR_UNSAFE_REDIRECT uCEFConstants

 

- + ERR_UNSUPPORTED_AUTH_SCHEME uCEFConstants

 

- + ERR_UPLOAD_FILE_CHANGED uCEFConstants

 

- + ERR_UPLOAD_STREAM_REWIND_NOT_SUPPORTED uCEFConstants

 

- + ERR_WINSOCK_UNEXPECTED_WRITTEN_BYTES uCEFConstants

 

- + ERR_WRONG_VERSION_ON_EARLY_DATA uCEFConstants

 

- + ERR_WS_PROTOCOL_ERROR uCEFConstants

 

- + ERR_WS_THROTTLE_QUEUE_TOO_LARGE uCEFConstants

 

- + ERR_WS_UPGRADE uCEFConstants

 

- + EVENTFLAG_ALTGR_DOWN uCEFConstants

Supported event bit flag.

- + EVENTFLAG_ALT_DOWN uCEFConstants

Supported event bit flag.

- + EVENTFLAG_CAPS_LOCK_ON uCEFConstants

Supported event bit flag.

- + EVENTFLAG_COMMAND_DOWN uCEFConstants

Supported event bit flag.

- + EVENTFLAG_CONTROL_DOWN uCEFConstants

Supported event bit flag.

- + EVENTFLAG_IS_KEY_PAD uCEFConstants

Supported event bit flag.

- + EVENTFLAG_IS_LEFT uCEFConstants

Supported event bit flag.

- + EVENTFLAG_IS_REPEAT uCEFConstants

Supported event bit flag.

- + EVENTFLAG_IS_RIGHT uCEFConstants

Supported event bit flag.

- + EVENTFLAG_LEFT_MOUSE_BUTTON uCEFConstants

Supported event bit flag.

- + EVENTFLAG_MIDDLE_MOUSE_BUTTON uCEFConstants

Supported event bit flag.

- + EVENTFLAG_NONE uCEFConstants

Supported event bit flag.

- + EVENTFLAG_NUM_LOCK_ON uCEFConstants

Supported event bit flag.

- + EVENTFLAG_RIGHT_MOUSE_BUTTON uCEFConstants

Supported event bit flag.

- + EVENTFLAG_SHIFT_DOWN uCEFConstants

Supported event bit flag.

- + FILE_DIALOG_OPEN uCEFConstants

Requires that the file exists before allowing the user to pick it.

- + FILE_DIALOG_OPEN_FOLDER uCEFConstants

Like Open, but selects a folder to open.

- + FILE_DIALOG_OPEN_MULTIPLE uCEFConstants

Like Open, but allows picking multiple files to open.

- + FILE_DIALOG_SAVE uCEFConstants

Allows picking a nonexistent file, and prompts to overwrite if the file already exists.

- + GOOGLE_DISCOVERY_DOCUMENT uCEFOAuth2Helper

 

- + GWLP_HWNDPARENT uCEFMiscFunctions

 

- + GWLP_WNDPROC uCEFMiscFunctions

 

- + IDC_ABOUT uCEFConstants

 

- + IDC_ADD_NEW_PROFILE uCEFConstants

 

- + IDC_ALL_WINDOWS_FRONT uCEFConstants

 

- + IDC_ALWAYS_ON_TOP uCEFConstants

 

- + IDC_AUTOFILL_MANDATORY_REAUTH uCEFConstants

 

- + IDC_BACK uCEFConstants

 

- + IDC_BASIC_PRINT uCEFConstants

 

- + IDC_BOOKMARKS_MENU uCEFConstants

 

- + IDC_BOOKMARK_ALL_TABS uCEFConstants

 

- + IDC_BOOKMARK_BAR_ADD_NEW_BOOKMARK uCEFConstants

 

- + IDC_BOOKMARK_BAR_ADD_TO_BOOKMARKS_BAR uCEFConstants

 

- + IDC_BOOKMARK_BAR_ALWAYS_SHOW uCEFConstants

 

- + IDC_BOOKMARK_BAR_EDIT uCEFConstants

 

- + IDC_BOOKMARK_BAR_NEW_FOLDER uCEFConstants

 

- + IDC_BOOKMARK_BAR_OPEN_ALL uCEFConstants

 

- + IDC_BOOKMARK_BAR_OPEN_ALL_INCOGNITO uCEFConstants

 

- + IDC_BOOKMARK_BAR_OPEN_ALL_NEW_TAB_GROUP uCEFConstants

 

- + IDC_BOOKMARK_BAR_OPEN_ALL_NEW_WINDOW uCEFConstants

 

- + IDC_BOOKMARK_BAR_OPEN_INCOGNITO uCEFConstants

 

- + IDC_BOOKMARK_BAR_REDO uCEFConstants

 

- + IDC_BOOKMARK_BAR_REMOVE uCEFConstants

 

- + IDC_BOOKMARK_BAR_REMOVE_FROM_BOOKMARKS_BAR uCEFConstants

 

- + IDC_BOOKMARK_BAR_RENAME_FOLDER uCEFConstants

 

- + IDC_BOOKMARK_BAR_SHOW_APPS_SHORTCUT uCEFConstants

 

- + IDC_BOOKMARK_BAR_SHOW_MANAGED_BOOKMARKS uCEFConstants

 

- + IDC_BOOKMARK_BAR_SHOW_READING_LIST uCEFConstants

 

- + IDC_BOOKMARK_BAR_TRACK_PRICE_FOR_SHOPPING_BOOKMARK uCEFConstants

 

- + IDC_BOOKMARK_BAR_UNDO uCEFConstants

 

- + IDC_BOOKMARK_BAR_UNTRACK_PRICE_FOR_SHOPPING_BOOKMARK uCEFConstants

 

- + IDC_BOOKMARK_MANAGER uCEFConstants

 

- + IDC_BOOKMARK_THIS_TAB uCEFConstants

 

- + IDC_CARET_BROWSING_TOGGLE uCEFConstants

 

- + IDC_CHECK_SPELLING_WHILE_TYPING uCEFConstants

 

- + IDC_CHROME_MENU uCEFConstants

 

- + IDC_CHROME_TIPS uCEFConstants

 

- + IDC_CHROME_WHATS_NEW uCEFConstants

 

- + IDC_CLEAR_BROWSING_DATA uCEFConstants

 

- + IDC_CLOSE_FIND_OR_STOP uCEFConstants

 

- + IDC_CLOSE_PROFILE uCEFConstants

 

- + IDC_CLOSE_SIGN_IN_PROMO uCEFConstants

 

- + IDC_CLOSE_TAB uCEFConstants

 

- + IDC_CLOSE_WINDOW uCEFConstants

 

- + IDC_CONTENT_CLIPBOARD_HISTORY_MENU uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ACCESSIBILITY_LABELS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ACCESSIBILITY_LABELS_TOGGLE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ACCESSIBILITY_LABELS_TOGGLE_ONCE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ADD_A_NOTE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_ADDRESS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PAYMENTS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PLUS_ADDRESS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_AUTOFILL_FEEDBACK uCEFConstants

 

- + IDC_CONTENT_CONTEXT_CONTROLS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPY uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYAVLOCATION uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYEMAILADDRESS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYIMAGE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYIMAGELOCATION uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYLINKLOCATION uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYLINKTEXT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYLINKTOTEXT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYVIDEOFRAME uCEFConstants

 

- + IDC_CONTENT_CONTEXT_CUSTOM_FIRST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_CUSTOM_LAST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_CUT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_DELETE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_EMOJI uCEFConstants

 

- + IDC_CONTENT_CONTEXT_EXIT_FULLSCREEN uCEFConstants

 

- + IDC_CONTENT_CONTEXT_GENERATEPASSWORD uCEFConstants

 

- + IDC_CONTENT_CONTEXT_GENERATE_QR_CODE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_GOTOURL uCEFConstants

 

- + IDC_CONTENT_CONTEXT_INSPECTBACKGROUNDPAGE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_INSPECTELEMENT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_LANGUAGE_SETTINGS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_LENS_REGION_SEARCH uCEFConstants

 

- + IDC_CONTENT_CONTEXT_LOAD_IMAGE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_LOOK_UP uCEFConstants

 

- + IDC_CONTENT_CONTEXT_LOOP uCEFConstants

 

- + IDC_CONTENT_CONTEXT_NO_SPELLING_SUGGESTIONS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENAVNEWTAB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENIMAGENEWTAB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKBOOKMARKAPP uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKINPROFILE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKNEWTAB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKNEWWINDOW uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKOFFTHERECORD uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKPREVIEW uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKWITH uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_IN_READING_MODE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_ORIGINAL_IMAGE_NEW_TAB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH1 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH10 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH11 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH12 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH13 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH14 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH2 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH3 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH4 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH5 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH6 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH7 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH8 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH9 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH_LAST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PARTIAL_TRANSLATE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PASTE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PASTE_AND_MATCH_STYLE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PDF_OCR uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PICTUREINPICTURE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PROTOCOL_HANDLER_FIRST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PROTOCOL_HANDLER_LAST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PROTOCOL_HANDLER_SETTINGS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_QUICK_ANSWERS_INLINE_ANSWER uCEFConstants

 

- + IDC_CONTENT_CONTEXT_QUICK_ANSWERS_INLINE_QUERY uCEFConstants

 

- + IDC_CONTENT_CONTEXT_REDO uCEFConstants

 

- + IDC_CONTENT_CONTEXT_RELOADFRAME uCEFConstants

 

- + IDC_CONTENT_CONTEXT_RELOAD_PACKAGED_APP uCEFConstants

 

- + IDC_CONTENT_CONTEXT_REMOVELINKTOTEXT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_RESHARELINKTOTEXT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_RESTART_PACKAGED_APP uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ROTATECCW uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ROTATECW uCEFConstants

 

- + IDC_CONTENT_CONTEXT_RUN_LAYOUT_EXTRACTION uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SAVEAVAS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SAVEIMAGEAS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SAVELINKAS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SAVEPLUGINAS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SAVEVIDEOFRAMEAS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHLENSFORIMAGE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHLENSFORVIDEOFRAME uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHWEBFOR uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHWEBFORIMAGE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHWEBFORNEWTAB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHWEBFORVIDEOFRAME uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SELECTALL uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHARING_CLICK_TO_CALL_MULTIPLE_DEVICES uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHARING_CLICK_TO_CALL_SINGLE_DEVICE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHARING_SHARED_CLIPBOARD_MULTIPLE_DEVICES uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHARING_SHARED_CLIPBOARD_SINGLE_DEVICE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHARING_SUBMENU uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHOWALLSAVEDPASSWORDS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SPELLING_SUGGESTION uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SPELLING_TOGGLE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION1 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION2 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION3 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION4 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION5 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION_LAST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_TRANSLATE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_TRANSLATEIMAGEWITHLENS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_TRANSLATEIMAGEWITHWEB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_UNDO uCEFConstants

 

- + IDC_CONTENT_CONTEXT_VIEWFRAMEINFO uCEFConstants

 

- + IDC_CONTENT_CONTEXT_VIEWFRAMESOURCE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_VIEWPAGEINFO uCEFConstants

 

- + IDC_CONTENT_CONTEXT_WEB_REGION_SEARCH uCEFConstants

 

- + IDC_CONTENT_PASTE_FROM_CLIPBOARD uCEFConstants

 

- + IDC_CONTEXT_COMPOSE uCEFConstants

 

- + IDC_COPY uCEFConstants

 

- + IDC_COPY_URL uCEFConstants

 

- + IDC_CREATE_SHORTCUT uCEFConstants

 

- + IDC_CUSTOMIZE_CHROME uCEFConstants

 

- + IDC_CUSTOMIZE_TOUCH_BAR uCEFConstants

 

- + IDC_CUT uCEFConstants

 

- + IDC_DEBUG_PRINT_VIEW_TREE uCEFConstants

 

- + IDC_DEBUG_PRINT_VIEW_TREE_DETAILS uCEFConstants

 

- + IDC_DEBUG_TOGGLE_TABLET_MODE uCEFConstants

 

- + IDC_DEVELOPER_MENU uCEFConstants

 

- + IDC_DEVICE_SYSTEM_TRAY_ICON_FIRST uCEFConstants

 

- + IDC_DEVICE_SYSTEM_TRAY_ICON_LAST uCEFConstants

 

- + IDC_DEV_TOOLS uCEFConstants

 

- + IDC_DEV_TOOLS_CONSOLE uCEFConstants

 

- + IDC_DEV_TOOLS_DEVICES uCEFConstants

 

- + IDC_DEV_TOOLS_INSPECT uCEFConstants

 

- + IDC_DEV_TOOLS_TOGGLE uCEFConstants

 

- + IDC_DISTILL_PAGE uCEFConstants

 

- + IDC_DUPLICATE_TAB uCEFConstants

 

- + IDC_DUPLICATE_TARGET_TAB uCEFConstants

 

- + IDC_EDIT_MENU uCEFConstants

 

- + IDC_EDIT_SEARCH_ENGINES uCEFConstants

 

- + IDC_ELEVATED_RECOVERY_DIALOG uCEFConstants

 

- + IDC_EMAIL_PAGE_LOCATION uCEFConstants

 

- + IDC_EXIT uCEFConstants

 

- + IDC_EXTENSIONS_CONTEXT_CUSTOM_FIRST uCEFConstants

 

- + IDC_EXTENSIONS_CONTEXT_CUSTOM_LAST uCEFConstants

 

- + IDC_EXTENSIONS_SUBMENU uCEFConstants

 

- + IDC_EXTENSIONS_SUBMENU_MANAGE_EXTENSIONS uCEFConstants

 

- + IDC_EXTENSIONS_SUBMENU_VISIT_CHROME_WEB_STORE uCEFConstants

 

- + IDC_EXTENSION_ERRORS uCEFConstants

 

- + IDC_EXTENSION_INSTALL_ERROR_FIRST uCEFConstants

 

- + IDC_EXTENSION_INSTALL_ERROR_LAST uCEFConstants

 

- + IDC_FEEDBACK uCEFConstants

 

- + IDC_FILE_MENU uCEFConstants

 

- + IDC_FIND uCEFConstants

 

- + IDC_FIND_AND_EDIT_MENU uCEFConstants

 

- + IDC_FIND_MENU uCEFConstants

 

- + IDC_FIND_NEXT uCEFConstants

 

- + IDC_FIND_PREVIOUS uCEFConstants

 

- + IDC_FIRST_UNBOUNDED_MENU uCEFConstants

 

- + IDC_FOCUS_BOOKMARKS uCEFConstants

 

- + IDC_FOCUS_INACTIVE_POPUP_FOR_ACCESSIBILITY uCEFConstants

 

- + IDC_FOCUS_LOCATION uCEFConstants

 

- + IDC_FOCUS_MENU_BAR uCEFConstants

 

- + IDC_FOCUS_NEXT_PANE uCEFConstants

 

- + IDC_FOCUS_PREVIOUS_PANE uCEFConstants

 

- + IDC_FOCUS_SEARCH uCEFConstants

 

- + IDC_FOCUS_THIS_TAB uCEFConstants

 

- + IDC_FOCUS_TOOLBAR uCEFConstants

 

- + IDC_FOCUS_WEB_CONTENTS_PANE uCEFConstants

 

- + IDC_FOLLOW uCEFConstants

 

- + IDC_FORWARD uCEFConstants

 

- + IDC_FULLSCREEN uCEFConstants

 

- + IDC_GROUP_TARGET_TAB uCEFConstants

 

- + IDC_HELP_MENU uCEFConstants

 

- + IDC_HELP_PAGE_VIA_KEYBOARD uCEFConstants

 

- + IDC_HELP_PAGE_VIA_MENU uCEFConstants

 

- + IDC_HIDE_APP uCEFConstants

 

- + IDC_HISTORY_MENU uCEFConstants

 

- + IDC_HOME uCEFConstants

 

- + IDC_IMPORT_SETTINGS uCEFConstants

 

- + IDC_INPUT_METHODS_MENU uCEFConstants

 

- + IDC_INSTALL_PWA uCEFConstants

 

- + IDC_LACROS_DATA_MIGRATION uCEFConstants

 

- + IDC_LIVE_CAPTION uCEFConstants

 

- + IDC_MANAGE_CHROME_PROFILES uCEFConstants

 

- + IDC_MANAGE_EXTENSIONS uCEFConstants

 

- + IDC_MANAGE_GOOGLE_ACCOUNT uCEFConstants

 

- + IDC_MANAGE_PASSWORDS_FOR_PAGE uCEFConstants

 

- + IDC_MAXIMIZE_WINDOW uCEFConstants

 

- + IDC_MEDIA_CONTEXT_MEDIA_STREAM_CAPTURE_LIST_FIRST uCEFConstants

 

- + IDC_MEDIA_CONTEXT_MEDIA_STREAM_CAPTURE_LIST_LAST uCEFConstants

 

- + IDC_MEDIA_ROUTER_ABOUT uCEFConstants

 

- + IDC_MEDIA_ROUTER_ALWAYS_SHOW_TOOLBAR_ACTION uCEFConstants

 

- + IDC_MEDIA_ROUTER_HELP uCEFConstants

 

- + IDC_MEDIA_ROUTER_LEARN_MORE uCEFConstants

 

- + IDC_MEDIA_ROUTER_SHOWN_BY_POLICY uCEFConstants

 

- + IDC_MEDIA_ROUTER_SHOW_IN_TOOLBAR uCEFConstants

 

- + IDC_MEDIA_ROUTER_TOGGLE_MEDIA_REMOTING uCEFConstants

 

- + IDC_MEDIA_STREAM_DEVICE_ALWAYS_ALLOW uCEFConstants

 

- + IDC_MEDIA_STREAM_DEVICE_STATUS_TRAY uCEFConstants

 

- + IDC_MEDIA_TOOLBAR_CONTEXT_REPORT_CAST_ISSUE uCEFConstants

 

- + IDC_MEDIA_TOOLBAR_CONTEXT_SHOW_OTHER_SESSIONS uCEFConstants

 

- + IDC_MIGRATE_LOCAL_CREDIT_CARD_FOR_PAGE uCEFConstants

 

- + IDC_MINIMIZE_WINDOW uCEFConstants

 

- + IDC_MinimumLabelValue uCEFConstants

 

- + IDC_MORE_TOOLS_MENU uCEFConstants

 

- + IDC_MOVE_TAB_NEXT uCEFConstants

 

- + IDC_MOVE_TAB_PREVIOUS uCEFConstants

 

- + IDC_MOVE_TAB_TO_NEW_WINDOW uCEFConstants

 

- + IDC_MUTE_TARGET_SITE uCEFConstants

 

- + IDC_NAME_WINDOW uCEFConstants

 

- + IDC_NEW_INCOGNITO_WINDOW uCEFConstants

 

- + IDC_NEW_TAB uCEFConstants

 

- + IDC_NEW_TAB_TO_RIGHT uCEFConstants

 

- + IDC_NEW_WINDOW uCEFConstants

 

- + IDC_OFFERS_AND_REWARDS_FOR_PAGE uCEFConstants

 

- + IDC_OPEN_CURRENT_URL uCEFConstants

 

- + IDC_OPEN_FILE uCEFConstants

 

- + IDC_OPEN_GUEST_PROFILE uCEFConstants

 

- + IDC_OPEN_IN_CHROME uCEFConstants

 

- + IDC_OPEN_IN_PWA_WINDOW uCEFConstants

 

- + IDC_OPEN_LINK_IN_PROFILE_FIRST uCEFConstants

 

- + IDC_OPEN_LINK_IN_PROFILE_LAST uCEFConstants

 

- + IDC_OPEN_RECENT_TAB uCEFConstants

 

- + IDC_OPEN_SAFETY_HUB uCEFConstants

 

- + IDC_OPTIONS uCEFConstants

 

- + IDC_ORGANIZE_TABS uCEFConstants

 

- + IDC_PASSWORDS_AND_AUTOFILL_MENU uCEFConstants

 

- + IDC_PASTE uCEFConstants

 

- + IDC_PASTE_AND_GO uCEFConstants

 

- + IDC_PERFORMANCE uCEFConstants

 

- + IDC_PIN_TARGET_TAB uCEFConstants

 

- + IDC_PRINT uCEFConstants

 

- + IDC_PROFILE_MAIN_MENU uCEFConstants

 

- + IDC_PROFILE_MENU_IN_APP_MENU uCEFConstants

 

- + IDC_PROFILING_ENABLED uCEFConstants

 

- + IDC_QRCODE_GENERATOR uCEFConstants

 

- + IDC_READING_LIST_MENU uCEFConstants

 

- + IDC_READING_LIST_MENU_ADD_TAB uCEFConstants

 

- + IDC_READING_LIST_MENU_SHOW_UI uCEFConstants

 

- + IDC_RECENT_TABS_LOGIN_FOR_DEVICE_TABS uCEFConstants

 

- + IDC_RECENT_TABS_MENU uCEFConstants

 

- + IDC_RECENT_TABS_NO_DEVICE_TABS uCEFConstants

 

- + IDC_RELOAD uCEFConstants

 

- + IDC_RELOAD_BYPASSING_CACHE uCEFConstants

 

- + IDC_RELOAD_CLEARING_CACHE uCEFConstants

 

- + IDC_RESTORE_TAB uCEFConstants

 

- + IDC_RESTORE_WINDOW uCEFConstants

 

- + IDC_ROUTE_MEDIA uCEFConstants

 

- + IDC_SAVE_AND_SHARE_MENU uCEFConstants

 

- + IDC_SAVE_AUTOFILL_ADDRESS uCEFConstants

 

- + IDC_SAVE_CREDIT_CARD_FOR_PAGE uCEFConstants

 

- + IDC_SAVE_IBAN_FOR_PAGE uCEFConstants

 

- + IDC_SAVE_PAGE uCEFConstants

 

- + IDC_SEARCH uCEFConstants

 

- + IDC_SELECT_LAST_TAB uCEFConstants

 

- + IDC_SELECT_NEXT_TAB uCEFConstants

 

- + IDC_SELECT_PREVIOUS_TAB uCEFConstants

 

- + IDC_SELECT_TAB_0 uCEFConstants

 

- + IDC_SELECT_TAB_1 uCEFConstants

 

- + IDC_SELECT_TAB_2 uCEFConstants

 

- + IDC_SELECT_TAB_3 uCEFConstants

 

- + IDC_SELECT_TAB_4 uCEFConstants

 

- + IDC_SELECT_TAB_5 uCEFConstants

 

- + IDC_SELECT_TAB_6 uCEFConstants

 

- + IDC_SELECT_TAB_7 uCEFConstants

 

- + IDC_SEND_TAB_TO_SELF uCEFConstants

 

- + IDC_SHARING_HUB uCEFConstants

 

- + IDC_SHARING_HUB_MENU uCEFConstants

 

- + IDC_SHARING_HUB_SCREENSHOT uCEFConstants

 

- + IDC_SHOW_ADDRESSES uCEFConstants

 

- + IDC_SHOW_APP_MENU uCEFConstants

 

- + IDC_SHOW_AS_TAB uCEFConstants

 

- + IDC_SHOW_AVATAR_MENU uCEFConstants

 

- + IDC_SHOW_BETA_FORUM uCEFConstants

 

- + IDC_SHOW_BOOKMARK_BAR uCEFConstants

 

- + IDC_SHOW_BOOKMARK_MANAGER uCEFConstants

 

- + IDC_SHOW_BOOKMARK_SIDE_PANEL uCEFConstants

 

- + IDC_SHOW_CHROME_LABS uCEFConstants

 

- + IDC_SHOW_DOWNLOADS uCEFConstants

 

- + IDC_SHOW_FULL_URLS uCEFConstants

 

- + IDC_SHOW_HISTORY uCEFConstants

 

- + IDC_SHOW_HISTORY_CLUSTERS_SIDE_PANEL uCEFConstants

 

- + IDC_SHOW_MANAGEMENT_PAGE uCEFConstants

 

- + IDC_SHOW_PASSWORD_CHECKUP uCEFConstants

 

- + IDC_SHOW_PASSWORD_MANAGER uCEFConstants

 

- + IDC_SHOW_PAYMENT_METHODS uCEFConstants

 

- + IDC_SHOW_READING_MODE_SIDE_PANEL uCEFConstants

 

- + IDC_SHOW_SAVE_LOCAL_CARD_SIGN_IN_PROMO_IF_APPLICABLE uCEFConstants

 

- + IDC_SHOW_SEARCH_COMPANION uCEFConstants

 

- + IDC_SHOW_SETTINGS_CHANGE_FIRST uCEFConstants

 

- + IDC_SHOW_SETTINGS_CHANGE_LAST uCEFConstants

 

- + IDC_SHOW_SETTINGS_RESET_BUBBLE uCEFConstants

 

- + IDC_SHOW_SIGNIN_WHEN_PAUSED uCEFConstants

 

- + IDC_SHOW_SRT_BUBBLE uCEFConstants

 

- + IDC_SHOW_SYNC_SETTINGS uCEFConstants

 

- + IDC_SHOW_TRANSLATE uCEFConstants

 

- + IDC_SPELLCHECK_ADD_TO_DICTIONARY uCEFConstants

 

- + IDC_SPELLCHECK_LANGUAGES_FIRST uCEFConstants

 

- + IDC_SPELLCHECK_LANGUAGES_LAST uCEFConstants

 

- + IDC_SPELLCHECK_MENU uCEFConstants

 

- + IDC_SPELLCHECK_MULTI_LINGUAL uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_0 uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_1 uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_2 uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_3 uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_4 uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_LAST uCEFConstants

 

- + IDC_SPELLPANEL_TOGGLE uCEFConstants

 

- + IDC_STATUS_TRAY_KEEP_CHROME_RUNNING_IN_BACKGROUND uCEFConstants

 

- + IDC_STOP uCEFConstants

 

- + IDC_TAB_MENU uCEFConstants

 

- + IDC_TAB_SEARCH uCEFConstants

 

- + IDC_TAB_SEARCH_CLOSE uCEFConstants

 

- + IDC_TAKE_SCREENSHOT uCEFConstants

 

- + IDC_TASK_MANAGER uCEFConstants

 

- + IDC_TOGGLE_FULLSCREEN_TOOLBAR uCEFConstants

 

- + IDC_TOGGLE_JAVASCRIPT_APPLE_EVENTS uCEFConstants

 

- + IDC_TOGGLE_MULTITASK_MENU uCEFConstants

 

- + IDC_TOGGLE_REQUEST_TABLET_SITE uCEFConstants

 

- + IDC_TRANSLATE_ORIGINAL_LANGUAGE_BASE uCEFConstants

 

- + IDC_TRANSLATE_TARGET_LANGUAGE_BASE uCEFConstants

 

- + IDC_TURN_ON_SYNC uCEFConstants

 

- + IDC_UNFOLLOW uCEFConstants

 

- + IDC_UPDATE_SIDE_PANEL_PIN_STATE uCEFConstants

 

- + IDC_UPGRADE_DIALOG uCEFConstants

 

- + IDC_USE_SYSTEM_TITLE_BAR uCEFConstants

 

- + IDC_VIEW_MENU uCEFConstants

 

- + IDC_VIEW_PASSWORDS uCEFConstants

 

- + IDC_VIEW_SOURCE uCEFConstants

 

- + IDC_VIRTUAL_CARD_ENROLL uCEFConstants

 

- + IDC_VIRTUAL_CARD_MANUAL_FALLBACK uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_2 uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_3 uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_4 uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_5 uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_LAST uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_NEXT uCEFConstants

 

- + IDC_WEBAUTHN uCEFConstants

 

- + IDC_WEB_APP_MENU_APP_INFO uCEFConstants

 

- + IDC_WEB_APP_SETTINGS uCEFConstants

 

- + IDC_WINDOW_CLOSE_OTHER_TABS uCEFConstants

 

- + IDC_WINDOW_CLOSE_TABS_TO_RIGHT uCEFConstants

 

- + IDC_WINDOW_GROUP_TAB uCEFConstants

 

- + IDC_WINDOW_MENU uCEFConstants

 

- + IDC_WINDOW_MUTE_SITE uCEFConstants

 

- + IDC_WINDOW_PIN_TAB uCEFConstants

 

- + IDC_WRITING_DIRECTION_DEFAULT uCEFConstants

 

- + IDC_WRITING_DIRECTION_LTR uCEFConstants

 

- + IDC_WRITING_DIRECTION_MENU uCEFConstants

 

- + IDC_WRITING_DIRECTION_RTL uCEFConstants

 

- + IDC_ZOOM_MENU uCEFConstants

 

- + IDC_ZOOM_MINUS uCEFConstants

 

- + IDC_ZOOM_NORMAL uCEFConstants

 

- + IDC_ZOOM_PLUS uCEFConstants

 

- + INFINITE uCEFConstants

 

- + JSON_WRITER_DEFAULT uCEFConstants

Default behavior.

- + JSON_WRITER_OMIT_BINARY_VALUES uCEFConstants

This option instructs the writer that if a Binary value is encountered, the value (and key if within a dictionary) will be omitted from the output, and success will be returned. Otherwise, if a binary value is encountered, failure will be returned.

- + JSON_WRITER_OMIT_DOUBLE_TYPE_PRESERVATION uCEFConstants

This option instructs the writer to write doubles that have no fractional part as a normal integer (i.e., without using exponential notation or appending a '.0') as long as the value is within the range of a 64-bit int.

- + JSON_WRITER_PRETTY_PRINT uCEFConstants

Return a slightly nicer formatted json string (pads with whitespace to help with readability).

- + Kernel32DLL uCEFMiscFunctions

 

- + KEYBOARD_LAYOUT_EN_US uCEFOSRIMEHandler

 

- + LIBCEF_DLL uCEFApplication

 

- + LIBCEF_DLL uCEFApplicationCore

 

- + LIBCEF_LOCALE_DIR uCEFApplicationCore

 

- + LIBCEF_LOCALE_ENUS uCEFApplicationCore

 

- + LIBCEF_PAK uCEFApplicationCore

for InitLibLocationFromArgs

- + LOGSEVERITY_DEBUG uCEFConstants

DEBUG logging.

- + LOGSEVERITY_DEFAULT uCEFConstants

Default logging (currently INFO logging).

- + LOGSEVERITY_DISABLE uCEFConstants

Disable logging to file for all messages, and to stderr for messages with severity less than FATAL.

- + LOGSEVERITY_ERROR uCEFConstants

ERROR logging.

- + LOGSEVERITY_FATAL uCEFConstants

FATAL logging.

- + LOGSEVERITY_INFO uCEFConstants

INFO logging.

- + LOGSEVERITY_VERBOSE uCEFConstants

Verbose logging.

- + LOGSEVERITY_WARNING uCEFConstants

WARNING logging.

- + LOG_ITEMS_DEFAULT uCEFConstants

Prepend the default list of items.

- + LOG_ITEMS_FLAG_PROCESS_ID uCEFConstants

Prepend the process ID.

- + LOG_ITEMS_FLAG_THREAD_ID uCEFConstants

Prepend the thread ID.

- + LOG_ITEMS_FLAG_TICK_COUNT uCEFConstants

Prepend the tickcount.

- + LOG_ITEMS_FLAG_TIME_STAMP uCEFConstants

Prepend the timestamp.

- + LOG_ITEMS_NONE uCEFConstants

Prepend no items.

- + MENU_ID_ADD_TO_DICTIONARY uCEFConstants

 

- + MENU_ID_BACK uCEFConstants

Navigation.

- + MENU_ID_COPY uCEFConstants

 

- + MENU_ID_CUSTOM_FIRST uCEFConstants

Custom menu items originating from the renderer process.

- + MENU_ID_CUSTOM_LAST uCEFConstants

 

- + MENU_ID_CUT uCEFConstants

 

- + MENU_ID_DELETE uCEFConstants

 

- + MENU_ID_FIND uCEFConstants

Miscellaneous.

- + MENU_ID_FORWARD uCEFConstants

 

- + MENU_ID_NO_SPELLING_SUGGESTIONS uCEFConstants

 

- + MENU_ID_PASTE uCEFConstants

 

- + MENU_ID_PRINT uCEFConstants

 

- + MENU_ID_REDO uCEFConstants

 

- + MENU_ID_RELOAD uCEFConstants

 

- + MENU_ID_RELOAD_NOCACHE uCEFConstants

 

- + MENU_ID_SELECT_ALL uCEFConstants

 

- + MENU_ID_SPELLCHECK_SUGGESTION_0 uCEFConstants

Spell checking word correction suggestions.

- + MENU_ID_SPELLCHECK_SUGGESTION_1 uCEFConstants

 

- + MENU_ID_SPELLCHECK_SUGGESTION_2 uCEFConstants

 

- + MENU_ID_SPELLCHECK_SUGGESTION_3 uCEFConstants

 

- + MENU_ID_SPELLCHECK_SUGGESTION_4 uCEFConstants

 

- + MENU_ID_SPELLCHECK_SUGGESTION_LAST uCEFConstants

 

- + MENU_ID_STOPLOAD uCEFConstants

 

- + MENU_ID_UNDO uCEFConstants

Editing.

- + MENU_ID_USER_FIRST uCEFConstants

All user-defined menu IDs should come between MENU_ID_USER_FIRST and MENU_ID_USER_LAST to avoid overlapping the Chromium and CEF ID ranges defined in the tools/gritsettings/resource_ids file.

- + MENU_ID_USER_LAST uCEFConstants

 

- + MENU_ID_VIEW_SOURCE uCEFConstants

 

- + Netapi32DLL uCEFMiscFunctions

 

- + NTDLL uCEFMiscFunctions

 

- + pfidLinux uCEFConstants

 

- + pfidOSX uCEFConstants

 

- + pfidWindows uCEFConstants

 

- + pidLinux64 uCEFConstants

 

- + pidOSX32 uCEFConstants

 

- + pidOSX64 uCEFConstants

 

- + pidOSXArm64 uCEFConstants

 

- + pidWin32 uCEFConstants

If any of the platform IDs are not defined then we set them as 0 to avoid build errors on older Delphi versions.

- + pidWin64 uCEFConstants

 

- + QM_EDITFLAG_CAN_COPY uCEFConstants

 

- + QM_EDITFLAG_CAN_CUT uCEFConstants

 

- + QM_EDITFLAG_CAN_ELLIPSIS uCEFConstants

 

- + QM_EDITFLAG_CAN_PASTE uCEFConstants

 

- + QM_EDITFLAG_NONE uCEFConstants

Supported quick menu state bit flags.

- + SHLWAPIDLL uCEFMiscFunctions

 

- + SSL_CONNECTION_VERSION_QUIC uCEFConstants

 

- + SSL_CONNECTION_VERSION_SSL2 uCEFConstants

 

- + SSL_CONNECTION_VERSION_SSL3 uCEFConstants

 

- + SSL_CONNECTION_VERSION_TLS1 uCEFConstants

 

- + SSL_CONNECTION_VERSION_TLS1_1 uCEFConstants

 

- + SSL_CONNECTION_VERSION_TLS1_2 uCEFConstants

 

- + SSL_CONNECTION_VERSION_TLS1_3 uCEFConstants

 

- + SSL_CONNECTION_VERSION_UNKNOWN uCEFConstants

Supported SSL version values.

- + SSL_CONTENT_DISPLAYED_INSECURE_CONTENT uCEFConstants

 

- + SSL_CONTENT_NORMAL_CONTENT uCEFConstants

Supported SSL content status flags. See content/public/common/ssl_status.h for more information.

- + SSL_CONTENT_RAN_INSECURE_CONTENT uCEFConstants

 

- + TT_AUTO_BOOKMARK uCEFConstants -

User got to this page through a suggestion in the UI (for example, via the destinations page). Chrome runtime only.

+

User got to this page through a suggestion in the UI (for example, via the destinations page). Chrome style only.

- + TT_AUTO_SUBFRAME uCEFConstants

Source is a subframe navigation. This is any content that is automatically loaded in a non-toplevel frame. For example, if a page consists of several frames containing ads, those ad URLs will have this transition type. The user may not even realize the content in these pages is a separate frame, so may not care about the URL.

- + TT_AUTO_TOPLEVEL uCEFConstants -

This is a toplevel navigation. This is any content that is automatically loaded in a toplevel frame. For example, opening a tab to show the ASH screen saver, opening the devtools window, opening the NTP after the safe browsing warning, opening web-based dialog boxes are examples of AUTO_TOPLEVEL navigations. Chrome runtime only.

+

This is a toplevel navigation. This is any content that is automatically loaded in a toplevel frame. For example, opening a tab to show the ASH screen saver, opening the devtools window, opening the NTP after the safe browsing warning, opening web-based dialog boxes are examples of AUTO_TOPLEVEL navigations. Chrome style only.

- + TT_BLOCKED_FLAG uCEFConstants

Attempted to visit a URL but was blocked.

- + TT_CHAIN_END_FLAG uCEFConstants

The last transition in a redirect chain.

- + TT_CHAIN_START_FLAG uCEFConstants

The beginning of a navigation chain.

- + TT_CLIENT_REDIRECT_FLAG uCEFConstants

Redirects caused by JavaScript or a meta refresh tag on the page.

- + TT_DIRECT_LOAD_FLAG uCEFConstants

Loaded a URL directly via CreateBrowser, LoadURL or LoadRequest.

- + TT_EXPLICIT uCEFConstants

Source is some other "explicit" navigation. This is the default value for navigations where the actual type is unknown. See also TT_DIRECT_LOAD_FLAG.

- + TT_FORM_SUBMIT uCEFConstants

Source is a form submission by the user. NOTE: In some situations submitting a form does not result in this transition type. This can happen if the form uses a script to submit the contents.

- + TT_FORWARD_BACK_FLAG uCEFConstants

Used the Forward or Back function to navigate among browsing history. Will be ORed to the transition type for the original load.

- + TT_FROM_API_FLAG uCEFConstants -

The transition originated from an external application; the exact definition of this is embedder dependent. Chrome runtime and extension system only.

- - -TT_GENERATED -uCEFConstants -

User got to this page by typing in the URL bar and selecting an entry that did not look like a URL. For example, a match might have the URL of a Google search result page, but appear like "Search Google for ...". These are not quite the same as EXPLICIT navigations because the user didn't type or see the destination URL. Chrome runtime only. See also TT_KEYWORD.

+

The transition originated from an external application; the exact definition of this is embedder dependent. Chrome style only.

-TT_HOME_PAGE_FLAG +TT_GENERATED uCEFConstants -

User is navigating to the home page. Chrome runtime only.

+

User got to this page by typing in the URL bar and selecting an entry that did not look like a URL. For example, a match might have the URL of a Google search result page, but appear like "Search Google for ...". These are not quite the same as EXPLICIT navigations because the user didn't type or see the destination URL. Chrome style only. See also TT_KEYWORD.

+TT_HOME_PAGE_FLAG +uCEFConstants +

User is navigating to the home page. Chrome style only.

+ + TT_IS_REDIRECT_MASK uCEFConstants

Used to test whether a transition involves a redirect.

- + TT_KEYWORD uCEFConstants -

The url was generated from a replaceable keyword other than the default search provider. If the user types a keyword (which also applies to tab-to-search) in the omnibox this qualifier is applied to the transition type of the generated url. TemplateURLModel then may generate an additional visit with a transition type of TT_KEYWORD_GENERATED against the url 'http://' + keyword. For example, if you do a tab-to-search against wikipedia the generated url has a transition qualifer of TT_KEYWORD, and TemplateURLModel generates a visit for 'wikipedia.org' with a transition type of TT_KEYWORD_GENERATED. Chrome runtime only.

- - -TT_KEYWORD_GENERATED -uCEFConstants -

Corresponds to a visit generated for a keyword. See description of TT_KEYWORD for more details. Chrome runtime only.

+

The url was generated from a replaceable keyword other than the default search provider. If the user types a keyword (which also applies to tab-to-search) in the omnibox this qualifier is applied to the transition type of the generated url. TemplateURLModel then may generate an additional visit with a transition type of TT_KEYWORD_GENERATED against the url 'http://' + keyword. For example, if you do a tab-to-search against wikipedia the generated url has a transition qualifer of TT_KEYWORD, and TemplateURLModel generates a visit for 'wikipedia.org' with a transition type of TT_KEYWORD_GENERATED. Chrome style only.

+TT_KEYWORD_GENERATED +uCEFConstants +

Corresponds to a visit generated for a keyword. See description of TT_KEYWORD for more details. Chrome style only.

+ + TT_LINK uCEFConstants

Source is a link click or the JavaScript window.open function. This is also the default value for requests like sub-resource loads that are not navigations.

- + TT_MANUAL_SUBFRAME uCEFConstants

Source is a subframe navigation explicitly requested by the user that will generate new navigation entries in the back/forward list. These are probably more important than frames that were automatically loaded in the background because the user probably cares about the fact that this link was loaded.

- + TT_QUALIFIER_MASK uCEFConstants

General mask defining the bits used for the qualifiers.

- + TT_RELOAD uCEFConstants

Source is a "reload" of the page via the Reload function or by re-visiting the same URL. NOTE: This is distinct from the concept of whether a particular load uses "reload semantics" (i.e. bypasses cached data).

- + TT_SERVER_REDIRECT_FLAG uCEFConstants

Redirects sent from the server by HTTP headers.

- + TT_SOURCE_MASK uCEFConstants

General mask defining the bits used for the source values.

- + UR_FLAG_ALLOW_STORED_CREDENTIALS uCEFConstants

If set user name, password, and cookies may be sent with the request, and cookies may be saved from the response.

- + UR_FLAG_DISABLE_CACHE uCEFConstants

If set the cache will not be used at all. Setting this value is equivalent to specifying the "Cache-Control: no-store" request header. Setting this value in combination with UR_FLAG_ONLY_FROM_CACHE will cause the request to fail.

- + UR_FLAG_NONE uCEFConstants

Default behavior.

- + UR_FLAG_NO_DOWNLOAD_DATA uCEFConstants

If set the ICefURLRequestClient.OnDownloadData method will not be called.

- + UR_FLAG_NO_RETRY_ON_5XX uCEFConstants

If set 5XX redirect errors will be propagated to the observer instead of automatically re-tried. This currently only applies for requests originated in the browser process.

- + UR_FLAG_ONLY_FROM_CACHE uCEFConstants

If set the request will fail if it cannot be served from the cache (or some equivalent local store). Setting this value is equivalent to specifying the "Cache-Control: only-if-cached" request header. Setting this value in combination with UR_FLAG_SKIP_CACHE or UR_FLAG_DISABLE_CACHE will cause the request to fail.

- + UR_FLAG_REPORT_UPLOAD_PROGRESS uCEFConstants

If set upload progress events will be generated when a request has a body.

- + UR_FLAG_SKIP_CACHE uCEFConstants

If set the cache will be skipped when handling the request. Setting this value is equivalent to specifying the "Cache-Control: no-cache" request header. Setting this value in combination with UR_FLAG_ONLY_FROM_CACHE will cause the request to fail.

- + UR_FLAG_STOP_ON_REDIRECT uCEFConstants

If set 3XX responses will cause the fetch to halt immediately rather than continue through the redirect.

- + User32DLL uCEFMiscFunctions

 

- + USER_DEFAULT_SCREEN_DPI uCEFConstants

 

- + UU_NONE uCEFConstants

Don't unescape anything at all.

- + UU_NORMAL uCEFConstants

Don't unescape anything special, but all normal unescaping will happen. This is a placeholder and can't be combined with other flags (since it's just the absence of them). All other unescape rules imply "normal" in addition to their special meaning. Things like escaped letters, digits, and most symbols will get unescaped with this mode.

- + UU_PATH_SEPARATORS uCEFConstants

Unescapes '/' and '\\'. If these characters were unescaped, the resulting URL won't be the same as the source one. Moreover, they are dangerous to unescape in strings that will be used as file paths or names. This value should only be used when slashes don't have special meaning, like data URLs.

- + UU_REPLACE_PLUS_WITH_SPACE uCEFConstants

URL queries use "+" for space. This flag controls that replacement.

- + UU_SPACES uCEFConstants

Convert %20 to spaces. In some places where we're showing URLs, we may want this. In places where the URL may be copied and pasted out, then you wouldn't want this since it might not be interpreted in one piece by other applications.

- + UU_URL_SPECIAL_CHARS_EXCEPT_PATH_SEPARATORS uCEFConstants

Unescapes various characters that will change the meaning of URLs, including '%', '+', '&', '#'. Does not unescape path separators. If these characters were unescaped, the resulting URL won't be the same as the source one. This flag is used when generating final output like filenames for URLs where we won't be interpreting as a URL and want to do as much unescaping as possible.

- + V8_PROPERTY_ATTRIBUTE_DONTDELETE uCEFConstants

Not configurable

- + V8_PROPERTY_ATTRIBUTE_DONTENUM uCEFConstants

Not enumerable

- + V8_PROPERTY_ATTRIBUTE_NONE uCEFConstants

Writeable, Enumerable, Configurable

- + V8_PROPERTY_ATTRIBUTE_READONLY uCEFConstants

Not writeable

- + WM_POINTERDOWN uCEFConstants

 

- + WM_POINTERUP uCEFConstants

 

- + WM_POINTERUPDATE uCEFConstants

 

- + WM_TOUCH uCEFConstants

Lazarus and some old Delphi versions don't have these message contants

- + YOUTUBE_RESTRICT_MODERATE uCEFConstants

 

- + YOUTUBE_RESTRICT_OFF uCEFConstants

delay in ms to enable the browser focus <summary> YouTube restrict mode. </summary> <remarks> <para><see href="https://chromium.googlesource.com/chromium/src/+/refs/tags/77.0.3865.90/chrome/common/net/safe_search_util.h">Chromium source file: /chrome/common/net/safe_search_util.h (YouTubeRestrictMode)</see></para> <para><see href="https://www.chromium.org/administrators/policy-list-3#ForceYouTubeRestrict">Chromium policy list: https://www.chromium.org/administrators/policy-list-3#ForceYouTubeRestrict</see></para> </remarks>

- + YOUTUBE_RESTRICT_STRICT uCEFConstants

 

- + ZoomStepValues uCEFConstants

 

- + ZOOM_PCT_DELTA uCEFConstants

 

- + ZOOM_STEP_100 uCEFConstants

 

- + ZOOM_STEP_110 uCEFConstants

 

- + ZOOM_STEP_125 uCEFConstants

 

- + ZOOM_STEP_150 uCEFConstants

 

- + ZOOM_STEP_175 uCEFConstants

 

- + ZOOM_STEP_200 uCEFConstants

 

- + ZOOM_STEP_25 uCEFConstants

 

- + ZOOM_STEP_250 uCEFConstants

 

- + ZOOM_STEP_300 uCEFConstants

 

- + ZOOM_STEP_33 uCEFConstants

 

- + ZOOM_STEP_400 uCEFConstants

 

- + ZOOM_STEP_50 uCEFConstants

 

- + ZOOM_STEP_500 uCEFConstants

 

- + ZOOM_STEP_67 uCEFConstants

 

- + ZOOM_STEP_75 uCEFConstants

 

- + ZOOM_STEP_90 uCEFConstants

 

- + ZOOM_STEP_DEF uCEFConstants

 

- + ZOOM_STEP_MAX uCEFConstants

 

- + ZOOM_STEP_MIN uCEFConstants

 

- + ZOOM_STEP_UNK uCEFConstants

 

diff --git a/docs/html/AllIdentifiers.html b/docs/html/AllIdentifiers.html index 54af1e1d..68a9c495 100644 --- a/docs/html/AllIdentifiers.html +++ b/docs/html/AllIdentifiers.html @@ -959,6 +959,16 @@

/include/capi/cef_drag_data_capi.h

+cef_dump_without_crashing +uCEFLibFunctions +

/include/internal/cef_dump_without_crashing_internal.h

+ + +cef_dump_without_crashing_unthrottled +uCEFLibFunctions +

 

+ + cef_end_tracing uCEFLibFunctions

 

@@ -1259,621 +1269,626 @@

 

+CEF_ONEDAYINMILLISECONDS +uCEFConstants +

This value may be used with the mseconds_between_dumps parameter in GlobalCEFApp.DumpWithoutCrashing.

+ + CEF_OSR_FRAMERATE_DEFAULT uCEFConstants

Default values for the Windowsless framerate setting in TChromiumOptions The values are frames per second.

- + CEF_OSR_SHARED_TEXTURES_FRAMERATE_DEFAULT uCEFConstants

Used when the shared textures are disabled.

- + cef_panel_create uCEFLibFunctions

/include/capi/views/cef_panel_capi.h

- + cef_parse_json uCEFLibFunctions

 

- + cef_parse_jsonand_return_error uCEFLibFunctions

 

- + cef_parse_json_buffer uCEFLibFunctions

 

- + cef_parse_url uCEFLibFunctions

 

- + CEF_PENDINGINVALIDATE uCEFConstants

 

- + CEF_PENDINGRESIZE uCEFConstants

 

- + CEF_PERMISSION_TYPE_ACCESSIBILITY_EVENTS uCEFConstants

 

- + CEF_PERMISSION_TYPE_AR_SESSION uCEFConstants

 

- + CEF_PERMISSION_TYPE_CAMERA_PAN_TILT_ZOOM uCEFConstants

 

- + CEF_PERMISSION_TYPE_CAMERA_STREAM uCEFConstants

 

- + CEF_PERMISSION_TYPE_CAPTURED_SURFACE_CONTROL uCEFConstants

 

- + CEF_PERMISSION_TYPE_CLIPBOARD uCEFConstants

 

- + CEF_PERMISSION_TYPE_DISK_QUOTA uCEFConstants

 

- + CEF_PERMISSION_TYPE_FILE_SYSTEM_ACCESS uCEFConstants

 

- + CEF_PERMISSION_TYPE_GEOLOCATION uCEFConstants

 

- + CEF_PERMISSION_TYPE_IDENTITY_PROVIDER uCEFConstants

 

- + CEF_PERMISSION_TYPE_IDLE_DETECTION uCEFConstants

 

- + CEF_PERMISSION_TYPE_KEYBOARD_LOCK uCEFConstants

 

- + CEF_PERMISSION_TYPE_LOCAL_FONTS uCEFConstants

 

- + CEF_PERMISSION_TYPE_MIC_STREAM uCEFConstants

 

- + CEF_PERMISSION_TYPE_MIDI_SYSEX uCEFConstants

 

- + CEF_PERMISSION_TYPE_MULTIPLE_DOWNLOADS uCEFConstants

 

- + CEF_PERMISSION_TYPE_NONE uCEFConstants -

Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with the Chrome runtime. Should be kept in sync with Chromium's permissions::RequestType type.

+

Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with Chrome style. Should be kept in sync with Chromium's permissions::RequestType type.

- + CEF_PERMISSION_TYPE_NOTIFICATIONS uCEFConstants

 

- + CEF_PERMISSION_TYPE_POINTER_LOCK uCEFConstants

 

- + CEF_PERMISSION_TYPE_PROTECTED_MEDIA_IDENTIFIER uCEFConstants

 

- + CEF_PERMISSION_TYPE_REGISTER_PROTOCOL_HANDLER uCEFConstants

 

- + CEF_PERMISSION_TYPE_STORAGE_ACCESS uCEFConstants

 

- + CEF_PERMISSION_TYPE_TOP_LEVEL_STORAGE_ACCESS uCEFConstants

 

- + CEF_PERMISSION_TYPE_VR_SESSION uCEFConstants

 

- + CEF_PERMISSION_TYPE_WINDOW_MANAGEMENT uCEFConstants

 

- + cef_post_data_create uCEFLibFunctions

 

- + cef_post_data_element_create uCEFLibFunctions

 

- + cef_post_delayed_task uCEFLibFunctions

 

- + cef_post_task uCEFLibFunctions

 

- + CEF_PREFERENCES_SAVED uCEFConstants

 

- + cef_preference_manager_get_global uCEFLibFunctions

/include/capi/cef_preference_capi.h

- + CEF_PRESSED_MOUSE_BUTTONS_BACK uCEFConstants

 

- + CEF_PRESSED_MOUSE_BUTTONS_FORWARD uCEFConstants

 

- + CEF_PRESSED_MOUSE_BUTTONS_LEFT uCEFConstants

 

- + CEF_PRESSED_MOUSE_BUTTONS_MIDDLE uCEFConstants

 

- + CEF_PRESSED_MOUSE_BUTTONS_NONE uCEFConstants

Modifier values used in the Input.dispatchMouseEvent DevTools method. A number indicating which buttons are pressed on the mouse when a mouse event is triggered. Left=1, Right=2, Middle=4, Back=8, Forward=16, None=0. https://chromedevtools.github.io/devtools-protocol/tot/Input/#method-dispatchMouseEvent

- + CEF_PRESSED_MOUSE_BUTTONS_RIGHT uCEFConstants

 

- + cef_print_settings_create uCEFLibFunctions

/include/capi/cef_print_settings_capi.h

- + cef_process_message_create uCEFLibFunctions

/include/capi/cef_process_message_capi.h

- + CEF_PROXYTYPE_AUTODETECT uCEFConstants

Auto_detect proxy type: Auto detect proxy settings.

- + CEF_PROXYTYPE_DIRECT uCEFConstants

Direct proxy type: Never use a proxy.

- + CEF_PROXYTYPE_FIXED_SERVERS uCEFConstants

Fixed_servers proxy type: Use fixed proxy servers.

- + CEF_PROXYTYPE_PAC_SCRIPT uCEFConstants

Pac_script proxy type: Use a .pac proxy script.

- + CEF_PROXYTYPE_SYSTEM uCEFConstants

System proxy type: Use system proxy settings.

- + CEF_PUMPHAVEWORK uCEFConstants

 

- + cef_quit_message_loop uCEFLibFunctions

 

- + cef_register_extension uCEFLibFunctions

 

- + cef_register_scheme_handler_factory uCEFLibFunctions

/include/capi/cef_scheme_capi.h

- + cef_remove_cross_origin_whitelist_entry uCEFLibFunctions

 

- + cef_request_context_create_context uCEFLibFunctions

 

- + cef_request_context_get_global_context uCEFLibFunctions

/include/capi/cef_request_context_capi.h

- + cef_request_create uCEFLibFunctions

/include/capi/cef_request_capi.h

- + cef_resolve_url uCEFLibFunctions

/include/capi/cef_parser_capi.h

- + cef_resource_bundle_get_global uCEFLibFunctions

/include/capi/cef_resource_bundle_capi.h

- + cef_response_create uCEFLibFunctions

/include/capi/cef_response_capi.h

- + CEF_RESULT_CODE_ACTION_DISALLOWED_BY_POLICY uCEFConstants

The action is not allowed by a policy.

- + CEF_RESULT_CODE_BAD_PROCESS_TYPE uCEFConstants

The process is of an unknown type.

- + CEF_RESULT_CODE_CHROME_FIRST uCEFConstants

First Chrome result code.

- + CEF_RESULT_CODE_CHROME_LAST uCEFConstants

Last Chrome result code.

- + CEF_RESULT_CODE_CLOUD_POLICY_ENROLLMENT_FAILED uCEFConstants

Cloud policy enrollment is failed or given up by user.

- + CEF_RESULT_CODE_DOWNGRADE_AND_RELAUNCH uCEFConstants

Chrome was downgraded since the last launch. Perform downgrade processing and relaunch.

- + CEF_RESULT_CODE_EULA_REFUSED uCEFConstants

Returned when the user has not yet accepted the EULA.

- + CEF_RESULT_CODE_GPU_DEAD_ON_ARRIVAL uCEFConstants

The GPU process exited because initialization failed.

- + CEF_RESULT_CODE_GPU_EXIT_ON_CONTEXT_LOST uCEFConstants

The GPU process was terminated due to context lost.

- + CEF_RESULT_CODE_HUNG uCEFConstants

Process hung.

- + CEF_RESULT_CODE_IMPORTER_HUNG uCEFConstants

Browser import hung and was killed.

- + CEF_RESULT_CODE_INSTALL_FROM_WEBSTORE_ERROR_2 uCEFConstants

Failed to install an item from the webstore when the kInstallEphemeralAppFromWebstore command line flag was present. As this flag is no longer supported, this return code should never be returned.

- + CEF_RESULT_CODE_INVALID_CMDLINE_URL uCEFConstants

An invalid command line url was given.

- + CEF_RESULT_CODE_INVALID_POST_LOGIN_PARAMS uCEFConstants

The Lacros process exited because the post-login parameters received from Ash are either empty or invalid (Lacros-only).

- + CEF_RESULT_CODE_INVALID_SANDBOX_STATE uCEFConstants

A browser process was sandboxed. This should never happen.

- + CEF_RESULT_CODE_KILLED uCEFConstants

Process was killed by user or system.

- + CEF_RESULT_CODE_KILLED_BAD_MESSAGE uCEFConstants

A bad message caused the process termination.

- + CEF_RESULT_CODE_MACHINE_LEVEL_INSTALL_EXISTS uCEFConstants

Machine level install exists.

- + CEF_RESULT_CODE_MISSING_DATA uCEFConstants

A critical chrome file is missing.

- + CEF_RESULT_CODE_NORMAL_EXIT uCEFConstants

Normal exit code.

- + CEF_RESULT_CODE_NORMAL_EXIT_CANCEL uCEFConstants

For experiments this return code means that the user canceled causes the did_run "dr" signal to be reset soi this chrome run does not count as active chrome usage.

- + CEF_RESULT_CODE_NORMAL_EXIT_EXP1 uCEFConstants

Generic code used to communicate some simple outcome back to the process that launched us. This is used for experiments and the actual meaning depends on the experiment.

- + CEF_RESULT_CODE_NORMAL_EXIT_EXP2 uCEFConstants

Generic code used to communicate some simple outcome back to the process that launched us. This is used for experiments and the actual meaning depends on the experiment.

- + CEF_RESULT_CODE_NORMAL_EXIT_EXP3 uCEFConstants

Generic code used to communicate some simple outcome back to the process that launched us. This is used for experiments and the actual meaning depends on the experiment.

- + CEF_RESULT_CODE_NORMAL_EXIT_EXP4 uCEFConstants

Generic code used to communicate some simple outcome back to the process that launched us. This is used for experiments and the actual meaning depends on the experiment.

- + CEF_RESULT_CODE_NORMAL_EXIT_PACK_EXTENSION_SUCCESS uCEFConstants

An early startup command was executed and the browser must exit.

- + CEF_RESULT_CODE_NORMAL_EXIT_PROCESS_NOTIFIED uCEFConstants

The browser process exited early by passing the command line to another running browser.

- + CEF_RESULT_CODE_NORMAL_EXIT_UPGRADE_RELAUNCHED uCEFConstants

Chrome detected that there was a new version waiting to launch and renamed the files and launched the new version. This result code is never returned from the main process, but is instead used as a signal for early termination of browser. See `IsNormalResultCode` below.

- + CEF_RESULT_CODE_NOTUSED_1 uCEFConstants

A dummy value we should not use. See crbug.com/152285.

- + CEF_RESULT_CODE_NOTUSED_2 uCEFConstants

A dummy value we should not use. See crbug.com/152285.

- + CEF_RESULT_CODE_PACK_EXTENSION_ERROR uCEFConstants

Failed to pack an extension via the cmd line.

- + CEF_RESULT_CODE_PROFILE_IN_USE uCEFConstants

The profile was in use on another host.

- + CEF_RESULT_CODE_RESPAWN_FAILED uCEFConstants

Trying to restart the browser we crashed.

- + CEF_RESULT_CODE_SANDBOX_FATAL_CACHEDISABLE uCEFConstants

Windows sandbox failed to forbid HCKU caching.

- + CEF_RESULT_CODE_SANDBOX_FATAL_CLOSEHANDLES uCEFConstants

Windows sandbox failed to close pending handles.

- + CEF_RESULT_CODE_SANDBOX_FATAL_DROPTOKEN uCEFConstants

Windows sandbox could not lower the token.

- + CEF_RESULT_CODE_SANDBOX_FATAL_FIRST uCEFConstants

First Sandbox result code.

- + CEF_RESULT_CODE_SANDBOX_FATAL_FLUSHANDLES uCEFConstants

Windows sandbox failed to flush registry handles.

- + CEF_RESULT_CODE_SANDBOX_FATAL_INTEGRITY uCEFConstants

Windows sandbox could not set the integrity level.

- + CEF_RESULT_CODE_SANDBOX_FATAL_LAST uCEFConstants

Last Sandbox result code.

- + CEF_RESULT_CODE_SANDBOX_FATAL_MEMORY_EXCEEDED uCEFConstants

Windows sandbox exceeded the job memory limit.

- + CEF_RESULT_CODE_SANDBOX_FATAL_MITIGATION uCEFConstants

Windows sandbox could not set the mitigation policy.

- + CEF_RESULT_CODE_SANDBOX_FATAL_WARMUP uCEFConstants

Windows sandbox failed to warmup.

- + CEF_RESULT_CODE_SHELL_INTEGRATION_FAILED uCEFConstants

Failed to make Chrome default browser (not used?).

- + CEF_RESULT_CODE_SXS_MIGRATION_FAILED_NOT_USED uCEFConstants

Failed to migrate user data directory for side-by-side package support (Linux-only).

- + CEF_RESULT_CODE_SYSTEM_RESOURCE_EXHAUSTED uCEFConstants

The browser process exited because system resource are exhausted. The system state can't be recovered and will be unstable.

- + CEF_RESULT_CODE_UNINSTALL_CHROME_ALIVE uCEFConstants

Uninstall detected another chrome instance.

- + CEF_RESULT_CODE_UNINSTALL_DELETE_PROFILE uCEFConstants

Delete profile as well during uninstall.

- + CEF_RESULT_CODE_UNINSTALL_EXTENSION_ERROR uCEFConstants

Failed to silently uninstall an extension.

- + CEF_RESULT_CODE_UNINSTALL_USER_CANCEL uCEFConstants

The user changed their mind.

- + CEF_RESULT_CODE_UNSUPPORTED_PARAM uCEFConstants

Command line parameter is not supported.

- + cef_run_message_loop uCEFLibFunctions

 

- + CEF_SCHEME_OPTION_CORS_ENABLED uCEFConstants

If CEF_SCHEME_OPTION_CORS_ENABLED is set the scheme can be sent CORS requests. This value should be set in most cases where CEF_SCHEME_OPTION_STANDARD is set.

- + CEF_SCHEME_OPTION_CSP_BYPASSING uCEFConstants

If CEF_SCHEME_OPTION_CSP_BYPASSING is set the scheme can bypass Content- Security-Policy (CSP) checks. This value should not be set in most cases where CEF_SCHEME_OPTION_STANDARD is set.

- + CEF_SCHEME_OPTION_DISPLAY_ISOLATED uCEFConstants

If CEF_SCHEME_OPTION_DISPLAY_ISOLATED is set the scheme can only be displayed from other content hosted with the same scheme. For example, pages in other origins cannot create iframes or hyperlinks to URLs with the scheme. For schemes that must be accessible from other schemes don't set this, set CEF_SCHEME_OPTION_CORS_ENABLED, and use CORS "Access-Control-Allow-Origin" headers to further restrict access.

- + CEF_SCHEME_OPTION_FETCH_ENABLED uCEFConstants

If CEF_SCHEME_OPTION_FETCH_ENABLED is set the scheme can perform Fetch API requests.

- + CEF_SCHEME_OPTION_LOCAL uCEFConstants

If CEF_SCHEME_OPTION_LOCAL is set the scheme will be treated with the same security rules as those applied to "file" URLs. Normal pages cannot link to or access local URLs. Also, by default, local URLs can only perform XMLHttpRequest calls to the same URL (origin + path) that originated the request. To allow XMLHttpRequest calls from a local URL to other URLs with the same origin set the CefSettings.file_access_from_file_urls_allowed value to true (1). To allow XMLHttpRequest calls from a local URL to all origins set the CefSettings.universal_access_from_file_urls_allowed value to true (1).

- + CEF_SCHEME_OPTION_NONE uCEFConstants

No options.

- + CEF_SCHEME_OPTION_SECURE uCEFConstants

If CEF_SCHEME_OPTION_SECURE is set the scheme will be treated with the same security rules as those applied to "https" URLs. For example, loading this scheme from other secure schemes will not trigger mixed content warnings.

- + CEF_SCHEME_OPTION_STANDARD uCEFConstants

If CEF_SCHEME_OPTION_STANDARD is set the scheme will be treated as a standard scheme. Standard schemes are subject to URL canonicalization and parsing rules as defined in the Common Internet Scheme Syntax RFC 1738 Section 3.1 available at http://www.ietf.org/rfc/rfc1738.txt @@ -1882,411 +1897,416 @@

For non-standard scheme URLs only the "scheme:" component is parsed and canonicalized. The remainder of the URL will be passed to the handler as- is. For example, "scheme:///some%20text" will remain the same. Non-standard scheme URLs cannot be used as a target for form submission.

- + cef_scroll_view_create uCEFLibFunctions

/include/capi/views/cef_scroll_view_capi.h

- + CEF_SENTINEL_DOCLOSE uCEFConstants

 

- + CEF_SENTINEL_START uCEFConstants

 

- + cef_server_create uCEFLibFunctions

/include/capi/cef_server_capi.h

- + CEF_SETTINGS_URL uCEFConstants

 

- + cef_set_crash_key_value uCEFLibFunctions

 

- + cef_set_osmodal_loop uCEFLibFunctions

********************************* *********** INTERNAL ************ ********************************* /include/internal/cef_app_win.h

- + cef_shared_process_message_builder_create uCEFLibFunctions

/include/capi/cef_shared_process_message_builder_capi.h

- + CEF_SHOW_STATE_FULLSCREEN uCEFConstants

Show the window as fullscreen.

- + CEF_SHOW_STATE_HIDDEN uCEFConstants

Show the window as hidden (no dock thumbnail). Only supported on MacOS..

- + CEF_SHOW_STATE_MAXIMIZED uCEFConstants

Show the window as maximized.

- + CEF_SHOW_STATE_MINIMIZED uCEFConstants

Show the window as minimized.

- + CEF_SHOW_STATE_NORMAL uCEFConstants

Show the window as normal.

- + cef_shutdown uCEFLibFunctions

 

- + CEF_STARTDRAGGING uCEFConstants

 

- + cef_stream_reader_create_for_data uCEFLibFunctions

 

- + cef_stream_reader_create_for_file uCEFLibFunctions

/include/capi/cef_stream_capi.h

- + cef_stream_reader_create_for_handler uCEFLibFunctions

 

- + cef_stream_writer_create_for_file uCEFLibFunctions

 

- + cef_stream_writer_create_for_handler uCEFLibFunctions

 

- + cef_string_ascii_to_utf16 uCEFLibFunctions

 

- + cef_string_ascii_to_wide uCEFLibFunctions

 

- + cef_string_copy uCEFMiscFunctions

 

- + cef_string_list_alloc uCEFLibFunctions

/include/internal/cef_string_list.h

- + cef_string_list_append uCEFLibFunctions

 

- + cef_string_list_clear uCEFLibFunctions

 

- + cef_string_list_copy uCEFLibFunctions

 

- + cef_string_list_free uCEFLibFunctions

 

- + cef_string_list_size uCEFLibFunctions

 

- + cef_string_list_value uCEFLibFunctions

 

- + cef_string_map_alloc uCEFLibFunctions

/include/internal/cef_string_map.h

- + cef_string_map_append uCEFLibFunctions

 

- + cef_string_map_clear uCEFLibFunctions

 

- + cef_string_map_find uCEFLibFunctions

 

- + cef_string_map_free uCEFLibFunctions

 

- + cef_string_map_key uCEFLibFunctions

 

- + cef_string_map_size uCEFLibFunctions

 

- + cef_string_map_value uCEFLibFunctions

 

- + cef_string_multimap_alloc uCEFLibFunctions

/include/internal/cef_string_multimap.h

- + cef_string_multimap_append uCEFLibFunctions

 

- + cef_string_multimap_clear uCEFLibFunctions

 

- + cef_string_multimap_enumerate uCEFLibFunctions

 

- + cef_string_multimap_find_count uCEFLibFunctions

 

- + cef_string_multimap_free uCEFLibFunctions

 

- + cef_string_multimap_key uCEFLibFunctions

 

- + cef_string_multimap_size uCEFLibFunctions

 

- + cef_string_multimap_value uCEFLibFunctions

 

- + cef_string_userfree_utf16_alloc uCEFLibFunctions

 

- + cef_string_userfree_utf16_free uCEFLibFunctions

 

- + cef_string_userfree_utf8_alloc uCEFLibFunctions

 

- + cef_string_userfree_utf8_free uCEFLibFunctions

 

- + cef_string_userfree_wide_alloc uCEFLibFunctions

 

- + cef_string_userfree_wide_free uCEFLibFunctions

 

- + cef_string_utf16_clear uCEFLibFunctions

 

- + cef_string_utf16_cmp uCEFLibFunctions

 

- + cef_string_utf16_copy uCEFMiscFunctions

 

- + cef_string_utf16_set uCEFLibFunctions

 

- + cef_string_utf16_to_lower uCEFLibFunctions

 

- + cef_string_utf16_to_upper uCEFLibFunctions

 

- + cef_string_utf16_to_utf8 uCEFLibFunctions

 

- + cef_string_utf16_to_wide uCEFLibFunctions

 

- + cef_string_utf8_clear uCEFLibFunctions

 

- + cef_string_utf8_cmp uCEFLibFunctions

 

- + cef_string_utf8_copy uCEFMiscFunctions

 

- + cef_string_utf8_set uCEFLibFunctions

 

- + cef_string_utf8_to_utf16 uCEFLibFunctions

 

- + cef_string_utf8_to_wide uCEFLibFunctions

 

- + cef_string_wide_clear uCEFLibFunctions

 

- + cef_string_wide_cmp uCEFLibFunctions

 

- + cef_string_wide_copy uCEFMiscFunctions

 

- + cef_string_wide_set uCEFLibFunctions

/include/internal/cef_string_types.h

- + cef_string_wide_to_utf16 uCEFLibFunctions

 

- + cef_string_wide_to_utf8 uCEFLibFunctions

 

- + CEF_SUPPORTED_VERSION_BUILD uCEFApplication

 

- + CEF_SUPPORTED_VERSION_BUILD uCEFApplicationCore

 

- + CEF_SUPPORTED_VERSION_MAJOR uCEFApplication

 

- + CEF_SUPPORTED_VERSION_MAJOR uCEFApplicationCore

 

- + CEF_SUPPORTED_VERSION_MINOR uCEFApplication

 

- + CEF_SUPPORTED_VERSION_MINOR uCEFApplicationCore

 

- + CEF_SUPPORTED_VERSION_RELEASE uCEFApplication

 

- + CEF_SUPPORTED_VERSION_RELEASE uCEFApplicationCore

 

+ +cef_task_manager_get +uCEFLibFunctions +

/include/capi/cef_task_manager_capi.h

+ cef_task_runner_get_for_current_thread uCEFLibFunctions @@ -2523,2061 +2543,2066 @@

 

+cef_v8value_create_array_buffer_with_copy +uCEFLibFunctions +

 

+ + cef_v8value_create_bool uCEFLibFunctions

 

- + cef_v8value_create_date uCEFLibFunctions

 

- + cef_v8value_create_double uCEFLibFunctions

 

- + cef_v8value_create_function uCEFLibFunctions

 

- + cef_v8value_create_int uCEFLibFunctions

 

- + cef_v8value_create_null uCEFLibFunctions

 

- + cef_v8value_create_object uCEFLibFunctions

 

- + cef_v8value_create_promise uCEFLibFunctions

 

- + cef_v8value_create_string uCEFLibFunctions

 

- + cef_v8value_create_uint uCEFLibFunctions

 

- + cef_v8value_create_undefined uCEFLibFunctions

 

- + cef_value_create uCEFLibFunctions

/include/capi/cef_values_capi.h

- + CEF_VERSION_URL uCEFConstants

 

- + cef_waitable_event_create uCEFLibFunctions

/include/capi/cef_waitable_event_capi.h

- + cef_window_create_top_level uCEFLibFunctions

/include/capi/views/cef_window_capi.h

- + cef_write_json uCEFLibFunctions

 

- + cef_xml_reader_create uCEFLibFunctions

/include/capi/cef_xml_reader_capi.h

- + cef_zip_directory uCEFLibFunctions

 

- + cef_zip_reader_create uCEFLibFunctions

/include/capi/cef_zip_reader_capi.h

- + CERT_STATUS_AUTHORITY_INVALID uCEFConstants

 

- + CERT_STATUS_COMMON_NAME_INVALID uCEFConstants

 

- + CERT_STATUS_CT_COMPLIANCE_FAILED uCEFConstants

 

- + CERT_STATUS_DATE_INVALID uCEFConstants

 

- + CERT_STATUS_FIRST_ERROR uCEFConstants

 

- + CERT_STATUS_INVALID uCEFConstants

 

- + CERT_STATUS_IS_EV uCEFConstants

 

- + CERT_STATUS_LAST_ERROR uCEFConstants

 

- + CERT_STATUS_NAME_CONSTRAINT_VIOLATION uCEFConstants

 

- + CERT_STATUS_NONE uCEFConstants

Supported certificate status code values. See net\cert\cert_status_flags.h for more information. CERT_STATUS_NONE is new in CEF because we use an enum while cert_status_flags.h uses a typedef and static const variables.

- + CERT_STATUS_NON_UNIQUE_NAME uCEFConstants

 

- + CERT_STATUS_NO_REVOCATION_MECHANISM uCEFConstants

 

- + CERT_STATUS_PINNED_KEY_MISSING uCEFConstants

 

- + CERT_STATUS_REVOKED uCEFConstants

 

- + CERT_STATUS_REV_CHECKING_ENABLED uCEFConstants

 

- + CERT_STATUS_SHA1_SIGNATURE_PRESENT uCEFConstants

 

- + CERT_STATUS_UNABLE_TO_CHECK_REVOCATION uCEFConstants

 

- + CERT_STATUS_VALIDITY_TOO_LONG uCEFConstants

 

- + CERT_STATUS_WEAK_KEY uCEFConstants

 

- + CERT_STATUS_WEAK_SIGNATURE_ALGORITHM uCEFConstants

 

- + CetTimeFromCefBaseTime uCEFMiscFunctions

Converts TCefBaseTime to TCefTime.

- + CetTimeToCefBaseTime uCEFMiscFunctions

Converts TCefTime to TCefBaseTime.

- + Char16 uCEFTypes

 

- + CheckDLLs uCEFMiscFunctions

 

- + CheckDLLVersion uCEFMiscFunctions

 

- + CheckFilesExist uCEFMiscFunctions

 

- + CheckLocales uCEFMiscFunctions

 

- + CheckRealWindowsVersion uCEFMiscFunctions

 

- + CheckResources uCEFMiscFunctions

 

- + CheckSubprocessPath uCEFMiscFunctions

 

- + CHROMEELF_DLL uCEFApplication

 

- + CHROMEELF_DLL uCEFApplicationCore

 

- + CHROMIUM_NONBROWSERSHUTDOWNPRIORITY uCEFConstants

This constant is defined by Chromium in chrome/app/main_dll_loader_win.cc It's used with SetProcessShutdownParameters to set a shutdown priority for the subprocesses. $280 is the default value for applications.

- + CM_EDITFLAG_CAN_COPY uCEFConstants

 

- + CM_EDITFLAG_CAN_CUT uCEFConstants

 

- + CM_EDITFLAG_CAN_DELETE uCEFConstants

 

- + CM_EDITFLAG_CAN_EDIT_RICHLY uCEFConstants

 

- + CM_EDITFLAG_CAN_PASTE uCEFConstants

 

- + CM_EDITFLAG_CAN_REDO uCEFConstants

 

- + CM_EDITFLAG_CAN_SELECT_ALL uCEFConstants

 

- + CM_EDITFLAG_CAN_TRANSLATE uCEFConstants

 

- + CM_EDITFLAG_CAN_UNDO uCEFConstants

 

- + CM_EDITFLAG_NONE uCEFConstants

Supported context menu edit state bit flags. These constants match their equivalents in Chromium's ContextMenuDataEditFlags and should not be renumbered.

- + CM_MEDIAFLAG_CAN_LOOP uCEFConstants

 

- + CM_MEDIAFLAG_CAN_PICTURE_IN_PICTURE uCEFConstants

 

- + CM_MEDIAFLAG_CAN_PRINT uCEFConstants

 

- + CM_MEDIAFLAG_CAN_ROTATE uCEFConstants

 

- + CM_MEDIAFLAG_CAN_SAVE uCEFConstants

 

- + CM_MEDIAFLAG_CAN_TOGGLE_CONTROLS uCEFConstants

 

- + CM_MEDIAFLAG_CONTROLS uCEFConstants

 

- + CM_MEDIAFLAG_HAS_AUDIO uCEFConstants

 

- + CM_MEDIAFLAG_IN_ERROR uCEFConstants

 

- + CM_MEDIAFLAG_LOOP uCEFConstants

 

- + CM_MEDIAFLAG_MUTED uCEFConstants

 

- + CM_MEDIAFLAG_NONE uCEFConstants

Supported context menu media state bit flags. These constants match their equivalents in Chromium's ContextMenuData::MediaFlags and should not be renumbered.

- + CM_MEDIAFLAG_PAUSED uCEFConstants

 

- + CM_MEDIAFLAG_PICTURE_IN_PICTURE uCEFConstants

 

- + CM_TYPEFLAG_EDITABLE uCEFConstants

An editable element is selected.

- + CM_TYPEFLAG_FRAME uCEFConstants

A subframe page is selected.

- + CM_TYPEFLAG_LINK uCEFConstants

A link is selected.

- + CM_TYPEFLAG_MEDIA uCEFConstants

A media node is selected.

- + CM_TYPEFLAG_NONE uCEFConstants

No node is selected.

- + CM_TYPEFLAG_PAGE uCEFConstants

The top page is selected.

- + CM_TYPEFLAG_SELECTION uCEFConstants

There is a textual or mixed selection that is selected.

- + COMMAND_ID_FIRST_UNBOUNDED uCEFConstants

command_id constants declared in cef_command_ids.h and used by some callbacks in ICefCommandHandler cef_command_ids.h is generated in /include/cef_command_ids.h

- + CRLF uCEFConstants

 

- + CustomAbsolutePath uCEFMiscFunctions

Returns the absolute path version of aPath.

- + CustomExceptionHandler uCEFMiscFunctions

 

- + CustomPathCanonicalize uCEFMiscFunctions

Simplifies a path by removing navigation elements such as "." and ".." to produce a direct, well-formed path.

- + CustomPathIsRelative uCEFMiscFunctions

Returns true if aPath is a relative path.

- + CustomPathIsUNC uCEFMiscFunctions

Determines if aPath is a valid Universal Naming Convention (UNC) path, as opposed to a path based on a drive letter.

- + CustomPathIsURL uCEFMiscFunctions

Tests aPath to determine if it conforms to a valid URL format.

- + CUSTOM_ARRAY_LENGTH uCEFOLEDragAndDrop

 

- + DateTimeToCefBaseTime uCEFMiscFunctions

Converts a TDateTime value to TCefBaseTime.

- + DateTimeToCefTime uCEFMiscFunctions

Converts a TDateTime value to TCefTime.

- + DEFAULT_BLINK_BACKGROUND_COLOR uCEFOSRIMEHandler

Black SkColor

- + DEFAULT_BLINK_UNDERLINE_COLOR uCEFOSRIMEHandler

 

- + DEFAULT_BLINK_UNDERLINE_STYLE uCEFOSRIMEHandler

White SkColor

- + DEFAULT_CEFSERVER_ADDRESS uCEFServerComponent

 

- + DEFAULT_CEFSERVER_BACKLOG uCEFServerComponent

 

- + DEFAULT_CEFSERVER_PORT uCEFServerComponent

 

- + DEFAULT_REDIRECT_IPV4_HOST uCEFOAuth2Helper

REFERENCES : ============ https://tools.ietf.org/html/rfc6749 https://tools.ietf.org/html/rfc6750 https://tools.ietf.org/html/rfc8252 https://tools.ietf.org/html/rfc6819 https://tools.ietf.org/html/rfc7636 https://tools.ietf.org/html/draft-ietf-oauth-native-apps-12 https://tools.ietf.org/html/draft-ietf-oauth-security-topics-13 https://developers.google.com/identity/protocols/OAuth2 https://developers.google.com/identity/protocols/OAuth2InstalledApp https://developers.google.com/identity/protocols/googlescopes https://developers.google.com/identity/protocols/OpenIDConnect https://aaronparecki.com/oauth-2-simplified/ https://example-app.com/pkce

- + DEFAULT_REDIRECT_IPV6_HOST uCEFOAuth2Helper

 

- + DEFAULT_REDIRECT_PORT uCEFOAuth2Helper

 

- + DeleteDirContents uCEFMiscFunctions

 

- + DeleteFileList uCEFMiscFunctions

 

- + DestroyGlobalCEFApp uCEFApplication

 

- + DestroyGlobalCEFApp uCEFApplicationCore

 

- + DestroyGlobalCEFTimerWorkScheduler uCEFTimerWorkScheduler

 

- + DestroyGlobalCEFWorkScheduler uCEFWorkScheduler

 

- + DestroyGlobalFMXWorkScheduler uCEFFMXWorkScheduler

 

+ +DeviceToLogical +uCEFMiscFunctions +

 

+ DeviceToLogical uCEFMiscFunctions

 

-DeviceToLogical -uCEFMiscFunctions -

 

- - -DeviceToLogical -uCEFMiscFunctions -

 

- - DeviceToLogical uCEFMiscFunctions

 

+DeviceToLogical +uCEFMiscFunctions +

 

+ + DeviceToLogical uCEFMiscFunctions

 

- + DEVTOOLS_WINDOWNAME uCEFConstants

 

- + DOM_EVENT_CATEGORY_BEFORE_TEXT_INSERTED uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_CLIPBOARD uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_COMPOSITION uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_DRAG uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_KEYBOARD uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_MESSAGE uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_MOUSE uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_MUTATION uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_OVERFLOW uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_PAGE_TRANSITION uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_POPSTATE uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_PROGRESS uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_TEXT uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_UI uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_UNKNOWN uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_WHEEL uCEFConstants

DOM event category flag.

- + DOM_EVENT_CATEGORY_XMLHTTPREQUEST_PROGRESS uCEFConstants

DOM event category flag.

- + DoubleTimeNow uCEFMiscFunctions

Retrieve the current system time in a double type.

- + DoubleToCefTime uCEFMiscFunctions

Converts TCefTime from a double which is the number of seconds since epoch (Jan 1, 1970). Webkit uses this format to represent time. A value of 0 means "not initialized".

- + DragOperationToDropEffect uCEFMiscFunctions

 

- + DRAG_OPERATION_COPY uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_DELETE uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_EVERY uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_GENERIC uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_LINK uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_MOVE uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_NONE uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DRAG_OPERATION_PRIVATE uCEFConstants

"Verb" of a drag-and-drop operation as negotiated between the source and destination.

- + DropEffectToDragOperation uCEFMiscFunctions

 

- + DUPLEX_MODE_LONG_EDGE uCEFConstants

 

- + DUPLEX_MODE_SHORT_EDGE uCEFConstants

 

- + DUPLEX_MODE_SIMPLEX uCEFConstants

 

- + DUPLEX_MODE_UNKNOWN uCEFConstants

Print job duplex mode values.

- + EditingCommandToString uCEFMiscFunctions

Convert an editting command to string.

- + ERR_ABORTED uCEFConstants

 

- + ERR_ACCESS_DENIED uCEFConstants

 

- + ERR_ADDRESS_INVALID uCEFConstants

 

- + ERR_ADDRESS_IN_USE uCEFConstants

 

- + ERR_ADDRESS_UNREACHABLE uCEFConstants

 

- + ERR_ADD_USER_CERT_FAILED uCEFConstants

 

- + ERR_ALPN_NEGOTIATION_FAILED uCEFConstants

 

- + ERR_BAD_SSL_CLIENT_AUTH_CERT uCEFConstants

 

- + ERR_BLOCKED_BY_ADMINISTRATOR uCEFConstants

 

- + ERR_BLOCKED_BY_CLIENT uCEFConstants

 

- + ERR_BLOCKED_BY_CSP uCEFConstants

 

- + ERR_BLOCKED_BY_RESPONSE uCEFConstants

 

- + ERR_BLOCKED_BY_XSS_AUDITOR uCEFConstants

 

- + ERR_BLOCKED_ENROLLMENT_CHECK_PENDING uCEFConstants

 

- + ERR_CACHE_AUTH_FAILURE_AFTER_READ uCEFConstants

 

- + ERR_CACHE_CHECKSUM_MISMATCH uCEFConstants

 

- + ERR_CACHE_CHECKSUM_READ_FAILURE uCEFConstants

 

- + ERR_CACHE_CREATE_FAILURE uCEFConstants

 

- + ERR_CACHE_DOOM_FAILURE uCEFConstants

 

- + ERR_CACHE_ENTRY_NOT_SUITABLE uCEFConstants

 

- + ERR_CACHE_LOCK_TIMEOUT uCEFConstants

 

- + ERR_CACHE_MISS uCEFConstants

 

- + ERR_CACHE_OPEN_FAILURE uCEFConstants

 

- + ERR_CACHE_OPEN_OR_CREATE_FAILURE uCEFConstants

 

- + ERR_CACHE_OPERATION_NOT_SUPPORTED uCEFConstants

 

- + ERR_CACHE_RACE uCEFConstants

 

- + ERR_CACHE_READ_FAILURE uCEFConstants

 

- + ERR_CACHE_WRITE_FAILURE uCEFConstants

 

- + ERR_CERTIFICATE_TRANSPARENCY_REQUIRED uCEFConstants

 

- + ERR_CERT_AUTHORITY_INVALID uCEFConstants

 

- + ERR_CERT_COMMON_NAME_INVALID uCEFConstants

 

- + ERR_CERT_CONTAINS_ERRORS uCEFConstants

 

- + ERR_CERT_DATABASE_CHANGED uCEFConstants

 

- + ERR_CERT_DATE_INVALID uCEFConstants

 

- + ERR_CERT_END uCEFConstants

 

- + ERR_CERT_ERROR_IN_SSL_RENEGOTIATION uCEFConstants

 

- + ERR_CERT_INVALID uCEFConstants

 

- + ERR_CERT_KNOWN_INTERCEPTION_BLOCKED uCEFConstants

 

- + ERR_CERT_NAME_CONSTRAINT_VIOLATION uCEFConstants

 

- + ERR_CERT_NON_UNIQUE_NAME uCEFConstants

 

- + ERR_CERT_NO_REVOCATION_MECHANISM uCEFConstants

 

- + ERR_CERT_REVOKED uCEFConstants

 

- + ERR_CERT_SYMANTEC_LEGACY uCEFConstants

 

- + ERR_CERT_UNABLE_TO_CHECK_REVOCATION uCEFConstants

 

- + ERR_CERT_VALIDITY_TOO_LONG uCEFConstants

 

- + ERR_CERT_WEAK_KEY uCEFConstants

 

- + ERR_CERT_WEAK_SIGNATURE_ALGORITHM uCEFConstants

 

- + ERR_CLEARTEXT_NOT_PERMITTED uCEFConstants

 

- + ERR_CLIENT_AUTH_CERT_TYPE_UNSUPPORTED uCEFConstants

 

- + ERR_CONNECTION_ABORTED uCEFConstants

 

- + ERR_CONNECTION_CLOSED uCEFConstants

 

- + ERR_CONNECTION_FAILED uCEFConstants

 

- + ERR_CONNECTION_REFUSED uCEFConstants

 

- + ERR_CONNECTION_RESET uCEFConstants

 

- + ERR_CONNECTION_TIMED_OUT uCEFConstants

 

- + ERR_CONTENT_DECODING_FAILED uCEFConstants

 

- + ERR_CONTENT_DECODING_INIT_FAILED uCEFConstants

 

- + ERR_CONTENT_LENGTH_MISMATCH uCEFConstants

 

- + ERR_CONTEXT_SHUT_DOWN uCEFConstants

 

- + ERR_CT_CONSISTENCY_PROOF_PARSING_FAILED uCEFConstants

 

- + ERR_CT_STH_INCOMPLETE uCEFConstants

 

- + ERR_CT_STH_PARSING_FAILED uCEFConstants

 

- + ERR_DISALLOWED_URL_SCHEME uCEFConstants

 

- + ERR_DNS_MALFORMED_RESPONSE uCEFConstants

 

- + ERR_DNS_NAME_HTTPS_ONLY uCEFConstants

 

- + ERR_DNS_SEARCH_EMPTY uCEFConstants

 

- + ERR_DNS_SECURE_RESOLVER_HOSTNAME_RESOLUTION_FAILED uCEFConstants

 

- + ERR_DNS_SERVER_FAILED uCEFConstants

 

- + ERR_DNS_SERVER_REQUIRES_TCP uCEFConstants

 

- + ERR_DNS_SORT_ERROR uCEFConstants

 

- + ERR_DNS_TIMED_OUT uCEFConstants

 

- + ERR_EARLY_DATA_REJECTED uCEFConstants

 

- + ERR_ECH_FALLBACK_CERTIFICATE_INVALID uCEFConstants

 

- + ERR_ECH_NOT_NEGOTIATED uCEFConstants

 

- + ERR_EMPTY_RESPONSE uCEFConstants

 

- + ERR_ENCODING_CONVERSION_FAILED uCEFConstants

 

- + ERR_ENCODING_DETECTION_FAILED uCEFConstants

 

- + ERR_FAILED uCEFConstants

 

- + ERR_FILE_EXISTS uCEFConstants

 

- + ERR_FILE_NOT_FOUND uCEFConstants

 

- + ERR_FILE_NO_SPACE uCEFConstants

 

- + ERR_FILE_PATH_TOO_LONG uCEFConstants

 

- + ERR_FILE_TOO_BIG uCEFConstants

 

- + ERR_FILE_VIRUS_INFECTED uCEFConstants

 

- + ERR_FTP_BAD_COMMAND_SEQUENCE uCEFConstants

 

- + ERR_FTP_COMMAND_NOT_SUPPORTED uCEFConstants

 

- + ERR_FTP_FAILED uCEFConstants

 

- + ERR_FTP_FILE_BUSY uCEFConstants

 

- + ERR_FTP_SERVICE_UNAVAILABLE uCEFConstants

 

- + ERR_FTP_SYNTAX_ERROR uCEFConstants

 

- + ERR_FTP_TRANSFER_ABORTED uCEFConstants

 

- + ERR_H2_OR_QUIC_REQUIRED uCEFConstants

 

- + ERR_HOST_RESOLVER_QUEUE_TOO_LARGE uCEFConstants

 

- + ERR_HTTPS_PROXY_TUNNEL_RESPONSE_REDIRECT uCEFConstants

 

- + ERR_HTTP_1_1_REQUIRED uCEFConstants

 

- + ERR_HTTP_RESPONSE_CODE_FAILURE uCEFConstants

 

- + ERR_ICANN_NAME_COLLISION uCEFConstants

 

- + ERR_IMPORT_CA_CERT_FAILED uCEFConstants

 

- + ERR_IMPORT_CA_CERT_NOT_CA uCEFConstants

 

- + ERR_IMPORT_CERT_ALREADY_EXISTS uCEFConstants

 

- + ERR_IMPORT_SERVER_CERT_FAILED uCEFConstants

 

- + ERR_INCOMPLETE_CHUNKED_ENCODING uCEFConstants

 

- + ERR_INCOMPLETE_SPDY_HEADERS uCEFConstants

 

- + ERR_INSECURE_RESPONSE uCEFConstants

 

- + ERR_INSUFFICIENT_RESOURCES uCEFConstants

 

- + ERR_INTERNET_DISCONNECTED uCEFConstants

 

- + ERR_INVALID_ARGUMENT uCEFConstants

 

- + ERR_INVALID_AUTH_CREDENTIALS uCEFConstants

 

- + ERR_INVALID_CHUNKED_ENCODING uCEFConstants

 

- + ERR_INVALID_ECH_CONFIG_LIST uCEFConstants

 

- + ERR_INVALID_HANDLE uCEFConstants

 

- + ERR_INVALID_HTTP_RESPONSE uCEFConstants

 

- + ERR_INVALID_REDIRECT uCEFConstants

 

- + ERR_INVALID_RESPONSE uCEFConstants

 

- + ERR_INVALID_SIGNED_EXCHANGE uCEFConstants

 

- + ERR_INVALID_URL uCEFConstants

 

- + ERR_INVALID_WEB_BUNDLE uCEFConstants

 

- + ERR_IO_PENDING uCEFConstants

 

- + ERR_KEY_GENERATION_FAILED uCEFConstants

 

- + ERR_MALFORMED_IDENTITY uCEFConstants

 

- + ERR_MANDATORY_PROXY_CONFIGURATION_FAILED uCEFConstants

 

- + ERR_METHOD_NOT_SUPPORTED uCEFConstants

 

- + ERR_MISCONFIGURED_AUTH_ENVIRONMENT uCEFConstants

 

- + ERR_MISSING_AUTH_CREDENTIALS uCEFConstants

 

- + ERR_MSG_TOO_BIG uCEFConstants

 

- + ERR_NAME_NOT_RESOLVED uCEFConstants

 

- + ERR_NAME_RESOLUTION_FAILED uCEFConstants

 

- + ERR_NETWORK_ACCESS_DENIED uCEFConstants

 

- + ERR_NETWORK_CHANGED uCEFConstants

 

- + ERR_NETWORK_IO_SUSPENDED uCEFConstants

 

- + ERR_NONE uCEFConstants

Supported error code values. Ranges: 0- 99 System related errors 100-199 Connection related errors 200-299 Certificate errors 300-399 HTTP errors 400-499 Cache errors 500-599 ? 600-699 FTP errors 700-799 Certificate manager errors 800-899 DNS resolver errors

- + ERR_NOT_IMPLEMENTED uCEFConstants

 

- + ERR_NO_BUFFER_SPACE uCEFConstants

 

- + ERR_NO_PRIVATE_KEY_FOR_CERT uCEFConstants

 

- + ERR_NO_SSL_VERSIONS_ENABLED uCEFConstants

 

- + ERR_NO_SUPPORTED_PROXIES uCEFConstants

 

- + ERR_NS_CACHE_MISS uCEFConstants

 

- + ERR_OUT_OF_MEMORY uCEFConstants

 

- + ERR_PAC_NOT_IN_DHCP uCEFConstants

 

- + ERR_PAC_SCRIPT_FAILED uCEFConstants

 

- + ERR_PAC_SCRIPT_TERMINATED uCEFConstants

 

- + ERR_PKCS12_IMPORT_BAD_PASSWORD uCEFConstants

 

- + ERR_PKCS12_IMPORT_FAILED uCEFConstants

 

- + ERR_PKCS12_IMPORT_INVALID_FILE uCEFConstants

 

- + ERR_PKCS12_IMPORT_INVALID_MAC uCEFConstants

 

- + ERR_PKCS12_IMPORT_UNSUPPORTED uCEFConstants

 

- + ERR_PRECONNECT_MAX_SOCKET_LIMIT uCEFConstants

 

- + ERR_PRIVATE_KEY_EXPORT_FAILED uCEFConstants

 

- + ERR_PROXY_AUTH_REQUESTED uCEFConstants

 

- + ERR_PROXY_AUTH_REQUESTED_WITH_NO_CONNECTION uCEFConstants

 

- + ERR_PROXY_AUTH_UNSUPPORTED uCEFConstants

 

- + ERR_PROXY_CERTIFICATE_INVALID uCEFConstants

 

- + ERR_PROXY_CONNECTION_FAILED uCEFConstants

 

- + ERR_PROXY_HTTP_1_1_REQUIRED uCEFConstants

 

- + ERR_QUIC_CERT_ROOT_NOT_KNOWN uCEFConstants

 

- + ERR_QUIC_GOAWAY_REQUEST_CAN_BE_RETRIED uCEFConstants

 

- + ERR_QUIC_HANDSHAKE_FAILED uCEFConstants

 

- + ERR_QUIC_PROTOCOL_ERROR uCEFConstants

 

- + ERR_READ_IF_READY_NOT_IMPLEMENTED uCEFConstants

 

- + ERR_REQUEST_RANGE_NOT_SATISFIABLE uCEFConstants

 

- + ERR_RESPONSE_BODY_TOO_BIG_TO_DRAIN uCEFConstants

 

- + ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION uCEFConstants

 

- + ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_LENGTH uCEFConstants

 

- + ERR_RESPONSE_HEADERS_MULTIPLE_LOCATION uCEFConstants

 

- + ERR_RESPONSE_HEADERS_TOO_BIG uCEFConstants

 

- + ERR_RESPONSE_HEADERS_TRUNCATED uCEFConstants

 

- + ERR_SELF_SIGNED_CERT_GENERATION_FAILED uCEFConstants

 

- + ERR_SOCKET_IS_CONNECTED uCEFConstants

 

- + ERR_SOCKET_NOT_CONNECTED uCEFConstants

 

- + ERR_SOCKET_RECEIVE_BUFFER_SIZE_UNCHANGEABLE uCEFConstants

 

- + ERR_SOCKET_SEND_BUFFER_SIZE_UNCHANGEABLE uCEFConstants

 

- + ERR_SOCKET_SET_RECEIVE_BUFFER_SIZE_ERROR uCEFConstants

 

- + ERR_SOCKET_SET_SEND_BUFFER_SIZE_ERROR uCEFConstants

 

- + ERR_SOCKS_CONNECTION_FAILED uCEFConstants

 

- + ERR_SOCKS_CONNECTION_HOST_UNREACHABLE uCEFConstants

 

- + ERR_SPDY_CLAIMED_PUSHED_STREAM_RESET_BY_SERVER uCEFConstants

 

- + ERR_SPDY_CLIENT_REFUSED_STREAM uCEFConstants

 

- + ERR_SPDY_COMPRESSION_ERROR uCEFConstants

 

- + ERR_SPDY_FLOW_CONTROL_ERROR uCEFConstants

 

- + ERR_SPDY_FRAME_SIZE_ERROR uCEFConstants

 

- + ERR_SPDY_INADEQUATE_TRANSPORT_SECURITY uCEFConstants

 

- + ERR_SPDY_PING_FAILED uCEFConstants

 

- + ERR_SPDY_PROTOCOL_ERROR uCEFConstants

 

- + ERR_SPDY_PUSHED_RESPONSE_DOES_NOT_MATCH uCEFConstants

 

- + ERR_SPDY_PUSHED_STREAM_NOT_AVAILABLE uCEFConstants

 

- + ERR_SPDY_RST_STREAM_NO_ERROR_RECEIVED uCEFConstants

 

- + ERR_SPDY_SERVER_REFUSED_STREAM uCEFConstants

 

- + ERR_SPDY_STREAM_CLOSED uCEFConstants

 

- + ERR_SSL_BAD_PEER_PUBLIC_KEY uCEFConstants

 

- + ERR_SSL_BAD_RECORD_MAC_ALERT uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_CERT_BAD_FORMAT uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_CERT_NEEDED uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_CERT_NO_PRIVATE_KEY uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_NO_COMMON_ALGORITHMS uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_PRIVATE_KEY_ACCESS_DENIED uCEFConstants

 

- + ERR_SSL_CLIENT_AUTH_SIGNATURE_FAILED uCEFConstants

 

- + ERR_SSL_DECOMPRESSION_FAILURE_ALERT uCEFConstants

 

- + ERR_SSL_DECRYPT_ERROR_ALERT uCEFConstants

 

- + ERR_SSL_HANDSHAKE_NOT_COMPLETED uCEFConstants

 

- + ERR_SSL_KEY_USAGE_INCOMPATIBLE uCEFConstants

 

- + ERR_SSL_NO_RENEGOTIATION uCEFConstants

 

- + ERR_SSL_OBSOLETE_CIPHER uCEFConstants

 

- + ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN uCEFConstants

 

- + ERR_SSL_PROTOCOL_ERROR uCEFConstants

 

- + ERR_SSL_RENEGOTIATION_REQUESTED uCEFConstants

 

- + ERR_SSL_SERVER_CERT_BAD_FORMAT uCEFConstants

 

- + ERR_SSL_SERVER_CERT_CHANGED uCEFConstants

 

- + ERR_SSL_UNRECOGNIZED_NAME_ALERT uCEFConstants

 

- + ERR_SSL_VERSION_OR_CIPHER_MISMATCH uCEFConstants

 

- + ERR_SYN_REPLY_NOT_RECEIVED uCEFConstants

 

- + ERR_TEMPORARILY_THROTTLED uCEFConstants

 

- + ERR_TIMED_OUT uCEFConstants

 

- + ERR_TLS13_DOWNGRADE_DETECTED uCEFConstants

 

- + ERR_TOO_MANY_REDIRECTS uCEFConstants

 

- + ERR_TOO_MANY_RETRIES uCEFConstants

 

- + ERR_TRUST_TOKEN_OPERATION_FAILED uCEFConstants

 

- + ERR_TRUST_TOKEN_OPERATION_SUCCESS_WITHOUT_SENDING_REQUEST uCEFConstants

 

- + ERR_TUNNEL_CONNECTION_FAILED uCEFConstants

 

- + ERR_UNABLE_TO_REUSE_CONNECTION_FOR_PROXY_AUTH uCEFConstants

 

- + ERR_UNDOCUMENTED_SECURITY_LIBRARY_STATUS uCEFConstants

 

- + ERR_UNEXPECTED uCEFConstants

 

- + ERR_UNEXPECTED_PROXY_AUTH uCEFConstants

 

- + ERR_UNEXPECTED_SECURITY_LIBRARY_STATUS uCEFConstants

 

- + ERR_UNKNOWN_URL_SCHEME uCEFConstants

 

- + ERR_UNRECOGNIZED_FTP_DIRECTORY_LISTING_FORMAT uCEFConstants

 

- + ERR_UNSAFE_PORT uCEFConstants

 

- + ERR_UNSAFE_REDIRECT uCEFConstants

 

- + ERR_UNSUPPORTED_AUTH_SCHEME uCEFConstants

 

- + ERR_UPLOAD_FILE_CHANGED uCEFConstants

 

- + ERR_UPLOAD_STREAM_REWIND_NOT_SUPPORTED uCEFConstants

 

- + ERR_WINSOCK_UNEXPECTED_WRITTEN_BYTES uCEFConstants

 

- + ERR_WRONG_VERSION_ON_EARLY_DATA uCEFConstants

 

- + ERR_WS_PROTOCOL_ERROR uCEFConstants

 

- + ERR_WS_THROTTLE_QUEUE_TOO_LARGE uCEFConstants

 

- + ERR_WS_UPGRADE uCEFConstants

 

- + EVENTFLAG_ALTGR_DOWN uCEFConstants

Supported event bit flag.

- + EVENTFLAG_ALT_DOWN uCEFConstants

Supported event bit flag.

- + EVENTFLAG_CAPS_LOCK_ON uCEFConstants

Supported event bit flag.

- + EVENTFLAG_COMMAND_DOWN uCEFConstants

Supported event bit flag.

- + EVENTFLAG_CONTROL_DOWN uCEFConstants

Supported event bit flag.

- + EVENTFLAG_IS_KEY_PAD uCEFConstants

Supported event bit flag.

- + EVENTFLAG_IS_LEFT uCEFConstants

Supported event bit flag.

- + EVENTFLAG_IS_REPEAT uCEFConstants

Supported event bit flag.

- + EVENTFLAG_IS_RIGHT uCEFConstants

Supported event bit flag.

- + EVENTFLAG_LEFT_MOUSE_BUTTON uCEFConstants

Supported event bit flag.

- + EVENTFLAG_MIDDLE_MOUSE_BUTTON uCEFConstants

Supported event bit flag.

- + EVENTFLAG_NONE uCEFConstants

Supported event bit flag.

- + EVENTFLAG_NUM_LOCK_ON uCEFConstants

Supported event bit flag.

- + EVENTFLAG_RIGHT_MOUSE_BUTTON uCEFConstants

Supported event bit flag.

- + EVENTFLAG_SHIFT_DOWN uCEFConstants

Supported event bit flag.

- + FileVersionInfoToString uCEFMiscFunctions

 

- + FILE_DIALOG_OPEN uCEFConstants

Requires that the file exists before allowing the user to pick it.

- + FILE_DIALOG_OPEN_FOLDER uCEFConstants

Like Open, but selects a folder to open.

- + FILE_DIALOG_OPEN_MULTIPLE uCEFConstants

Like Open, but allows picking multiple files to open.

- + FILE_DIALOG_SAVE uCEFConstants

Allows picking a nonexistent file, and prompts to overwrite if the file already exists.

- + FixCefTime uCEFMiscFunctions

Returns a new TCefTime with a valid time in case the original has errors.

- + GetAbsoluteDirPath uCEFMiscFunctions

 

- + GetCefKeyboardModifiers uCEFMiscFunctions

 

- + GetCefMouseModifiers uCEFMiscFunctions

 

- + GetCefMouseModifiers uCEFMiscFunctions

 

- + GetCommandLineSwitchValue uCEFMiscFunctions

Returns a command line switch value if it exists.

- + GetDefaultCEFUserAgent uCEFMiscFunctions

@@ -4588,377 +4613,367 @@

- + GetDeviceScaleFactor uCEFMiscFunctions

 

- + GetDLLHeaderMachine uCEFMiscFunctions

 

- + GetDLLVersion uCEFMiscFunctions

 

- + GetDPIForHandle uCEFMiscFunctions

 

- + GetExtendedFileVersion uCEFMiscFunctions

 

- + GetFileTypeDescription uCEFMiscFunctions

 

- + GetGlobalMemoryStatusEx uCEFMiscFunctions

 

- + GetIsWow64Process2 uCEFMiscFunctions

 

- + GetModulePath uCEFMiscFunctions

Retrieves the fully qualified path for the current module.

- + GetRealWindowsVersion uCEFMiscFunctions

 

- + GetRegistryWindowsVersion uCEFMiscFunctions

 

- + GetScreenDPI uCEFMiscFunctions

 

- + GetTimeIntervalMilliseconds uCEFMiscFunctions

Returns the time interval between now and from_ in milliseconds. This funcion should only be used by TCEFTimerWorkScheduler.

- + GetWindowsMajorMinorVersion uCEFMiscFunctions

 

- + GlobalCEFApp uCEFApplication

 

- + GlobalCEFApp uCEFApplicationCore

 

- + GlobalCEFTimerWorkScheduler uCEFTimerWorkScheduler

 

- + GlobalCEFWorkScheduler uCEFWorkScheduler

 

- + GlobalFMXWorkScheduler uCEFFMXWorkScheduler

 

- + GOOGLE_DISCOVERY_DOCUMENT uCEFOAuth2Helper

 

- + GWLP_HWNDPARENT uCEFMiscFunctions

 

- + GWLP_WNDPROC uCEFMiscFunctions

 

- + IApplicationCoreEvents uCEFInterfaces

Custom interface used to handle all the TCefApplicationCore events.

- + ICefAccessibilityHandler uCEFInterfaces

Implement this interface to receive accessibility notification when accessibility events have been registered. The functions of this interface will be called on the UI thread.

- + ICefApp uCEFInterfaces

Implement this interface to provide handler implementations. Methods will be called by the process and/or thread indicated.

- + ICefAudioHandler uCEFInterfaces

Implement this interface to handle audio events.

- + ICefAuthCallback uCEFInterfaces

Callback interface used for asynchronous continuation of authentication requests.

- + ICefBaseRefCounted uCEFInterfaces

All ref-counted framework interfaces must inherit from this interface.

- + ICefBeforeDownloadCallback uCEFInterfaces

Callback interface used to asynchronously continue a download.

- + ICefBinaryValue uCEFInterfaces

Interface representing a binary value. Can be used on any process and thread.

- + ICefBoxLayout uCEFInterfaces

A Layout manager that arranges child views vertically or horizontally in a side-by-side fashion with spacing around and between the child views. The child views are always sized according to their preferred size. If the host's bounds provide insufficient space, child views will be clamped. Excess space will not be distributed. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefBrowser uCEFInterfaces

Interface used to represent a browser. When used in the browser process the functions of this interface may be called on any thread unless otherwise indicated in the comments. When used in the render process the functions of this interface may only be called on the main thread.

- + ICefBrowserHost uCEFInterfaces

Interface used to represent the browser process aspects of a browser. The functions of this interface can only be called in the browser process. They may be called on any thread in that process unless otherwise indicated in the comments.

- + ICefBrowserProcessHandler uCEFInterfaces

Interface used to implement browser process callbacks. The functions of this interface will be called on the browser process main thread unless otherwise indicated.

- + ICefBrowserView uCEFInterfaces

A View hosting a ICefBrowser instance. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefBrowserViewDelegate uCEFInterfaces

Implement this interface to handle BrowserView events. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + ICefBrowserViewDelegateEvents uCEFInterfaces

Custom interface used to handle all the ICefBrowserViewDelegate events.

- + ICefButton uCEFInterfaces

A View representing a button. Depending on the specific type, the button could be implemented by a native control or custom rendered. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefButtonDelegate uCEFInterfaces

Implement this interface to handle Button events. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + ICefButtonDelegateEvents uCEFInterfaces

Custom interface used to handle all the ICefButtonDelegate events.

- + ICefCallback uCEFInterfaces

Generic callback interface used for asynchronous continuation.

- + ICefClient uCEFInterfaces

Implement this interface to provide handler implementations.

- + ICefCommandHandler uCEFInterfaces

Implement this interface to handle events related to commands. The functions of this interface will be called on the UI thread.

- + ICefCommandLine uCEFInterfaces

Interface used to create and/or parse command line arguments. Arguments with "–", "-" and, on Windows, "/" prefixes are considered switches. Switches will always precede any arguments without switch prefixes. Switches can optionally have a value specified using the "=" delimiter (e.g. "-switch=value"). An argument of "–" will terminate switch parsing with all subsequent tokens, regardless of prefix, being interpreted as non-switch arguments. Switch names should be lowercase ASCII and will be converted to such if necessary. Switch values will retain the original case and UTF8 encoding. This interface can be used before cef_initialize() is called.

- + ICefCompletionCallback uCEFInterfaces

Generic callback interface used for asynchronous completion.

- + ICefContextMenuHandler uCEFInterfaces

Implement this interface to handle context menu events. The functions of this interface will be called on the UI thread.

- + ICefContextMenuParams uCEFInterfaces

Provides information about the context menu state. The functions of this interface can only be accessed on browser process the UI thread.

- + ICefCookieAccessFilter uCEFInterfaces

Implement this interface to filter cookies that may be sent or received from resource requests. The functions of this interface will be called on the IO thread unless otherwise indicated.

- + ICefCookieManager uCEFInterfaces

Interface used for managing cookies. The functions of this interface may be called on any thread unless otherwise indicated.

- + ICefCookieVisitor uCEFInterfaces

Interface to implement for visiting cookie values. The functions of this interface will always be called on the UI thread.

- + ICefCustomStreamReader uCEFInterfaces

Interface used to read data from a stream. The functions of this interface may be called on any thread.

- + ICefDeleteCookiesCallback uCEFInterfaces

Interface to implement to be notified of asynchronous completion via ICefCookieManager.DeleteCookies.

- + ICefDevToolsMessageObserver uCEFInterfaces

Callback interface for ICefBrowserHost.AddDevToolsMessageObserver. The functions of this interface will be called on the browser process UI thread.

- + ICefDialogHandler uCEFInterfaces

Implement this interface to handle dialog events. The functions of this interface will be called on the browser process UI thread.

- + ICefDictionaryValue uCEFInterfaces

Interface representing a dictionary value. Can be used on any process and thread.

- + ICefDisplay uCEFInterfaces

This interface typically, but not always, corresponds to a physical display connected to the system. A fake Display may exist on a headless system, or a Display may correspond to a remote, virtual display. All size and position values are in density independent pixel (DIP) coordinates unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefDisplayHandler uCEFInterfaces

Implement this interface to handle events related to browser display state. The functions of this interface will be called on the UI thread.

- + ICefDomDocument uCEFInterfaces

Interface used to represent a DOM document. The functions of this interface should only be called on the render process main thread thread.

- + ICefDomNode uCEFInterfaces

Interface used to represent a DOM node. The functions of this interface should only be called on the render process main thread.

- + ICefDomVisitor uCEFInterfaces

Interface to implement for visiting the DOM. The functions of this interface will be called on the render process main thread.

- + ICefDownloadHandler uCEFInterfaces

Interface used to handle file downloads. The functions of this interface will called on the browser process UI thread.

- + ICefDownloadImageCallback uCEFInterfaces

Callback interface for ICefBrowserHost.DownloadImage. The functions of this interface will be called on the browser process UI thread.

- + ICefDownloadItem uCEFInterfaces

Interface used to represent a download item.

- + ICefDownloadItemCallback uCEFInterfaces

Callback interface used to asynchronously cancel a download.

- + ICefDragData uCEFInterfaces

Interface used to represent drag data. The functions of this interface may be called on any thread.

- + ICefDragHandler uCEFInterfaces

Implement this interface to handle events related to dragging. The functions of this interface will be called on the UI thread.

- + ICefEndTracingCallback uCEFInterfaces

Implement this interface to receive notification when tracing has completed. The functions of this interface will be called on the browser process UI thread.

- -ICefExtension -uCEFInterfaces -

Object representing an extension. Methods may be called on any thread unless otherwise indicated.

- -ICefExtensionHandler -uCEFInterfaces -

Implement this interface to handle events related to browser extensions. The functions of this interface will be called on the UI thread. See ICefRequestContext.LoadExtension for information about extension loading.

- - ICefFileDialogCallback uCEFInterfaces

Callback interface for asynchronous continuation of file dialog requests.

- + ICefFillLayout uCEFInterfaces

A simple Layout that causes the associated Panel's one child to be sized to match the bounds of its parent. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefFindHandler uCEFInterfaces

Implement this interface to handle events related to find results. The functions of this interface will be called on the UI thread.

- + ICefFocusHandler uCEFInterfaces

Implement this interface to handle events related to focus. The functions of this interface will be called on the UI thread.

- + ICefFrame uCEFInterfaces

Interface used to represent a frame in the browser window. When used in the browser process the functions of this interface may be called on any thread unless otherwise indicated in the comments. When used in the render process the functions of this interface may only be called on the main thread.

- + ICefFrameHandler uCEFInterfaces

Implement this interface to handle events related to ICefFrame life span. The order of callbacks is: @@ -4981,11 +4996,6 @@

The functions of this interface will be called on the UI thread unless otherwise indicated.

- -ICefGetExtensionResourceCallback -uCEFInterfaces -

Callback interface used for asynchronous continuation of ICefExtensionHandler.GetExtensionResource.

- ICefImage uCEFInterfaces @@ -5377,2854 +5387,2844 @@

Implement this interface for asynchronous task execution. If the task is posted successfully and if the associated message loop is still running then the execute() function will be called on the target thread. If the task fails to post then the task object may be destroyed on the source thread instead of the target thread. For this reason be cautious when performing work in the task object destructor.

+ICefTaskManager +uCEFInterfaces +

Interface that facilitates managing the browser-related tasks. The functions of this structure may only be called on the UI thread.

+ + ICefTaskRunner uCEFInterfaces

Interface that asynchronously executes tasks on the associated thread. It is safe to call the functions of this interface on any thread.

CEF maintains multiple internal threads that are used for handling different types of tasks in different processes. The TCefThreadId definitions in cef_types.h list the common CEF threads. Task runners are also available for other CEF threads as appropriate (for example, V8 WebWorker threads).

- + ICefTextfield uCEFInterfaces

A Textfield supports editing of text. This control is custom rendered with no platform-specific code. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefTextfieldDelegate uCEFInterfaces

Implement this interface to handle Textfield events. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + ICefTextfieldDelegateEvents uCEFInterfaces

Custom interface used to handle all the ICefTextfieldDelegate events.

- + ICefThread uCEFInterfaces

A simple thread abstraction that establishes a message loop on a new thread. The consumer uses ICefTaskRunner to execute code on the thread's message loop. The thread is terminated when the ICefThread object is destroyed or stop() is called. All pending tasks queued on the thread's message loop will run to completion before the thread is terminated. cef_thread_create() can be called on any valid CEF thread in either the browser or render process. This interface should only be used for tasks that require a dedicated thread. In most cases you can post tasks to an existing CEF thread instead of creating a new one; see cef_task.h for details.

- + ICefUnresponsiveProcessCallback uCEFInterfaces

Callback structure for asynchronous handling of an unresponsive process.

- + ICefUrlRequest uCEFInterfaces

Interface used to make a URL request. URL requests are not associated with a browser instance so no ICefClient callbacks will be executed. URL requests can be created on any valid CEF thread in either the browser or render process. Once created the functions of the URL request object must be accessed on the same thread that created it.

- + ICefUrlrequestClient uCEFInterfaces

Interface that should be implemented by the ICefUrlRequest client. The functions of this interface will be called on the same thread that created the request unless otherwise documented.

- + ICEFUrlRequestClientEvents uCEFInterfaces

Custom interface used to handle all the TCEFUrlRequestClientComponent events.

- + ICefV8Accessor uCEFInterfaces

Interface that should be implemented to handle V8 accessor calls. Accessor identifiers are registered by calling ICefV8value.SetValue(). The functions of this interface will be called on the thread associated with the V8 accessor.

- + ICefv8ArrayBufferReleaseCallback uCEFInterfaces

Callback interface that is passed to ICefV8value.CreateArrayBuffer.

- + ICefv8Context uCEFInterfaces

Interface representing a V8 context handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefV8context.GetTaskRunner() function.

- + ICefV8Exception uCEFInterfaces

Interface representing a V8 exception. The functions of this interface may be called on any render process thread.

- + ICefv8Handler uCEFInterfaces

Interface that should be implemented to handle V8 function calls. The functions of this interface will be called on the thread associated with the V8 function.

- + ICefV8Interceptor uCEFInterfaces

Interface that should be implemented to handle V8 interceptor calls. The functions of this interface will be called on the thread associated with the V8 interceptor. Interceptor's named property handlers (with first argument of type CefString) are called when object is indexed by string. Indexed property handlers (with first argument of type int) are called when object is indexed by integer.

- + ICefV8StackFrame uCEFInterfaces

Interface representing a V8 stack frame handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.

- + ICefV8StackTrace uCEFInterfaces

Interface representing a V8 stack trace handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.

- + ICefv8Value uCEFInterfaces

Interface representing a V8 value handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.

- + ICefValue uCEFInterfaces

Interface that wraps other data value types. Complex types (binary, dictionary and list) will be referenced but not owned by this object. Can be used on any process and thread.

- + ICefView uCEFInterfaces

A View is a rectangle within the views View hierarchy. It is the base interface for all Views. All size and position values are in density independent pixels (DIP) unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefViewDelegate uCEFInterfaces

Implement this interface to handle view events. All size and position values are in density independent pixels (DIP) unless otherwise indicated. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + ICefViewDelegateEvents uCEFInterfaces

Custom interface used to handle the ICefViewDelegate events.

- + ICefWaitableEvent uCEFInterfaces

WaitableEvent is a thread synchronization tool that allows one thread to wait for another thread to finish some work. This is equivalent to using a Lock+ConditionVariable to protect a simple boolean value. However, using WaitableEvent in conjunction with a Lock to wait for a more complex state change (e.g., for an item to be added to a queue) is not recommended. In that case consider using a ConditionVariable instead of a WaitableEvent. It is safe to create and/or signal a WaitableEvent from any thread. Blocking on a WaitableEvent by calling the *wait() functions is not allowed on the browser process UI or IO threads.

- + ICefWindow uCEFInterfaces

A Window is a top-level Window/widget in the Views hierarchy. By default it will have a non-client area with title bar, icon and buttons that supports moving and resizing. All size and position values are in density independent pixels (DIP) unless otherwise indicated. Methods must be called on the browser process UI thread unless otherwise indicated.

- + ICefWindowDelegate uCEFInterfaces

Implement this interface to handle window events. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + ICefWindowDelegateEvents uCEFInterfaces

Custom interface used to handle all the ICefWindowDelegate events.

- + ICefWriteHandler uCEFInterfaces

Interface the client can implement to provide a custom stream writer. The functions of this interface may be called on any thread.

- + ICefX509Certificate uCEFInterfaces

Interface representing a X.509 certificate.

- + ICefX509CertPrincipal uCEFInterfaces

Interface representing the issuer or subject field of an X.509 certificate.

- + ICefXmlReader uCEFInterfaces

Interface that supports the reading of XML data via the libxml streaming API. The functions of this interface should only be called on the thread that creates the object.

- + ICefZipReader uCEFInterfaces

Interface that supports the reading of zip archives via the zlib unzip API. The functions of this interface should only be called on the thread that creates the object.

- + IChromiumEvents uCEFInterfaces

Custom interface used to handle all the TChromiumCore events.

- + IDC_ABOUT uCEFConstants

 

- + IDC_ADD_NEW_PROFILE uCEFConstants

 

- + IDC_ALL_WINDOWS_FRONT uCEFConstants

 

- + IDC_ALWAYS_ON_TOP uCEFConstants

 

- + IDC_AUTOFILL_MANDATORY_REAUTH uCEFConstants

 

- + IDC_BACK uCEFConstants

 

- + IDC_BASIC_PRINT uCEFConstants

 

- + IDC_BOOKMARKS_MENU uCEFConstants

 

- + IDC_BOOKMARK_ALL_TABS uCEFConstants

 

- + IDC_BOOKMARK_BAR_ADD_NEW_BOOKMARK uCEFConstants

 

- + IDC_BOOKMARK_BAR_ADD_TO_BOOKMARKS_BAR uCEFConstants

 

- + IDC_BOOKMARK_BAR_ALWAYS_SHOW uCEFConstants

 

- + IDC_BOOKMARK_BAR_EDIT uCEFConstants

 

- + IDC_BOOKMARK_BAR_NEW_FOLDER uCEFConstants

 

- + IDC_BOOKMARK_BAR_OPEN_ALL uCEFConstants

 

- + IDC_BOOKMARK_BAR_OPEN_ALL_INCOGNITO uCEFConstants

 

- + IDC_BOOKMARK_BAR_OPEN_ALL_NEW_TAB_GROUP uCEFConstants

 

- + IDC_BOOKMARK_BAR_OPEN_ALL_NEW_WINDOW uCEFConstants

 

- + IDC_BOOKMARK_BAR_OPEN_INCOGNITO uCEFConstants

 

- + IDC_BOOKMARK_BAR_REDO uCEFConstants

 

- + IDC_BOOKMARK_BAR_REMOVE uCEFConstants

 

- + IDC_BOOKMARK_BAR_REMOVE_FROM_BOOKMARKS_BAR uCEFConstants

 

- + IDC_BOOKMARK_BAR_RENAME_FOLDER uCEFConstants

 

- + IDC_BOOKMARK_BAR_SHOW_APPS_SHORTCUT uCEFConstants

 

- + IDC_BOOKMARK_BAR_SHOW_MANAGED_BOOKMARKS uCEFConstants

 

- + IDC_BOOKMARK_BAR_SHOW_READING_LIST uCEFConstants

 

- + IDC_BOOKMARK_BAR_TRACK_PRICE_FOR_SHOPPING_BOOKMARK uCEFConstants

 

- + IDC_BOOKMARK_BAR_UNDO uCEFConstants

 

- + IDC_BOOKMARK_BAR_UNTRACK_PRICE_FOR_SHOPPING_BOOKMARK uCEFConstants

 

- + IDC_BOOKMARK_MANAGER uCEFConstants

 

- + IDC_BOOKMARK_THIS_TAB uCEFConstants

 

- + IDC_CARET_BROWSING_TOGGLE uCEFConstants

 

- + IDC_CHECK_SPELLING_WHILE_TYPING uCEFConstants

 

- + IDC_CHROME_MENU uCEFConstants

 

- + IDC_CHROME_TIPS uCEFConstants

 

- + IDC_CHROME_WHATS_NEW uCEFConstants

 

- + IDC_CLEAR_BROWSING_DATA uCEFConstants

 

- + IDC_CLOSE_FIND_OR_STOP uCEFConstants

 

- + IDC_CLOSE_PROFILE uCEFConstants

 

- + IDC_CLOSE_SIGN_IN_PROMO uCEFConstants

 

- + IDC_CLOSE_TAB uCEFConstants

 

- + IDC_CLOSE_WINDOW uCEFConstants

 

- + IDC_CONTENT_CLIPBOARD_HISTORY_MENU uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ACCESSIBILITY_LABELS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ACCESSIBILITY_LABELS_TOGGLE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ACCESSIBILITY_LABELS_TOGGLE_ONCE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ADD_A_NOTE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_ADDRESS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PAYMENTS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_AUTOFILL_FALLBACK_PLUS_ADDRESS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_AUTOFILL_FEEDBACK uCEFConstants

 

- + IDC_CONTENT_CONTEXT_CONTROLS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPY uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYAVLOCATION uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYEMAILADDRESS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYIMAGE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYIMAGELOCATION uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYLINKLOCATION uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYLINKTEXT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYLINKTOTEXT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_COPYVIDEOFRAME uCEFConstants

 

- + IDC_CONTENT_CONTEXT_CUSTOM_FIRST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_CUSTOM_LAST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_CUT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_DELETE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_EMOJI uCEFConstants

 

- + IDC_CONTENT_CONTEXT_EXIT_FULLSCREEN uCEFConstants

 

- + IDC_CONTENT_CONTEXT_GENERATEPASSWORD uCEFConstants

 

- + IDC_CONTENT_CONTEXT_GENERATE_QR_CODE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_GOTOURL uCEFConstants

 

- + IDC_CONTENT_CONTEXT_INSPECTBACKGROUNDPAGE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_INSPECTELEMENT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_LANGUAGE_SETTINGS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_LENS_REGION_SEARCH uCEFConstants

 

- + IDC_CONTENT_CONTEXT_LOAD_IMAGE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_LOOK_UP uCEFConstants

 

- + IDC_CONTENT_CONTEXT_LOOP uCEFConstants

 

- + IDC_CONTENT_CONTEXT_NO_SPELLING_SUGGESTIONS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENAVNEWTAB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENIMAGENEWTAB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKBOOKMARKAPP uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKINPROFILE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKNEWTAB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKNEWWINDOW uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKOFFTHERECORD uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKPREVIEW uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPENLINKWITH uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_IN_READING_MODE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_ORIGINAL_IMAGE_NEW_TAB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH1 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH10 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH11 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH12 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH13 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH14 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH2 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH3 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH4 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH5 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH6 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH7 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH8 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH9 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_OPEN_WITH_LAST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PARTIAL_TRANSLATE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PASTE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PASTE_AND_MATCH_STYLE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PDF_OCR uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PICTUREINPICTURE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PROTOCOL_HANDLER_FIRST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PROTOCOL_HANDLER_LAST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_PROTOCOL_HANDLER_SETTINGS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_QUICK_ANSWERS_INLINE_ANSWER uCEFConstants

 

- + IDC_CONTENT_CONTEXT_QUICK_ANSWERS_INLINE_QUERY uCEFConstants

 

- + IDC_CONTENT_CONTEXT_REDO uCEFConstants

 

- + IDC_CONTENT_CONTEXT_RELOADFRAME uCEFConstants

 

- + IDC_CONTENT_CONTEXT_RELOAD_PACKAGED_APP uCEFConstants

 

- + IDC_CONTENT_CONTEXT_REMOVELINKTOTEXT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_RESHARELINKTOTEXT uCEFConstants

 

- + IDC_CONTENT_CONTEXT_RESTART_PACKAGED_APP uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ROTATECCW uCEFConstants

 

- + IDC_CONTENT_CONTEXT_ROTATECW uCEFConstants

 

- + IDC_CONTENT_CONTEXT_RUN_LAYOUT_EXTRACTION uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SAVEAVAS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SAVEIMAGEAS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SAVELINKAS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SAVEPLUGINAS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SAVEVIDEOFRAMEAS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHLENSFORIMAGE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHLENSFORVIDEOFRAME uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHWEBFOR uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHWEBFORIMAGE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHWEBFORNEWTAB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SEARCHWEBFORVIDEOFRAME uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SELECTALL uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHARING_CLICK_TO_CALL_MULTIPLE_DEVICES uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHARING_CLICK_TO_CALL_SINGLE_DEVICE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHARING_SHARED_CLIPBOARD_MULTIPLE_DEVICES uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHARING_SHARED_CLIPBOARD_SINGLE_DEVICE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHARING_SUBMENU uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SHOWALLSAVEDPASSWORDS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SPELLING_SUGGESTION uCEFConstants

 

- + IDC_CONTENT_CONTEXT_SPELLING_TOGGLE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION1 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION2 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION3 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION4 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION5 uCEFConstants

 

- + IDC_CONTENT_CONTEXT_START_SMART_SELECTION_ACTION_LAST uCEFConstants

 

- + IDC_CONTENT_CONTEXT_TRANSLATE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_TRANSLATEIMAGEWITHLENS uCEFConstants

 

- + IDC_CONTENT_CONTEXT_TRANSLATEIMAGEWITHWEB uCEFConstants

 

- + IDC_CONTENT_CONTEXT_UNDO uCEFConstants

 

- + IDC_CONTENT_CONTEXT_VIEWFRAMEINFO uCEFConstants

 

- + IDC_CONTENT_CONTEXT_VIEWFRAMESOURCE uCEFConstants

 

- + IDC_CONTENT_CONTEXT_VIEWPAGEINFO uCEFConstants

 

- + IDC_CONTENT_CONTEXT_WEB_REGION_SEARCH uCEFConstants

 

- + IDC_CONTENT_PASTE_FROM_CLIPBOARD uCEFConstants

 

- + IDC_CONTEXT_COMPOSE uCEFConstants

 

- + IDC_COPY uCEFConstants

 

- + IDC_COPY_URL uCEFConstants

 

- + IDC_CREATE_SHORTCUT uCEFConstants

 

- + IDC_CUSTOMIZE_CHROME uCEFConstants

 

- + IDC_CUSTOMIZE_TOUCH_BAR uCEFConstants

 

- + IDC_CUT uCEFConstants

 

- + IDC_DEBUG_PRINT_VIEW_TREE uCEFConstants

 

- + IDC_DEBUG_PRINT_VIEW_TREE_DETAILS uCEFConstants

 

- + IDC_DEBUG_TOGGLE_TABLET_MODE uCEFConstants

 

- + IDC_DEVELOPER_MENU uCEFConstants

 

- + IDC_DEVICE_SYSTEM_TRAY_ICON_FIRST uCEFConstants

 

- + IDC_DEVICE_SYSTEM_TRAY_ICON_LAST uCEFConstants

 

- + IDC_DEV_TOOLS uCEFConstants

 

- + IDC_DEV_TOOLS_CONSOLE uCEFConstants

 

- + IDC_DEV_TOOLS_DEVICES uCEFConstants

 

- + IDC_DEV_TOOLS_INSPECT uCEFConstants

 

- + IDC_DEV_TOOLS_TOGGLE uCEFConstants

 

- + IDC_DISTILL_PAGE uCEFConstants

 

- + IDC_DUPLICATE_TAB uCEFConstants

 

- + IDC_DUPLICATE_TARGET_TAB uCEFConstants

 

- + IDC_EDIT_MENU uCEFConstants

 

- + IDC_EDIT_SEARCH_ENGINES uCEFConstants

 

- + IDC_ELEVATED_RECOVERY_DIALOG uCEFConstants

 

- + IDC_EMAIL_PAGE_LOCATION uCEFConstants

 

- + IDC_EXIT uCEFConstants

 

- + IDC_EXTENSIONS_CONTEXT_CUSTOM_FIRST uCEFConstants

 

- + IDC_EXTENSIONS_CONTEXT_CUSTOM_LAST uCEFConstants

 

- + IDC_EXTENSIONS_SUBMENU uCEFConstants

 

- + IDC_EXTENSIONS_SUBMENU_MANAGE_EXTENSIONS uCEFConstants

 

- + IDC_EXTENSIONS_SUBMENU_VISIT_CHROME_WEB_STORE uCEFConstants

 

- + IDC_EXTENSION_ERRORS uCEFConstants

 

- + IDC_EXTENSION_INSTALL_ERROR_FIRST uCEFConstants

 

- + IDC_EXTENSION_INSTALL_ERROR_LAST uCEFConstants

 

- + IDC_FEEDBACK uCEFConstants

 

- + IDC_FILE_MENU uCEFConstants

 

- + IDC_FIND uCEFConstants

 

- + IDC_FIND_AND_EDIT_MENU uCEFConstants

 

- + IDC_FIND_MENU uCEFConstants

 

- + IDC_FIND_NEXT uCEFConstants

 

- + IDC_FIND_PREVIOUS uCEFConstants

 

- + IDC_FIRST_UNBOUNDED_MENU uCEFConstants

 

- + IDC_FOCUS_BOOKMARKS uCEFConstants

 

- + IDC_FOCUS_INACTIVE_POPUP_FOR_ACCESSIBILITY uCEFConstants

 

- + IDC_FOCUS_LOCATION uCEFConstants

 

- + IDC_FOCUS_MENU_BAR uCEFConstants

 

- + IDC_FOCUS_NEXT_PANE uCEFConstants

 

- + IDC_FOCUS_PREVIOUS_PANE uCEFConstants

 

- + IDC_FOCUS_SEARCH uCEFConstants

 

- + IDC_FOCUS_THIS_TAB uCEFConstants

 

- + IDC_FOCUS_TOOLBAR uCEFConstants

 

- + IDC_FOCUS_WEB_CONTENTS_PANE uCEFConstants

 

- + IDC_FOLLOW uCEFConstants

 

- + IDC_FORWARD uCEFConstants

 

- + IDC_FULLSCREEN uCEFConstants

 

- + IDC_GROUP_TARGET_TAB uCEFConstants

 

- + IDC_HELP_MENU uCEFConstants

 

- + IDC_HELP_PAGE_VIA_KEYBOARD uCEFConstants

 

- + IDC_HELP_PAGE_VIA_MENU uCEFConstants

 

- + IDC_HIDE_APP uCEFConstants

 

- + IDC_HISTORY_MENU uCEFConstants

 

- + IDC_HOME uCEFConstants

 

- + IDC_IMPORT_SETTINGS uCEFConstants

 

- + IDC_INPUT_METHODS_MENU uCEFConstants

 

- + IDC_INSTALL_PWA uCEFConstants

 

- + IDC_LACROS_DATA_MIGRATION uCEFConstants

 

- + IDC_LIVE_CAPTION uCEFConstants

 

- + IDC_MANAGE_CHROME_PROFILES uCEFConstants

 

- + IDC_MANAGE_EXTENSIONS uCEFConstants

 

- + IDC_MANAGE_GOOGLE_ACCOUNT uCEFConstants

 

- + IDC_MANAGE_PASSWORDS_FOR_PAGE uCEFConstants

 

- + IDC_MAXIMIZE_WINDOW uCEFConstants

 

- + IDC_MEDIA_CONTEXT_MEDIA_STREAM_CAPTURE_LIST_FIRST uCEFConstants

 

- + IDC_MEDIA_CONTEXT_MEDIA_STREAM_CAPTURE_LIST_LAST uCEFConstants

 

- + IDC_MEDIA_ROUTER_ABOUT uCEFConstants

 

- + IDC_MEDIA_ROUTER_ALWAYS_SHOW_TOOLBAR_ACTION uCEFConstants

 

- + IDC_MEDIA_ROUTER_HELP uCEFConstants

 

- + IDC_MEDIA_ROUTER_LEARN_MORE uCEFConstants

 

- + IDC_MEDIA_ROUTER_SHOWN_BY_POLICY uCEFConstants

 

- + IDC_MEDIA_ROUTER_SHOW_IN_TOOLBAR uCEFConstants

 

- + IDC_MEDIA_ROUTER_TOGGLE_MEDIA_REMOTING uCEFConstants

 

- + IDC_MEDIA_STREAM_DEVICE_ALWAYS_ALLOW uCEFConstants

 

- + IDC_MEDIA_STREAM_DEVICE_STATUS_TRAY uCEFConstants

 

- + IDC_MEDIA_TOOLBAR_CONTEXT_REPORT_CAST_ISSUE uCEFConstants

 

- + IDC_MEDIA_TOOLBAR_CONTEXT_SHOW_OTHER_SESSIONS uCEFConstants

 

- + IDC_MIGRATE_LOCAL_CREDIT_CARD_FOR_PAGE uCEFConstants

 

- + IDC_MINIMIZE_WINDOW uCEFConstants

 

- + IDC_MinimumLabelValue uCEFConstants

 

- + IDC_MORE_TOOLS_MENU uCEFConstants

 

- + IDC_MOVE_TAB_NEXT uCEFConstants

 

- + IDC_MOVE_TAB_PREVIOUS uCEFConstants

 

- + IDC_MOVE_TAB_TO_NEW_WINDOW uCEFConstants

 

- + IDC_MUTE_TARGET_SITE uCEFConstants

 

- + IDC_NAME_WINDOW uCEFConstants

 

- + IDC_NEW_INCOGNITO_WINDOW uCEFConstants

 

- + IDC_NEW_TAB uCEFConstants

 

- + IDC_NEW_TAB_TO_RIGHT uCEFConstants

 

- + IDC_NEW_WINDOW uCEFConstants

 

- + IDC_OFFERS_AND_REWARDS_FOR_PAGE uCEFConstants

 

- + IDC_OPEN_CURRENT_URL uCEFConstants

 

- + IDC_OPEN_FILE uCEFConstants

 

- + IDC_OPEN_GUEST_PROFILE uCEFConstants

 

- + IDC_OPEN_IN_CHROME uCEFConstants

 

- + IDC_OPEN_IN_PWA_WINDOW uCEFConstants

 

- + IDC_OPEN_LINK_IN_PROFILE_FIRST uCEFConstants

 

- + IDC_OPEN_LINK_IN_PROFILE_LAST uCEFConstants

 

- + IDC_OPEN_RECENT_TAB uCEFConstants

 

- + IDC_OPEN_SAFETY_HUB uCEFConstants

 

- + IDC_OPTIONS uCEFConstants

 

- + IDC_ORGANIZE_TABS uCEFConstants

 

- + IDC_PASSWORDS_AND_AUTOFILL_MENU uCEFConstants

 

- + IDC_PASTE uCEFConstants

 

- + IDC_PASTE_AND_GO uCEFConstants

 

- + IDC_PERFORMANCE uCEFConstants

 

- + IDC_PIN_TARGET_TAB uCEFConstants

 

- + IDC_PRINT uCEFConstants

 

- + IDC_PROFILE_MAIN_MENU uCEFConstants

 

- + IDC_PROFILE_MENU_IN_APP_MENU uCEFConstants

 

- + IDC_PROFILING_ENABLED uCEFConstants

 

- + IDC_QRCODE_GENERATOR uCEFConstants

 

- + IDC_READING_LIST_MENU uCEFConstants

 

- + IDC_READING_LIST_MENU_ADD_TAB uCEFConstants

 

- + IDC_READING_LIST_MENU_SHOW_UI uCEFConstants

 

- + IDC_RECENT_TABS_LOGIN_FOR_DEVICE_TABS uCEFConstants

 

- + IDC_RECENT_TABS_MENU uCEFConstants

 

- + IDC_RECENT_TABS_NO_DEVICE_TABS uCEFConstants

 

- + IDC_RELOAD uCEFConstants

 

- + IDC_RELOAD_BYPASSING_CACHE uCEFConstants

 

- + IDC_RELOAD_CLEARING_CACHE uCEFConstants

 

- + IDC_RESTORE_TAB uCEFConstants

 

- + IDC_RESTORE_WINDOW uCEFConstants

 

- + IDC_ROUTE_MEDIA uCEFConstants

 

- + IDC_SAVE_AND_SHARE_MENU uCEFConstants

 

- + IDC_SAVE_AUTOFILL_ADDRESS uCEFConstants

 

- + IDC_SAVE_CREDIT_CARD_FOR_PAGE uCEFConstants

 

- + IDC_SAVE_IBAN_FOR_PAGE uCEFConstants

 

- + IDC_SAVE_PAGE uCEFConstants

 

- + IDC_SEARCH uCEFConstants

 

- + IDC_SELECT_LAST_TAB uCEFConstants

 

- + IDC_SELECT_NEXT_TAB uCEFConstants

 

- + IDC_SELECT_PREVIOUS_TAB uCEFConstants

 

- + IDC_SELECT_TAB_0 uCEFConstants

 

- + IDC_SELECT_TAB_1 uCEFConstants

 

- + IDC_SELECT_TAB_2 uCEFConstants

 

- + IDC_SELECT_TAB_3 uCEFConstants

 

- + IDC_SELECT_TAB_4 uCEFConstants

 

- + IDC_SELECT_TAB_5 uCEFConstants

 

- + IDC_SELECT_TAB_6 uCEFConstants

 

- + IDC_SELECT_TAB_7 uCEFConstants

 

- + IDC_SEND_TAB_TO_SELF uCEFConstants

 

- + IDC_SHARING_HUB uCEFConstants

 

- + IDC_SHARING_HUB_MENU uCEFConstants

 

- + IDC_SHARING_HUB_SCREENSHOT uCEFConstants

 

- + IDC_SHOW_ADDRESSES uCEFConstants

 

- + IDC_SHOW_APP_MENU uCEFConstants

 

- + IDC_SHOW_AS_TAB uCEFConstants

 

- + IDC_SHOW_AVATAR_MENU uCEFConstants

 

- + IDC_SHOW_BETA_FORUM uCEFConstants

 

- + IDC_SHOW_BOOKMARK_BAR uCEFConstants

 

- + IDC_SHOW_BOOKMARK_MANAGER uCEFConstants

 

- + IDC_SHOW_BOOKMARK_SIDE_PANEL uCEFConstants

 

- + IDC_SHOW_CHROME_LABS uCEFConstants

 

- + IDC_SHOW_DOWNLOADS uCEFConstants

 

- + IDC_SHOW_FULL_URLS uCEFConstants

 

- + IDC_SHOW_HISTORY uCEFConstants

 

- + IDC_SHOW_HISTORY_CLUSTERS_SIDE_PANEL uCEFConstants

 

- + IDC_SHOW_MANAGEMENT_PAGE uCEFConstants

 

- + IDC_SHOW_PASSWORD_CHECKUP uCEFConstants

 

- + IDC_SHOW_PASSWORD_MANAGER uCEFConstants

 

- + IDC_SHOW_PAYMENT_METHODS uCEFConstants

 

- + IDC_SHOW_READING_MODE_SIDE_PANEL uCEFConstants

 

- + IDC_SHOW_SAVE_LOCAL_CARD_SIGN_IN_PROMO_IF_APPLICABLE uCEFConstants

 

- + IDC_SHOW_SEARCH_COMPANION uCEFConstants

 

- + IDC_SHOW_SETTINGS_CHANGE_FIRST uCEFConstants

 

- + IDC_SHOW_SETTINGS_CHANGE_LAST uCEFConstants

 

- + IDC_SHOW_SETTINGS_RESET_BUBBLE uCEFConstants

 

- + IDC_SHOW_SIGNIN_WHEN_PAUSED uCEFConstants

 

- + IDC_SHOW_SRT_BUBBLE uCEFConstants

 

- + IDC_SHOW_SYNC_SETTINGS uCEFConstants

 

- + IDC_SHOW_TRANSLATE uCEFConstants

 

- + IDC_SPELLCHECK_ADD_TO_DICTIONARY uCEFConstants

 

- + IDC_SPELLCHECK_LANGUAGES_FIRST uCEFConstants

 

- + IDC_SPELLCHECK_LANGUAGES_LAST uCEFConstants

 

- + IDC_SPELLCHECK_MENU uCEFConstants

 

- + IDC_SPELLCHECK_MULTI_LINGUAL uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_0 uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_1 uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_2 uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_3 uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_4 uCEFConstants

 

- + IDC_SPELLCHECK_SUGGESTION_LAST uCEFConstants

 

- + IDC_SPELLPANEL_TOGGLE uCEFConstants

 

- + IDC_STATUS_TRAY_KEEP_CHROME_RUNNING_IN_BACKGROUND uCEFConstants

 

- + IDC_STOP uCEFConstants

 

- + IDC_TAB_MENU uCEFConstants

 

- + IDC_TAB_SEARCH uCEFConstants

 

- + IDC_TAB_SEARCH_CLOSE uCEFConstants

 

- + IDC_TAKE_SCREENSHOT uCEFConstants

 

- + IDC_TASK_MANAGER uCEFConstants

 

- + IDC_TOGGLE_FULLSCREEN_TOOLBAR uCEFConstants

 

- + IDC_TOGGLE_JAVASCRIPT_APPLE_EVENTS uCEFConstants

 

- + IDC_TOGGLE_MULTITASK_MENU uCEFConstants

 

- + IDC_TOGGLE_REQUEST_TABLET_SITE uCEFConstants

 

- + IDC_TRANSLATE_ORIGINAL_LANGUAGE_BASE uCEFConstants

 

- + IDC_TRANSLATE_TARGET_LANGUAGE_BASE uCEFConstants

 

- + IDC_TURN_ON_SYNC uCEFConstants

 

- + IDC_UNFOLLOW uCEFConstants

 

- + IDC_UPDATE_SIDE_PANEL_PIN_STATE uCEFConstants

 

- + IDC_UPGRADE_DIALOG uCEFConstants

 

- + IDC_USE_SYSTEM_TITLE_BAR uCEFConstants

 

- + IDC_VIEW_MENU uCEFConstants

 

- + IDC_VIEW_PASSWORDS uCEFConstants

 

- + IDC_VIEW_SOURCE uCEFConstants

 

- + IDC_VIRTUAL_CARD_ENROLL uCEFConstants

 

- + IDC_VIRTUAL_CARD_MANUAL_FALLBACK uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_2 uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_3 uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_4 uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_5 uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_LAST uCEFConstants

 

- + IDC_VISIT_DESKTOP_OF_LRU_USER_NEXT uCEFConstants

 

- + IDC_WEBAUTHN uCEFConstants

 

- + IDC_WEB_APP_MENU_APP_INFO uCEFConstants

 

- + IDC_WEB_APP_SETTINGS uCEFConstants

 

- + IDC_WINDOW_CLOSE_OTHER_TABS uCEFConstants

 

- + IDC_WINDOW_CLOSE_TABS_TO_RIGHT uCEFConstants

 

- + IDC_WINDOW_GROUP_TAB uCEFConstants

 

- + IDC_WINDOW_MENU uCEFConstants

 

- + IDC_WINDOW_MUTE_SITE uCEFConstants

 

- + IDC_WINDOW_PIN_TAB uCEFConstants

 

- + IDC_WRITING_DIRECTION_DEFAULT uCEFConstants

 

- + IDC_WRITING_DIRECTION_LTR uCEFConstants

 

- + IDC_WRITING_DIRECTION_MENU uCEFConstants

 

- + IDC_WRITING_DIRECTION_RTL uCEFConstants

 

- + IDC_ZOOM_MENU uCEFConstants

 

- + IDC_ZOOM_MINUS uCEFConstants

 

- + IDC_ZOOM_NORMAL uCEFConstants

 

- + IDC_ZOOM_PLUS uCEFConstants

 

- + INFINITE uCEFConstants

 

- + InitializeCefTime uCEFMiscFunctions

Initialize a TCefTime variable.

- + InitializeWindowHandle uCEFMiscFunctions

 

- + Is32BitProcess uCEFMiscFunctions

 

- + IsCEFSubprocess uCEFMiscFunctions

Returns true if the command line switch has a "type" value.

- + IServerEvents uCEFInterfaces

Custom interface used to handle all the TCEFServerComponent events.

- + IsWowProcess uCEFMiscFunctions

 

- + JSON_WRITER_DEFAULT uCEFConstants

Default behavior.

- + JSON_WRITER_OMIT_BINARY_VALUES uCEFConstants

This option instructs the writer that if a Binary value is encountered, the value (and key if within a dictionary) will be omitted from the output, and success will be returned. Otherwise, if a binary value is encountered, failure will be returned.

- + JSON_WRITER_OMIT_DOUBLE_TYPE_PRESERVATION uCEFConstants

This option instructs the writer to write doubles that have no fractional part as a normal integer (i.e., without using exponential notation or appending a '.0') as long as the value is within the range of a 64-bit int.

- + JSON_WRITER_PRETTY_PRINT uCEFConstants

Return a slightly nicer formatted json string (pads with whitespace to help with readability).

- + Kernel32DLL uCEFMiscFunctions

 

- + KEYBOARD_LAYOUT_EN_US uCEFOSRIMEHandler

 

- + LIBCEF_DLL uCEFApplication

 

- + LIBCEF_DLL uCEFApplicationCore

 

- + LIBCEF_LOCALE_DIR uCEFApplicationCore

 

- + LIBCEF_LOCALE_ENUS uCEFApplicationCore

 

- + LIBCEF_PAK uCEFApplicationCore

for InitLibLocationFromArgs

- -LogicalToDevice -uCEFMiscFunctions -

 

- LogicalToDevice uCEFMiscFunctions

 

+LogicalToDevice +uCEFMiscFunctions +

 

+ + LOGSEVERITY_DEBUG uCEFConstants

DEBUG logging.

- + LOGSEVERITY_DEFAULT uCEFConstants

Default logging (currently INFO logging).

- + LOGSEVERITY_DISABLE uCEFConstants

Disable logging to file for all messages, and to stderr for messages with severity less than FATAL.

- + LOGSEVERITY_ERROR uCEFConstants

ERROR logging.

- + LOGSEVERITY_FATAL uCEFConstants

FATAL logging.

- + LOGSEVERITY_INFO uCEFConstants

INFO logging.

- + LOGSEVERITY_VERBOSE uCEFConstants

Verbose logging.

- + LOGSEVERITY_WARNING uCEFConstants

WARNING logging.

- + LOG_ITEMS_DEFAULT uCEFConstants

Prepend the default list of items.

- + LOG_ITEMS_FLAG_PROCESS_ID uCEFConstants

Prepend the process ID.

- + LOG_ITEMS_FLAG_THREAD_ID uCEFConstants

Prepend the thread ID.

- + LOG_ITEMS_FLAG_TICK_COUNT uCEFConstants

Prepend the tickcount.

- + LOG_ITEMS_FLAG_TIME_STAMP uCEFConstants

Prepend the timestamp.

- + LOG_ITEMS_NONE uCEFConstants

Prepend no items.

- + LPMEMORYSTATUSEX uCEFTypes

 

- + MENU_ID_ADD_TO_DICTIONARY uCEFConstants

 

- + MENU_ID_BACK uCEFConstants

Navigation.

- + MENU_ID_COPY uCEFConstants

 

- + MENU_ID_CUSTOM_FIRST uCEFConstants

Custom menu items originating from the renderer process.

- + MENU_ID_CUSTOM_LAST uCEFConstants

 

- + MENU_ID_CUT uCEFConstants

 

- + MENU_ID_DELETE uCEFConstants

 

- + MENU_ID_FIND uCEFConstants

Miscellaneous.

- + MENU_ID_FORWARD uCEFConstants

 

- + MENU_ID_NO_SPELLING_SUGGESTIONS uCEFConstants

 

- + MENU_ID_PASTE uCEFConstants

 

- + MENU_ID_PRINT uCEFConstants

 

- + MENU_ID_REDO uCEFConstants

 

- + MENU_ID_RELOAD uCEFConstants

 

- + MENU_ID_RELOAD_NOCACHE uCEFConstants

 

- + MENU_ID_SELECT_ALL uCEFConstants

 

- + MENU_ID_SPELLCHECK_SUGGESTION_0 uCEFConstants

Spell checking word correction suggestions.

- + MENU_ID_SPELLCHECK_SUGGESTION_1 uCEFConstants

 

- + MENU_ID_SPELLCHECK_SUGGESTION_2 uCEFConstants

 

- + MENU_ID_SPELLCHECK_SUGGESTION_3 uCEFConstants

 

- + MENU_ID_SPELLCHECK_SUGGESTION_4 uCEFConstants

 

- + MENU_ID_SPELLCHECK_SUGGESTION_LAST uCEFConstants

 

- + MENU_ID_STOPLOAD uCEFConstants

 

- + MENU_ID_UNDO uCEFConstants

Editing.

- + MENU_ID_USER_FIRST uCEFConstants

All user-defined menu IDs should come between MENU_ID_USER_FIRST and MENU_ID_USER_LAST to avoid overlapping the Chromium and CEF ID ranges defined in the tools/gritsettings/resource_ids file.

- + MENU_ID_USER_LAST uCEFConstants

 

- + MENU_ID_VIEW_SOURCE uCEFConstants

 

- + MoveFileList uCEFMiscFunctions

 

- + NativeInt uCEFTypes

 

- + NativeUInt uCEFTypes

 

- + Netapi32DLL uCEFMiscFunctions

 

- + NetApiBufferFree uCEFMiscFunctions

 

- + NetServerGetInfo uCEFMiscFunctions

 

- + NTDLL uCEFMiscFunctions

 

- + OutputDebugMessage uCEFMiscFunctions

 

- + OutputLastErrorMessage uCEFMiscFunctions

 

- + PathCanonicalizeAnsi uCEFMiscFunctions

 

- + PathCanonicalizeUnicode uCEFMiscFunctions

 

- + PathIsRelativeAnsi uCEFMiscFunctions

 

- + PathIsRelativeUnicode uCEFMiscFunctions

 

- + PathIsUNCAnsi uCEFMiscFunctions

 

- + PathIsUNCUnicode uCEFMiscFunctions

 

- + PathIsURLAnsi uCEFMiscFunctions

 

- + PathIsURLUnicode uCEFMiscFunctions

 

- + PCefAcceleratedPaintInfo uCEFTypes

 

- + PCefAccessibilityHandler uCEFTypes

 

- + PCefApp uCEFTypes

 

- + PCefAudioHandler uCEFTypes

 

- + PCefAudioParameters uCEFTypes

 

- + PCefAuthCallback uCEFTypes

 

- + PCefBaseRefCounted uCEFTypes

 

- + PCefBaseScoped uCEFTypes

 

- + PCefBaseTime uCEFTypes

 

- + PCefBeforeDownloadCallback uCEFTypes

 

- + PCefBinaryValue uCEFTypes

 

- + PCefBoxLayout uCEFTypes

 

- + PCefBoxLayoutSettings uCEFTypes

 

- + PCefBrowser uCEFTypes

 

- + PCefBrowserHost uCEFTypes

 

- + PCefBrowserProcessHandler uCEFTypes

 

- + PCefBrowserSettings uCEFTypes

 

- + PCefBrowserView uCEFTypes

 

- + PCefBrowserViewDelegate uCEFTypes

 

- + PCefButton uCEFTypes

 

- + PCefButtonDelegate uCEFTypes

 

- + PCefCallback uCEFTypes

 

- + PCefChar uCEFTypes

 

- + PCefClient uCEFTypes

 

- + PCefColor uCEFTypes

 

- + PCefCommandHandler uCEFTypes

 

- + PCefCommandLine uCEFTypes

 

- + PCefCompletionCallback uCEFTypes

 

- + PCefCompositionUnderline uCEFTypes

 

- + PCefContextMenuHandler uCEFTypes

 

- + PCefContextMenuParams uCEFTypes

 

- + PCefCookie uCEFTypes

 

- + PCefCookieAccessFilter uCEFTypes

 

- + PCefCookieManager uCEFTypes

 

- + PCefCookieVisitor uCEFTypes

 

- + PCefCursorInfo uCEFTypes

 

- + PCefDeleteCookiesCallback uCEFTypes

 

- + PCefDevToolsMessageObserver uCEFTypes

 

- + PCefDialogHandler uCEFTypes

 

- + PCefDictionaryValue uCEFTypes

 

- + PCefDisplay uCEFTypes

 

- + PCefDisplayHandler uCEFTypes

 

- + PCefDomDocument uCEFTypes

 

- + PCefDomNode uCEFTypes

 

- + PCefDomVisitor uCEFTypes

 

- + PCefDownloadHandler uCEFTypes

 

- + PCefDownloadImageCallback uCEFTypes

 

- + PCefDownloadItem uCEFTypes

 

- + PCefDownloadItemCallback uCEFTypes

 

- + PCefDragData uCEFTypes

 

- + PCefDraggableRegion uCEFTypes

 

- + PCefDraggableRegionArray uCEFTypes

 

- + PCefDragHandler uCEFTypes

 

- + PCefEndTracingCallback uCEFTypes

 

- -PCefExtension -uCEFTypes -

 

- -PCefExtensionHandler -uCEFTypes -

 

- - PCefFileDialogCallback uCEFTypes

 

- + PCefFillLayout uCEFTypes

 

- + PCefFindHandler uCEFTypes

 

- + PCefFocusHandler uCEFTypes

 

- + PCefFrame uCEFTypes

 

- -PCefFrameHandler -uCEFTypes -

 

- -PCefGetExtensionResourceCallback +PCefFrameHandler uCEFTypes

 

@@ -8274,961 +8274,976 @@

 

+PCefLinuxWindowProperties +uCEFTypes +

 

+ + PCefListValue uCEFTypes

 

- + PCefLoadHandler uCEFTypes

 

- + PCefMainArgs uCEFTypes

 

- + PCefMediaAccessCallback uCEFTypes

 

- + PCefMediaAccessHandler uCEFTypes

 

- + PCefMediaObserver uCEFTypes

 

- + PCefMediaRoute uCEFTypes

 

- + PCefMediaRouteCreateCallback uCEFTypes

 

- + PCefMediaRouter uCEFTypes

 

- + PCefMediaSink uCEFTypes

 

- + PCefMediaSinkDeviceInfo uCEFTypes

 

- + PCefMediaSinkDeviceInfoCallback uCEFTypes

 

- + PCefMediaSource uCEFTypes

 

- + PCefMenuButton uCEFTypes

 

- + PCefMenuButtonDelegate uCEFTypes

 

- + PCefMenuButtonPressedLock uCEFTypes

 

- + PCefMenuModel uCEFTypes

 

- + PCefMenuModelDelegate uCEFTypes

 

- + PCefMouseEvent uCEFTypes

 

- + PCefNavigationEntry uCEFTypes

 

- + PCefNavigationEntryVisitor uCEFTypes

 

- + PCefOverlayController uCEFTypes

 

- + PCefPanel uCEFTypes

 

- + PCefPanelDelegate uCEFTypes

 

- + PCefPdfPrintCallback uCEFTypes

 

- + PCefPdfPrintSettings uCEFTypes

 

- + PCefPermissionHandler uCEFTypes

 

- + PCefPermissionPromptCallback uCEFTypes

 

- + PCefPoint uCEFTypes

 

- + PCefPopupFeatures uCEFTypes

 

- + PCefPostData uCEFTypes

 

- + PCefPostDataElement uCEFTypes

 

- + PCefPreferenceManager uCEFTypes

 

- + PCefPreferenceRegistrar uCEFTypes

 

- + PCefPrintDialogCallback uCEFTypes

 

- + PCefPrintHandler uCEFTypes

 

- + PCefPrintJobCallback uCEFTypes

 

- + PCefPrintSettings uCEFTypes

 

- + PCefProcessMessage uCEFTypes

 

- + PCefRange uCEFTypes

 

- + PCefReadHandler uCEFTypes

 

- + PCefRect uCEFTypes

 

- + PCefRectArray uCEFTypes

 

- + PCefRegistration uCEFTypes

 

- + PCefRenderHandler uCEFTypes

 

- + PCefRenderProcessHandler uCEFTypes

 

- + PCefRequest uCEFTypes

 

- + PCefRequestContext uCEFTypes

 

- + PCefRequestContextHandler uCEFTypes

 

- + PCefRequestContextSettings uCEFTypes

 

- + PCefRequestHandler uCEFTypes

 

- + PCefResolveCallback uCEFTypes

 

- + PCefResourceBundle uCEFTypes

 

- + PCefResourceBundleHandler uCEFTypes

 

- + PCefResourceHandler uCEFTypes

 

- + PCefResourceReadCallback uCEFTypes

 

- + PCefResourceRequestHandler uCEFTypes

 

- + PCefResourceSkipCallback uCEFTypes

 

- + PCefResponse uCEFTypes

 

- + PCefResponseFilter uCEFTypes

 

- + PCefRunContextMenuCallback uCEFTypes

 

- + PCefRunFileDialogCallback uCEFTypes

 

- + PCefRunQuickMenuCallback uCEFTypes

 

- + PCefSchemeHandlerFactory uCEFTypes

 

- + PCefSchemeRegistrar uCEFTypes

 

- + PCefScreenInfo uCEFTypes

 

- + PCefScrollView uCEFTypes

 

- + PCefSelectClientCertificateCallback uCEFTypes

 

- + PCefServer uCEFTypes

 

- + PCefServerHandler uCEFTypes

 

- + PCefSetCookieCallback uCEFTypes

 

- + PCefSettings uCEFTypes

 

- + PCefSharedMemoryRegion uCEFTypes

 

- + PCefSharedProcessMessageBuilder uCEFTypes

 

- + PCefSize uCEFTypes

 

- + PCefSslInfo uCEFTypes

 

- + PCefSSLStatus uCEFTypes

 

- + PCefStreamReader uCEFTypes

 

- + PCefStreamWriter uCEFTypes

 

- + PCefString uCEFTypes

 

- + PCefStringUserFree uCEFTypes

 

- + PCefStringUserFreeUtf16 uCEFTypes

 

- + PCefStringUserFreeUtf8 uCEFTypes

 

- + PCefStringUserFreeWide uCEFTypes

 

- + PCefStringUtf16 uCEFTypes

 

- + PCefStringUtf8 uCEFTypes

 

- + PCefStringVisitor uCEFTypes

 

- + PCefStringWide uCEFTypes

 

- + PCefTask uCEFTypes

 

+ +PCefTaskInfo +uCEFTypes +

 

+ +PCefTaskManager +uCEFTypes +

 

+ + PCefTaskRunner uCEFTypes

 

- + PCefTextfield uCEFTypes

 

- + PCefTextfieldDelegate uCEFTypes

 

- + PCefThread uCEFTypes

 

- + PCefTime uCEFTypes

 

- + PCefTouchEvent uCEFTypes

 

- + PCefTouchHandleState uCEFTypes

 

- + PCefUnresponsiveProcessCallback uCEFTypes

 

- + PCefUrlParts uCEFTypes

 

- + PCefUrlRequest uCEFTypes

 

- + PCefUrlRequestClient uCEFTypes

 

- + PCefV8Accessor uCEFTypes

 

- + PCefv8ArrayBufferReleaseCallback uCEFTypes

 

- + PCefv8Context uCEFTypes

 

- + PCefV8Exception uCEFTypes

 

- + PCefv8Handler uCEFTypes

 

- + PCefV8Interceptor uCEFTypes

 

- + PCefV8StackFrame uCEFTypes

 

- + PCefV8StackTrace uCEFTypes

 

- + PCefv8Value uCEFTypes

 

- + PCefV8ValueArray uCEFTypes

 

- + PCefValue uCEFTypes

 

- + PCefView uCEFTypes

 

- + PCefViewDelegate uCEFTypes

 

- + PCefWaitableEvent uCEFTypes

 

- + PCefWindow uCEFTypes

 

- + PCefWindowDelegate uCEFTypes

 

- + PCefWindowInfo uCEFTypes

 

- + PCefWriteHandler uCEFTypes

 

- + PCefX509Certificate uCEFTypes

 

- + PCefX509CertPrincipal uCEFTypes

 

- + PCefXmlReader uCEFTypes

 

- + PCefZipReader uCEFTypes

 

- + PChar16 uCEFTypes

 

- + pfidLinux uCEFConstants

 

- + pfidOSX uCEFConstants

 

- + pfidWindows uCEFConstants

 

- + pidLinux64 uCEFConstants

 

- + pidOSX32 uCEFConstants

 

- + pidOSX64 uCEFConstants

 

- + pidOSXArm64 uCEFConstants

 

- + pidWin32 uCEFConstants

If any of the platform IDs are not defined then we set them as 0 to avoid build errors on older Delphi versions.

- + pidWin64 uCEFConstants

 

- + PNativeInt uCEFTypes

 

- + PNativeUInt uCEFTypes

 

- + PPCefDisplay uCEFTypes

 

- + PPCefMediaRoute uCEFTypes

 

- + PPCefMediaSink uCEFTypes

 

- + PPCefPostDataElement uCEFTypes

 

- + PPCefV8Value uCEFTypes

 

- + PPCefX509Certificate uCEFTypes

 

- + PPSingle uCEFTypes

 

- + ProcessUnderWow64 uCEFMiscFunctions

 

- + QM_EDITFLAG_CAN_COPY uCEFConstants

 

- + QM_EDITFLAG_CAN_CUT uCEFConstants

 

- + QM_EDITFLAG_CAN_ELLIPSIS uCEFConstants

 

- + QM_EDITFLAG_CAN_PASTE uCEFConstants

 

- + QM_EDITFLAG_NONE uCEFConstants

Supported quick menu state bit flags.

- + rbstring uCEFTypes

 

- + Register uCEFBrowserViewComponent

 

- + Register uCEFBrowserWindow

 

- + Register uCEFBufferPanel

 

- + Register uCEFChromium

 

- + Register uCEFChromiumWindow

 

- + Register uCEFLabelButtonComponent

 

- + Register uCEFLinkedWindowParent

 

- + Register uCEFMenuButtonComponent

 

- + Register uCEFOsrBrowserWindow

 

- + Register uCEFPanelComponent

 

- + Register uCEFScrollViewComponent

 

- + Register uCEFSentinel

 

- + Register uCEFServerComponent

 

- + Register uCEFTextfieldComponent

 

- + Register uCEFUrlRequestClientComponent

 

- + Register uCEFWindowComponent

 

- + Register uCEFWindowParent

 

- + Register uCEFWorkScheduler

 

- + RunningWindows10OrNewer uCEFMiscFunctions

 

- + SetWindowLongPtr uCEFMiscFunctions

 

- + SHLWAPIDLL uCEFMiscFunctions

 

- + ShutdownBlockReasonCreate uCEFMiscFunctions

 

- + ShutdownBlockReasonDestroy uCEFMiscFunctions

 

- + SplitLongString uCEFMiscFunctions

 

- + SSL_CONNECTION_VERSION_QUIC uCEFConstants

 

- + SSL_CONNECTION_VERSION_SSL2 uCEFConstants

 

- + SSL_CONNECTION_VERSION_SSL3 uCEFConstants

 

- + SSL_CONNECTION_VERSION_TLS1 uCEFConstants

 

- + SSL_CONNECTION_VERSION_TLS1_1 uCEFConstants

 

- + SSL_CONNECTION_VERSION_TLS1_2 uCEFConstants

 

- + SSL_CONNECTION_VERSION_TLS1_3 uCEFConstants

 

- + SSL_CONNECTION_VERSION_UNKNOWN uCEFConstants

Supported SSL version values.

- + SSL_CONTENT_DISPLAYED_INSECURE_CONTENT uCEFConstants

 

- + SSL_CONTENT_NORMAL_CONTENT uCEFConstants

Supported SSL content status flags. See content/public/common/ssl_status.h for more information.

- + SSL_CONTENT_RAN_INSECURE_CONTENT uCEFConstants

 

- + SystemTimeToCefTime uCEFMiscFunctions

Converts a TSystemTime value to TCefTime.

- + TBrowserInfo uCEFChromiumCore

 

- + TBrowserInfoList uCEFChromiumCore

 

- + TBrowserKeyEvent uCEFOsrBrowserWindow

 

- + TBrowserMouseEvent uCEFOsrBrowserWindow

 

- + TBrowserMouseMoveEvent uCEFOsrBrowserWindow

 

- + TBrowserMouseWheelEvent uCEFOsrBrowserWindow

 

- + TBrowserUTF8KeyPressEvent uCEFOsrBrowserWindow

TBrowserKeyPressEvent = procedure(Sender: TObject; var Key: char; var AHandled: Boolean) of Object;

- + TBrowserWindow uCEFBrowserWindow

TBrowserWindow @@ -9251,384 +9266,384 @@

* Optional prevent pop-up windows by implementing Chromium.BeforePopup Chromium.OpenUrlFromTab

- + TBufferPanel uCEFBufferPanel

TBufferPanel is used by VCL and LCL applications with browsers in OSR mode to draw the browser contents. See the SimpleOSRBrowser demo for more details.

- + TCefAcceleratedPaintInfo uCEFTypes

Structure containing shared texture information for the OnAcceleratedPaint callback. Resources will be released to the underlying pool for reuse when the callback returns from client code.

- + TCefAccessibilityHandler uCEFTypes

Implement this structure to receive accessibility notification when accessibility events have been registered. The functions of this structure will be called on the UI thread.

- + TCEFAccessibilityHandlerOwn uCEFAccessibilityHandler

 

- + TCefAlphaType uCEFTypes

Describes how to interpret the alpha component of a pixel.

- + TCefAplicationStatus uCEFTypes

Status of TCefAplicationCore.

- + TCefApp uCEFTypes

Implement this structure to provide handler implementations. Methods will be called by the process and/or thread indicated.

- + TCefApplication uCEFApplication

Main class used to simplify the CEF initialization and destruction.

- + TCefApplicationCore uCEFApplicationCore

Parent class of TCefApplication used to simplify the CEF initialization and destruction.

- + TCefAppOwn uCEFApp

Implement this interface to provide handler implementations. Methods will be called by the process and/or thread indicated.

- + TCEFArgCopy uCEFArgCopy

 

- + TCefAudioHandler uCEFTypes

Implement this structure to handle audio events.

- + TCefAudioHandlerOwn uCEFAudioHandler

 

- + TCefAudioParameters uCEFTypes

Structure representing the audio parameters for setting up the audio handler.

- + TCefAuthCallback uCEFTypes

Callback structure used for asynchronous continuation of authentication requests.

- + TCefAuthCallbackRef uCEFAuthCallback

 

- + TCefAutoplayPolicy uCEFTypes

Autoplay policy types used by TCefApplicationCore.AutoplayPolicy. See the –autoplay-policy switch.

- + TCefAxisAlignment uCEFTypes

Specifies where along the axis the CefBoxLayout child views should be laid out. Should be kept in sync with Chromium's views::LayoutAlignment type.

- + TCefBaseRefCounted uCEFTypes

All ref-counted framework structures must include this structure first.

- + TCefBaseRefCountedOwn uCEFBaseRefCounted

 

- + TCefBaseRefCountedRef uCEFBaseRefCounted

 

- + TCefBaseScoped uCEFTypes

All scoped framework structures must include this structure first.

- + TCEFBaseScopedWrapperRef uCEFBaseScopedWrapper

The complete list of compiler versions is here : http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Compiler_Versions Delphi 5 Delphi 6 Delphi 7 Delphi 8 Delphi 2005 Delphi 2009 Delphi 2010 Delphi XE Delphi XE2 (First FireMonkey and 64bit compiler) Delphi XE3 Delphi XE4 Delphi XE5 Delphi XE6 Delphi XE7 Delphi XE8 Rad Studio 10 - Delphi Seattle Rad Studio 10.1 - Delphi Berlin Rad Studio 10.2 - Delphi Tokyo Rad Studio 10.3 - Delphi Rio Rad Studio 10.4 - Delphi Sydney Rad Studio 11.0 - Delphi Alexandria Rad Studio 12.0 - Delphi Yukon Delphi uses MACOS for the new MacOSX and DARWIN is not defined FPC uses DARWIN for the new MacOSX and MACOS is defined for the classic Macintosh OS (System 7) We define MACOSX to avoid conflicts in both situations OS_POSIX is defined for AIX, ANDROID, ASMJS, CHROMEOS, FREEBSD, IOS, LINUX, MAC, NACL, NETBSD, OPENBSD, QNX and SOLARIS in /include/base/cef_build.h

- + TCefBaseTime uCEFTypes

Represents a wall clock time in UTC. Values are not guaranteed to be monotonically non-decreasing and are subject to large amounts of skew. Time is stored internally as microseconds since the Windows epoch (1601).

This is equivalent of Chromium `base::Time` (see base/time/time.h).

- + TCefBatterySaverModeState uCEFTypes

Values used by the battery saver mode state preference.

- + TCefBeforeDownloadCallback uCEFTypes

Callback structure used to asynchronously continue a download.

- + TCefBeforeDownloadCallbackRef uCEFBeforeDownloadCallback

 

- + TCefBinaryValue uCEFTypes

Structure representing a binary value. Can be used on any process and thread.

- + TCefBinaryValueArray uCEFInterfaces

 

- + TCefBinaryValueOwn uCEFBinaryValue

 

- + TCefBinaryValueRef uCEFBinaryValue

 

- + TCEFBitmapBitBuffer uCEFBitmapBitBuffer

Class that stores a copy of the raw bitmap buffer sent by CEF in the TChromiumCore.OnPaint event.

- + TCefBoxLayout uCEFTypes

A Layout manager that arranges child views vertically or horizontally in a side-by-side fashion with spacing around and between the child views. The child views are always sized according to their preferred size. If the host's bounds provide insufficient space, child views will be clamped. Excess space will not be distributed. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefBoxLayoutRef uCEFBoxLayout

A Layout manager that arranges child views vertically or horizontally in a side-by-side fashion with spacing around and between the child views. The child views are always sized according to their preferred size. If the host's bounds provide insufficient space, child views will be clamped. Excess space will not be distributed. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefBoxLayoutSettings uCEFTypes

Initialization settings. Specify NULL or 0 to get the recommended default values. Many of these and other settings can also configured using command- line switches.

- + TCefBrowser uCEFTypes

Structure used to represent a browser. When used in the browser process the functions of this structure may be called on any thread unless otherwise indicated in the comments. When used in the render process the functions of this structure may only be called on the main thread.

- + TCEFBrowserBitmap uCEFBrowserBitmap

 

- + TCefBrowserHost uCEFTypes

Structure used to represent the browser process aspects of a browser. The functions of this structure can only be called in the browser process. They may be called on any thread in that process unless otherwise indicated in the comments.

- + TCefBrowserHostRef uCEFBrowser

 

- + TCefBrowserNavigation uCEFTypes

Used by TCefBrowserNavigationTask to navigate in the right CEF thread.

- + TCefBrowserNavigationTask uCEFTask

 

- + TCefBrowserProcessHandler uCEFTypes

Structure used to implement browser process callbacks. The functions of this structure will be called on the browser process main thread unless otherwise indicated.

- + TCefBrowserProcessHandlerOwn uCEFBrowserProcessHandler

 

- + TCefBrowserRef uCEFBrowser

 

- + TCefBrowserSettings uCEFTypes

Browser initialization settings. Specify NULL or 0 to get the recommended default values. The consequences of using custom values may not be well tested. Many of these and other settings can also configured using command- line switches.

- + TCefBrowserView uCEFTypes

A View hosting a ICefBrowser instance. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCEFBrowserViewComponent uCEFBrowserViewComponent -

Component hosting a ICefBrowserView instance. Used in Chrome runtime mode only.

+

Component hosting a ICefBrowserView instance.

- + TCefBrowserViewDelegate uCEFTypes

Implement this structure to handle BrowserView events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.

- + TCefBrowserViewDelegateOwn uCEFBrowserViewDelegate

Implement this interface to handle BrowserView events. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + TCefBrowserViewDelegateRef uCEFBrowserViewDelegate

 

- + TCefBrowserViewRef uCEFBrowserView

A View hosting a ICefBrowser instance. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefButton uCEFTypes

A View representing a button. Depending on the specific type, the button could be implemented by a native control or custom rendered. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCEFButtonComponent uCEFButtonComponent

 

- + TCefButtonDelegate uCEFTypes

Implement this structure to handle Button events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.

- + TCefButtonDelegateOwn uCEFButtonDelegate

Implement this interface to handle Button events. The functions of this interface will be called on the browser process UI thread unless otherwise indicated.

- + TCefButtonDelegateRef uCEFButtonDelegate

 

- + TCefButtonRef uCEFButton

A View representing a button. Depending on the specific type, the button could be implemented by a native control or custom rendered. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefButtonState uCEFTypes

Specifies the button display state.

- + TCefBytesWriteHandler uCEFWriteHandler

 

- + TCefCallback uCEFTypes

Generic callback structure used for asynchronous continuation.

- + TCefCallbackRef uCEFCallback

 

- + TCefCertStatus uCEFTypes

Supported certificate status code values. See net\cert\cert_status_flags.h for more information. CERT_STATUS_NONE is new in CEF because we use an enum while cert_status_flags.h uses a typedef and static const variables.

- + TCefChannelLayout uCEFTypes

Enumerates the various representations of the ordering of audio channels. Must be kept synchronized with media::ChannelLayout from Chromium. See media\base\channel_layout.h

- + TCefChar uCEFTypes

 

- + TCefChromePageActionIconType uCEFTypes

Chrome page action icon types. Should be kept in sync with Chromium's PageActionIconType type.

- + TCefChromeToolbarButtonType uCEFTypes

Chrome toolbar button types. Should be kept in sync with CEF's internal ToolbarButtonType type.

- + TCefChromeToolbarType uCEFTypes

Chrome toolbar types.

- + TCefChromiumTask uCEFTask

Custom class used to execute CEF tasks with a TChromiumCore component.

- + TCefClearCertificateExceptionsCompletionCallback uCEFRequestContext

 

- + TCefClearDataStorageTypes uCEFTypes

Storage types used by the Storage.clearDataForOrigin DevTools method in TChromiumCore.ClearDataForOrigin.

- + TCefClearHttpAuthCredentialsCompletionCallback uCEFRequestContext

 

- + TCefClient uCEFTypes

Implement this structure to provide handler implementations.

- + TCefClientOwn uCEFClient

 

- + TCefClientRef uCEFClient

 

- + TCefCloseAllConnectionsCompletionCallback uCEFRequestContext

 

- + TCefCloseBrowserAction uCEFTypes

@@ -9643,246 +9658,251 @@

- + TCefColor uCEFTypes

32-bit ARGB color value, not premultiplied. The color components are always in a known order. Equivalent to the SkColor type.

- + TCefColorModel uCEFTypes

Print job color mode values.

- + TCefColorType uCEFTypes

Describes how to interpret the components of a pixel.

- + TCefColorVariant uCEFTypes

Specifies the color variants supported by ICefRequestContext.SetChromeThemeColor.

- + TCefCOMInitMode uCEFTypes

Flags used to customize the behavior of CefURLRequest.

- + TCefCommandHandler uCEFTypes

Implement this structure to handle events related to commands. The functions of this structure will be called on the UI thread.

- + TCefCommandHandlerOwn uCEFCommandHandler

 

- + TCefCommandLine uCEFTypes

Structure used to create and/or parse command line arguments. Arguments with "–", "-" and, on Windows, "/" prefixes are considered switches. Switches will always precede any arguments without switch prefixes. Switches can optionally have a value specified using the "=" delimiter (e.g. "-switch=value"). An argument of "–" will terminate switch parsing with all subsequent tokens, regardless of prefix, being interpreted as non-switch arguments. Switch names should be lowercase ASCII and will be converted to such if necessary. Switch values will retain the original case and UTF8 encoding. This structure can be used before cef_initialize() is called.

- + TCefCommandLineRef uCEFCommandLine

 

- + TCefCompletionCallback uCEFTypes

Generic callback structure used for asynchronous completion.

- + TCefCompletionCallbackOwn uCEFCompletionCallback

 

- + TCefCompletionCallbackProc uCEFInterfaces

 

- + TCEFComponentIdList uCEFComponentIdList

Class used to keep a list of valid custom component IDs for any component that handles a CEF Task event.

- + TCefCompositionUnderline uCEFTypes

Structure representing IME composition underline information. This is a thin wrapper around Blink's WebCompositionUnderline class and should be kept in sync with that.

- + TCefCompositionUnderlineDynArray uCEFTypes

 

- + TCefCompositionUnderlineStyle uCEFTypes

Composition underline style.

- + TCefContentSettingTypes uCEFTypes -

Supported content setting types. Some types are platform-specific or only supported with the Chrome runtime. Should be kept in sync with Chromium's ContentSettingsType type.

+

Supported content setting types. Some types are platform-specific or only supported with Chrome style. Should be kept in sync with Chromium's ContentSettingsType type.

- + TCefContentSettingValues uCEFTypes

Supported content setting values. Should be kept in sync with Chromium's ContentSetting type.

- + TCefContextMenuEditStateFlags uCEFTypes

Supported context menu edit state bit flags. These constants match their equivalents in Chromium's ContextMenuDataEditFlags and should not be renumbered.

- + TCefContextMenuHandler uCEFTypes

Implement this structure to handle context menu events. The functions of this structure will be called on the UI thread.

- + TCefContextMenuHandlerOwn uCEFContextMenuHandler

 

- + TCefContextMenuMediaStateFlags uCEFTypes

Supported context menu media state bit flags. These constants match their equivalents in Chromium's ContextMenuData::MediaFlags and should not be renumbered.

- + TCefContextMenuMediaType uCEFTypes

Supported context menu media types. These constants match their equivalents in Chromium's ContextMenuDataMediaType and should not be renumbered.

- + TCefContextMenuParams uCEFTypes

Provides information about the context menu state. The functions of this structure can only be accessed on browser process the UI thread.

- + TCefContextMenuParamsRef uCEFContextMenuParams

 

- + TCefContextMenuTypeFlags uCEFTypes

Supported context menu type flags.

- + TCefCookie uCEFTypes

Cookie information.

- + TCefCookieAccessFilter uCEFTypes

Implement this structure to filter cookies that may be sent or received from resource requests. The functions of this structure will be called on the IO thread unless otherwise indicated.

- + TCefCookieAccessFilterOwn uCEFCookieAccessFilter

 

- + TCefCookieAccessFilterRef uCEFCookieAccessFilter

 

- + TCefCookieManager uCEFTypes

Structure used for managing cookies. The functions of this structure may be called on any thread unless otherwise indicated.

- + TCefCookieManagerRef uCEFCookieManager

 

- + TCefCookiePref uCEFTypes

Used in TChromium preferences to allow or block cookies.

- + TCefCookiePriority uCEFTypes

Cookie priority values.

- + TCefCookieSameSite uCEFTypes

Cookie same site values.

- + TCefCookieVisitor uCEFTypes

Structure to implement for visiting cookie values. The functions of this structure will always be called on the UI thread.

- + TCefCookieVisitorOwn uCEFCookieVisitor

 

- + TCefCookieVisitorProc uCEFInterfaces

 

- + TCefCreateCustomViewTask uCEFTask

 

- + TCefCursorHandle uCEFTypes

Native Cursor handle.

- + TCefCursorInfo uCEFTypes

Structure representing cursor information. |buffer| will be |size.width|*|size.height|*4 bytes in size and represents a BGRA image with an upper-left origin.

- + TCefCursorType uCEFTypes

Cursor type values.

- + TCefCustomBrowserProcessHandler uCEFBrowserProcessHandler

 

- + TCefCustomByteArray uCEFTypes

Array of byte. Needed only for backwards compatibility with old Delphi versions.

- + TCefCustomCompletionCallback uCEFCompletionCallback

 

- + TCefCustomCookieVisitor uCEFCookieVisitor

 

- + TCefCustomDeleteCookiesCallback uCEFDeleteCookiesCallback

 

- + TCefCustomDownloadImageCallback uCEFDownloadImageCallBack

 

+ +TCefCustomInt64Array +uCEFTypes +

Custom array of int64.

+ TCefCustomMediaRouteCreateCallback uCEFMediaRouteCreateCallback @@ -10253,196 +10273,171 @@ Ranges:

Native event handle.

-TCefExtension -uCEFTypes -

Object representing an extension. Methods may be called on any thread unless otherwise indicated.

- - -TCefExtensionHandler -uCEFTypes -

Implement this structure to handle events related to browser extensions. The functions of this structure will be called on the UI thread. See ICefRequestContext.LoadExtension for information about extension loading.

- - -TCefExtensionHandlerOwn -uCEFExtensionHandler -

 

- - -TCefExtensionHandlerRef -uCEFExtensionHandler -

 

- - -TCefExtensionRef -uCEFExtension -

 

- - TCefFastCompletionCallback uCEFCompletionCallback

 

- + TCefFastCookieVisitor uCEFCookieVisitor

 

- + TCefFastDeleteCookiesCallback uCEFDeleteCookiesCallback

 

- + TCefFastDomVisitor uCEFDomVisitor

 

- + TCefFastDomVisitor2 uCEFDomVisitor

 

- + TCefFastDomVisitor3 uCEFDomVisitor

 

- + TCefFastDownloadImageCallback uCEFDownloadImageCallBack

 

- + TCefFastEndTracingCallback uCEFEndTracingCallback

 

- + TCefFastMediaRouteCreateCallback uCEFMediaRouteCreateCallback

 

- + TCefFastMediaSinkDeviceInfoCallback uCEFMediaSinkDeviceInfoCallback

 

- + TCefFastNavigationEntryVisitor uCEFNavigationEntryVisitor

 

- + TCefFastPdfPrintCallback uCEFPDFPrintCallback

 

- + TCefFastRunFileDialogCallback uCEFRunFileDialogCallback

 

- + TCefFastSetCookieCallback uCEFSetCookieCallback

 

- + TCefFastStringVisitor uCEFStringVisitor

 

- + TCefFastTask uCEFTask

 

- + TCefFastTaskProc uCEFInterfaces

 

- + TCefFastV8Accessor uCEFv8Accessor

 

- + TCefFastv8ArrayBufferReleaseCallback uCEFv8ArrayBufferReleaseCallback

 

- + TCefFastV8Interceptor uCEFv8Interceptor

 

- + TCefFileDialogCallback uCEFTypes

Callback structure for asynchronous continuation of file dialog requests.

- + TCefFileDialogCallbackRef uCEFFileDialogCallback

 

- + TCEFFileDialogInfo uCEFFileDialogInfo

 

- + TCefFileDialogMode uCEFTypes

Supported file dialog modes.

- + TCefFillLayout uCEFTypes

A simple Layout that causes the associated Panel's one child to be sized to match the bounds of its parent. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefFillLayoutRef uCEFFillLayout

A simple Layout that causes the associated Panel's one child to be sized to match the bounds of its parent. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefFindHandler uCEFTypes

Implement this structure to handle events related to find results. The functions of this structure will be called on the UI thread.

- + TCefFindHandlerOwn uCEFFindHandler

 

- + TCefFlushStoreCompletionCallback uCEFCookieManager

 

- + TCefFocusHandler uCEFTypes

Implement this structure to handle events related to focus. The functions of this structure will be called on the UI thread.

- + TCefFocusHandlerOwn uCEFFocusHandler

 

- + TCefFocusSource uCEFTypes

Focus sources.

- + TCefFrame uCEFTypes

Structure used to represent a frame in the browser window. When used in the browser process the functions of this structure may be called on any thread unless otherwise indicated in the comments. When used in the render process the functions of this structure may only be called on the main thread.

- + TCefFrameHandler uCEFTypes

Implement this STRUCTURE to handle events related to ICefFrame life span. The order of callbacks is: @@ -10465,171 +10460,166 @@ Ranges:

The functions of this interface will be called on the UI thread unless otherwise indicated.

- + TCefFrameHandlerOwn uCEFFrameHandler

 

- + TCefFrameRef uCEFFrame

 

- + TCefGenericTask uCEFTask

 

- + TCefGestureCommand uCEFTypes

Specifies the gesture commands.

- -TCefGetExtensionResourceCallback -uCEFTypes -

Callback structure used for asynchronous continuation of ICefExtensionHandler.GetExtensionResource.

- -TCefGetExtensionResourceCallbackRef -uCEFGetExtensionResourceCallback -

 

- - TCefHighEfficiencyModeState uCEFTypes

Values used by the high efficiency mode state preference.

- + TCefHorizontalAlignment uCEFTypes

Specifies the horizontal text alignment mode.

- + TCefImage uCEFTypes

Container for a single image represented at different scale factors. All image representations should be the same size in density independent pixel (DIP) units. For example, if the image at scale factor 1.0 is 100x100 pixels then the image at scale factor 2.0 should be 200x200 pixels – both images will display with a DIP size of 100x100 units. The functions of this structure can be called on any browser process thread.

- + TCefImageRef uCEFImage

 

- + TCefInsets uCEFTypes

Structure representing insets.

- + TCefJsDialogCallback uCEFTypes

Callback structure used for asynchronous continuation of JavaScript dialog requests.

- + TCefJsDialogCallbackRef uCEFJsDialogCallback

 

- + TCefJsDialogHandler uCEFTypes

Implement this structure to handle events related to JavaScript dialogs. The functions of this structure will be called on the UI thread.

- + TCefJsDialogHandlerOwn uCEFJsDialogHandler

 

- + TCefJsDialogType uCEFTypes

Supported JavaScript dialog types.

- + TCEFJson uCEFJson

 

- + TCefJsonParserOptions uCEFTypes

Options that can be passed to CefParseJSON.

- + TCefJsonWriterOptions uCEFTypes

Options that can be passed to CefWriteJSON.

- + TCefKeyboardHandler uCEFTypes

Implement this structure to handle events related to keyboard input. The functions of this structure will be called on the UI thread.

- + TCefKeyboardHandlerOwn uCEFKeyboardHandler

 

- + TCefKeyEvent uCEFTypes

Structure representing keyboard event information.

- + TCefKeyEventType uCEFTypes

Notification that a character was typed. Use this for text input. Key down events may generate 0, 1, or more than one character event depending on the key, locale, and operating system.

- + TCefKeyLocation uCEFTypes

Key location value used in the TChromiumCore.dispatchKeyEvent DevTools method.

- + TCefLabelButton uCEFTypes

LabelButton is a button with optional text and/or icon. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCEFLabelButtonComponent uCEFLabelButtonComponent

 

- + TCefLabelButtonRef uCEFLabelButton

LabelButton is a button with optional text and/or icon. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefLayout uCEFTypes

A Layout handles the sizing of the children of a Panel according to implementation-specific heuristics. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefLayoutRef uCEFLayout

A Layout handles the sizing of the children of a Panel according to implementation-specific heuristics. Methods must be called on the browser process UI thread unless otherwise indicated.

- + TCefLifeSpanHandler uCEFTypes

Implement this structure to handle events related to browser life span. The functions of this structure will be called on the UI thread unless otherwise indicated.

- + TCefLifeSpanHandlerOwn uCEFLifeSpanHandler

 

- + TCEFLinkedWinControlBase uCEFLinkedWinControlBase

TCEFLinkedWinControlBase is a custom TWinControl to host the child controls created by the web browser to show the web contents and it's linked to the TChromium instance that handles that web browser. TCEFLinkedWinControlBase is the parent class of TChromiumWindow, TBrowserWindow and TCEFLinkedWindowParent.

- + TCEFLinkedWindowParent uCEFLinkedWindowParent

This component can be used by VCL and LCL applications. It has the same purpose as TCEFWindowParent but it has a Chromium property to link it directly to a TChromium component. TCEFLinkedWindowParent resizes the child controls created by CEF for browsers in normal mode and sets the browser focus using the linked TChromium component. TCEFWindowParent and TCEFLinkedWindowParent work fine in Windows and you can used any of them but you can't use TCEFWindowParent in Linux or MacOS.

+ +TCefLinuxWindowProperties +uCEFTypes +

Linux window properties, such as X11's WM_CLASS or Wayland's app_id. Those are passed to CefWindowDelegate, so the client can set them for the CefWindow's top-level. Thus, allowing window managers to correctly display the application's information (e.g., icons).

+ TCefListValue uCEFTypes @@ -11078,7 +11068,7 @@ Ranges: TCefPermissionRequestTypes uCEFTypes -

Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with the Chrome runtime. Should be kept in sync with Chromium's permissions::RequestType type.

+

Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with Chrome style. Should be kept in sync with Chromium's permissions::RequestType type.

TCefPlatformThreadHandle @@ -11525,11 +11515,9 @@ Ranges: uCEFTypes

-

CEF supports both a Chrome runtime (based on the Chrome UI layer) and an Alloy runtime (based on the Chromium content layer). The Chrome runtime provides the full Chrome UI and browser functionality whereas the Alloy runtime provides less default browser functionality but adds additional client callbacks and support for windowless (off-screen) rendering. For additional comparative details on runtime types see https://bitbucket.org/chromiumembedded/cef/wiki/Architecture.md#markdown-header-cef3 +

CEF supports both a Chrome runtime style (based on the Chrome UI layer) and an Alloy runtime style (based on the Chromium content layer). Chrome style provides the full Chrome UI and browser functionality whereas Alloy style provides less default browser functionality but adds additional client callbacks and support for windowless (off-screen) rendering. The style type is individually configured for each window/browser at creation time and different styles can be mixed during runtime. For additional comparative details on runtime styles see https://bitbucket.org/chromiumembedded/cef/wiki/Architecture.md#markdown-header-cef3 -

Each runtime is composed of a bootstrap component and a style component. The bootstrap component is configured via CefSettings.chrome_runtime and cannot be changed after CefInitialize. The style component is individually configured for each window/browser at creation time and, in combination with the Chrome bootstrap, different styles can be mixed during runtime. - -

Windowless rendering will always use Alloy style. Windowed rendering with a default window or client-provided parent window can configure the style via CefWindowInfo.runtime_style. Windowed rendering with the Views framework can configure the style via CefWindowDelegate::GetWindowRuntimeStyle and CefBrowserViewDelegate::GetBrowserRuntimeStyle. Alloy style Windows with the Views framework can host only Alloy style BrowserViews but Chrome style Windows can host both style BrowserViews. Additionally, a Chrome style Window can host at most one Chrome style BrowserView but potentially multiple Alloy style BrowserViews. See CefWindowInfo.runtime_style documentation for any additional platform-specific limitations. +

Windowless rendering will always use Alloy style. Windowed rendering with a default window or client-provided parent window can configure the style via TCefWindowInfo.runtime_style. Windowed rendering with the Views framework can configure the style via ICefWindowDelegate.GetWindowRuntimeStyle and ICefBrowserViewDelegate.GetBrowserRuntimeStyle. Alloy style Windows with the Views framework can host only Alloy style BrowserViews but Chrome style Windows can host both style BrowserViews. Additionally, a Chrome style Window can host at most one Chrome style BrowserView but potentially multiple Alloy style BrowserViews. See TCefWindowInfo.runtime_style documentation for any additional platform-specific limitations.

@@ -11899,27 +11887,47 @@ Ranges:

Implement this structure for asynchronous task execution. If the task is posted successfully and if the associated message loop is still running then the execute() function will be called on the target thread. If the task fails to post then the task object may be destroyed on the source thread instead of the target thread. For this reason be cautious when performing work in the task object destructor.

+TCefTaskInfo +uCEFTypes +

Structure representing task information provided by ICefTaskManager.

+ + +TCefTaskManager +uCEFTypes +

Structure that facilitates managing the browser-related tasks. The functions of this structure may only be called on the UI thread.

+ + +TCefTaskManagerRef +uCEFTaskManager +

Class that facilitates managing the browser-related tasks.

+ + TCefTaskOwn uCEFTask

 

- + TCefTaskRef uCEFTask

 

- + TCefTaskRunner uCEFTypes

Structure that asynchronously executes tasks on the associated thread. It is safe to call the functions of this structure on any thread.

CEF maintains multiple internal threads that are used for handling different types of tasks in different processes. The TCefThreadId definitions in cef_types.h list the common CEF threads. Task runners are also available for other CEF threads as appropriate (for example, V8 WebWorker threads).

- + TCefTaskRunnerRef uCEFTaskRunner

 

+ +TCefTaskType +uCEFTypes +

Specifies the task type variants supported by CefTaskManager. Should be kept in sync with Chromium's task_manager::Task::Type type.

+ TCefTerminationStatus uCEFTypes @@ -12484,7 +12492,7 @@ Ranges: TCefZipReaderRef uCEFZipReader -

 

+

Class that supports the reading of zip archives via the zlib unzip API. The functions of this interface should only be called on the thread that creates the object.

TCefZoomCommand @@ -12618,105 +12626,105 @@ Ranges:

 

-TCustomExtensionHandler -uCEFExtensionHandler -

 

- - TCustomFindHandler uCEFFindHandler

 

- + TCustomFocusHandler uCEFFocusHandler

 

- + TCustomFrameHandler uCEFFrameHandler

 

- + TCustomJsDialogHandler uCEFJsDialogHandler

 

- + TCustomKeyboardHandler uCEFKeyboardHandler

 

- + TCustomLifeSpanHandler uCEFLifeSpanHandler

 

- + TCustomLoadHandler uCEFLoadHandler

 

- + TCustomMediaObserver uCEFMediaObserver

 

- + TCustomMenuButtonDelegate uCEFMenuButtonDelegate

This class handles all the ICefMenuButtonDelegate methods which call the ICefMenuButtonDelegateEvents methods. ICefMenuButtonDelegateEvents will be implemented by the control receiving the ICefMenuButtonDelegate events.

- + TCustomPanelDelegate uCEFPanelDelegate

This class handles all the ICefPanelDelegate methods which call the ICefPanelDelegateEvents methods. ICefPanelDelegateEvents will be implemented by the control receiving the ICefPanelDelegate events.

- + TCustomPermissionHandler uCEFPermissionHandler

 

- + TCustomPrintHandler uCEFPrintHandler

 

- + TCustomRenderHandler uCEFRenderHandler

 

- + TCustomRenderLoadHandler uCEFLoadHandler

 

- + TCustomRequestContextHandler uCEFRequestContextHandler

 

- + TCustomRequestHandler uCEFRequestHandler

 

- + TCustomResourceRequestHandler uCEFResourceRequestHandler

 

- + TCustomResponseFilter uCEFResponseFilter

Custom class implementing a resource filter with events.

- + TCustomServerHandler uCEFServerHandler

 

+ +TCustomTaskInfo +uCEFTypes +

Pascal version of TCefTaskInfo.

+ TCustomTextfieldDelegate uCEFTextfieldDelegate @@ -12800,127 +12808,127 @@ Ranges:

+TLinuxWindowProperties +uCEFTypes +

String version of TCefLinuxWindowProperties

+ + TLoggingInterfacedObject uCEFBaseRefCounted

 

- + TMyMemoryStatusEx uCEFTypes

Record used with GetGlobalMemoryStatusEx to get the memory status.

- + TOAuthChallengeMethod uCEFOAuth2Helper

 

- + TOLEDataObject uCEFOLEDragAndDrop

 

- + TOLEDragAndDropMgr uCEFOLEDragAndDrop

 

- + TOLEDropSource uCEFOLEDragAndDrop

 

- + TOLEDropTarget uCEFOLEDragAndDrop

 

- + TOLEEnumFormatEtc uCEFOLEDragAndDrop

 

- + TOLEFormatArray uCEFOLEDragAndDrop

 

- + TOLEMediumArray uCEFOLEDragAndDrop

 

- + TOnAcceleratedPaint uCEFChromiumEvents

 

- + TOnAcceleratorEvent uCEFViewsFrameworkEvents

 

- + TOnAcceptsFirstMouseEvent uCEFViewsFrameworkEvents

 

- + TOnAccessibilityEvent uCEFAccessibilityHandler

 

- + TOnAddressChange uCEFChromiumEvents

ICefDisplayHandler

- + TOnAfterCreated uCEFChromiumEvents

 

- + TOnAfterUserActionEvent uCEFViewsFrameworkEvents

 

- + TOnAllowEvent uCEFTimerWorkScheduler

 

- + TOnAlreadyRunningAppRelaunchEvent uCEFApplicationEvents

 

- + TOnAudioStreamErrorEvent uCEFChromiumEvents

 

- + TOnAudioStreamPacketEvent uCEFChromiumEvents

 

- + TOnAudioStreamStartedEvent uCEFChromiumEvents

 

- + TOnAudioStreamStoppedEvent uCEFChromiumEvents

 

- -TOnAutoResize -uCEFChromiumEvents -

 

- -TOnBeforeBackgroundBrowserEvent +TOnAutoResize uCEFChromiumEvents

 

@@ -12930,90 +12938,80 @@ Ranges:

ICefRequestHandler

-TOnBeforeBrowserEvent -uCEFChromiumEvents -

 

- - TOnBeforeChildProcessLaunchEvent uCEFApplicationEvents

 

- + TOnBeforeClose uCEFChromiumEvents

 

- + TOnBeforeContextMenu uCEFChromiumEvents

ICefContextMenuHandler

- + TOnBeforeDevToolsPopup uCEFChromiumEvents

 

- + TOnBeforeDownload uCEFChromiumEvents

 

- + TOnBeforePopup uCEFChromiumEvents

ICefLifeSpanHandler

- + TOnBeforeResourceLoad uCEFChromiumEvents

ICefResourceRequestHandler

- + TOnBeforeUnloadDialog uCEFChromiumEvents

 

- + TOnBlurEvent uCEFViewsFrameworkEvents

 

- + TOnBrowserCreatedEvent uCEFApplicationEvents

 

- + TOnBrowserCreatedEvent uCEFViewsFrameworkEvents

ICefPanelDelegate ICefBrowserViewDelegate

- + TOnBrowserDestroyedEvent uCEFApplicationEvents

 

- + TOnBrowserDestroyedEvent uCEFViewsFrameworkEvents

 

- + TOnButtonPressedEvent uCEFViewsFrameworkEvents

ICefButtonDelegate

- + TOnButtonStateChangedEvent uCEFViewsFrameworkEvents

 

- -TOnCanAccessBrowserEvent -uCEFChromiumEvents -

 

- TOnCanCloseEvent uCEFViewsFrameworkEvents @@ -13235,85 +13233,65 @@ Ranges:

 

-TOnExtensionLoadedEvent -uCEFChromiumEvents -

 

- - -TOnExtensionLoadFailedEvent -uCEFChromiumEvents -

ICefExtensionHandler

- - -TOnExtensionUnloadedEvent -uCEFChromiumEvents -

 

- - TOnFavIconUrlChange uCEFChromiumEvents

 

- + TOnFileDialog uCEFChromiumEvents

ICefDialogHandler

- + TOnFilterEvent uCEFResponseFilter

 

- + TOnFindResult uCEFChromiumEvents

ICefFindHandler

- + TOnFocusedNodeChangedEvent uCEFApplicationEvents

 

- + TOnFocusEvent uCEFViewsFrameworkEvents

 

- + TOnFrameAttached uCEFChromiumEvents

 

- + TOnFrameCreated uCEFChromiumEvents

ICefFrameHandler

- + TOnFrameDetached uCEFChromiumEvents

 

- + TOnFullScreenModeChange uCEFChromiumEvents

 

- + TOnGestureCommandEvent uCEFViewsFrameworkEvents

 

- + TOnGetAccessibilityHandler uCEFChromiumEvents

ICefRenderHandler

- -TOnGetActiveBrowserEvent -uCEFChromiumEvents -

 

- TOnGetAudioParametersEvent uCEFChromiumEvents @@ -13365,25 +13343,25 @@ Ranges:

 

-TOnGetExtensionResourceEvent -uCEFChromiumEvents -

 

- - TOnGetHeightForWidthEvent uCEFViewsFrameworkEvents

 

- + TOnGetInitialBoundsEvent uCEFViewsFrameworkEvents

 

- + TOnGetInitialShowStateEvent uCEFViewsFrameworkEvents

 

+ +TOnGetLinuxWindowPropertiesEvent +uCEFViewsFrameworkEvents +

 

+ TOnGetLocalizedStringEvent uCEFApplicationEvents @@ -14043,7 +14021,7 @@ Ranges: TT_AUTO_BOOKMARK uCEFConstants -

User got to this page through a suggestion in the UI (for example, via the destinations page). Chrome runtime only.

+

User got to this page through a suggestion in the UI (for example, via the destinations page). Chrome style only.

TT_AUTO_SUBFRAME @@ -14053,7 +14031,7 @@ Ranges: TT_AUTO_TOPLEVEL uCEFConstants -

This is a toplevel navigation. This is any content that is automatically loaded in a toplevel frame. For example, opening a tab to show the ASH screen saver, opening the devtools window, opening the NTP after the safe browsing warning, opening web-based dialog boxes are examples of AUTO_TOPLEVEL navigations. Chrome runtime only.

+

This is a toplevel navigation. This is any content that is automatically loaded in a toplevel frame. For example, opening a tab to show the ASH screen saver, opening the devtools window, opening the NTP after the safe browsing warning, opening web-based dialog boxes are examples of AUTO_TOPLEVEL navigations. Chrome style only.

TT_BLOCKED_FLAG @@ -14098,17 +14076,17 @@ Ranges: TT_FROM_API_FLAG uCEFConstants -

The transition originated from an external application; the exact definition of this is embedder dependent. Chrome runtime and extension system only.

+

The transition originated from an external application; the exact definition of this is embedder dependent. Chrome style only.

TT_GENERATED uCEFConstants -

User got to this page by typing in the URL bar and selecting an entry that did not look like a URL. For example, a match might have the URL of a Google search result page, but appear like "Search Google for ...". These are not quite the same as EXPLICIT navigations because the user didn't type or see the destination URL. Chrome runtime only. See also TT_KEYWORD.

+

User got to this page by typing in the URL bar and selecting an entry that did not look like a URL. For example, a match might have the URL of a Google search result page, but appear like "Search Google for ...". These are not quite the same as EXPLICIT navigations because the user didn't type or see the destination URL. Chrome style only. See also TT_KEYWORD.

TT_HOME_PAGE_FLAG uCEFConstants -

User is navigating to the home page. Chrome runtime only.

+

User is navigating to the home page. Chrome style only.

TT_IS_REDIRECT_MASK @@ -14118,12 +14096,12 @@ Ranges: TT_KEYWORD uCEFConstants -

The url was generated from a replaceable keyword other than the default search provider. If the user types a keyword (which also applies to tab-to-search) in the omnibox this qualifier is applied to the transition type of the generated url. TemplateURLModel then may generate an additional visit with a transition type of TT_KEYWORD_GENERATED against the url 'http://' + keyword. For example, if you do a tab-to-search against wikipedia the generated url has a transition qualifer of TT_KEYWORD, and TemplateURLModel generates a visit for 'wikipedia.org' with a transition type of TT_KEYWORD_GENERATED. Chrome runtime only.

+

The url was generated from a replaceable keyword other than the default search provider. If the user types a keyword (which also applies to tab-to-search) in the omnibox this qualifier is applied to the transition type of the generated url. TemplateURLModel then may generate an additional visit with a transition type of TT_KEYWORD_GENERATED against the url 'http://' + keyword. For example, if you do a tab-to-search against wikipedia the generated url has a transition qualifer of TT_KEYWORD, and TemplateURLModel generates a visit for 'wikipedia.org' with a transition type of TT_KEYWORD_GENERATED. Chrome style only.

TT_KEYWORD_GENERATED uCEFConstants -

Corresponds to a visit generated for a keyword. See description of TT_KEYWORD for more details. Chrome runtime only.

+

Corresponds to a visit generated for a keyword. See description of TT_KEYWORD for more details. Chrome style only.

TT_LINK diff --git a/docs/html/AllTypes.html b/docs/html/AllTypes.html index c4324105..61fc226f 100644 --- a/docs/html/AllTypes.html +++ b/docs/html/AllTypes.html @@ -306,16 +306,6 @@

 

-PCefExtension -uCEFTypes -

 

- - -PCefExtensionHandler -uCEFTypes -

 

- - PCefFileDialogCallback uCEFTypes

 

@@ -346,55 +336,55 @@

 

-PCefGetExtensionResourceCallback -uCEFTypes -

 

- - PCefImage uCEFTypes

 

- + PCefInsets uCEFTypes

 

- + PCefJsDialogCallback uCEFTypes

 

- + PCefJsDialogHandler uCEFTypes

 

- + PCefKeyboardHandler uCEFTypes

 

- + PCefKeyEvent uCEFTypes

 

- + PCefLabelButton uCEFTypes

 

- + PCefLayout uCEFTypes

 

- + PCefLifeSpanHandler uCEFTypes

 

+ +PCefLinuxWindowProperties +uCEFTypes +

 

+ PCefListValue uCEFTypes @@ -841,6 +831,16 @@

 

+PCefTaskInfo +uCEFTypes +

 

+ + +PCefTaskManager +uCEFTypes +

 

+ + PCefTaskRunner uCEFTypes

 

@@ -1225,7 +1225,7 @@ TCefContentSettingTypes uCEFTypes -

Supported content setting types. Some types are platform-specific or only supported with the Chrome runtime. Should be kept in sync with Chromium's ContentSettingsType type.

+

Supported content setting types. Some types are platform-specific or only supported with Chrome style. Should be kept in sync with Chromium's ContentSettingsType type.

TCefContentSettingValues @@ -1288,106 +1288,111 @@

Array of byte. Needed only for backwards compatibility with old Delphi versions.

+TCefCustomInt64Array +uCEFTypes +

Custom array of int64.

+ + TCefDeleteCookiesCallbackProc uCEFInterfaces

 

- + TCEFDialogType uCEFTypes

Used by TCEFFileDialogInfo.

- + TCEFDirectoryDeleterThread uCEFApplication

 

- + TCefDisplayArray uCEFInterfaces

 

- + TCefDockingMode uCEFTypes

Docking modes supported by ICefWindow.AddOverlay.

- + TCefDomDocumentType uCEFTypes

DOM document types.

- + TCefDomEventCategory uCEFTypes

DOM event category flags.

- + TCefDomEventPhase uCEFTypes

DOM event processing phases.

- + TCefDomFormControlType uCEFTypes

DOM form control types. Should be kept in sync with Chromium's blink::mojom::FormControlType type.

- + TCefDomNodeType uCEFTypes

DOM node types.

- + TCefDomVisitorProc uCEFInterfaces

 

- + TCefDomVisitorProc2 uCEFInterfaces

 

- + TCefDomVisitorProc3 uCEFInterfaces

 

- + TCefDownloadInterruptReason uCEFTypes

Download interrupt reasons. Should be kept in sync with Chromium's download::DownloadInterruptReason type.

- + TCefDraggableRegionArray uCEFTypes

 

- + TCefDragOperation uCEFTypes

 

- + TCefDragOperations uCEFTypes

"Verb" of a drag-and-drop operation as negotiated between the source and destination. These constants match their equivalents in WebCore's DragActions.h and should not be renumbered.

- + TCefDuplexMode uCEFTypes

Print job duplex mode values.

- + TCefEditingCommand uCEFTypes

Blink editing commands used by the "Input.dispatchKeyEvent" DevTools method.

- + TCefEndTracingCallbackProc uCEFInterfaces

* ******************************************* **** Callback procedures and functions **** ******************************************* *

- + TCefErrorCode uCEFTypes

Supported error code values.

@@ -1406,439 +1411,442 @@ Ranges:

- + TCefEventFlags uCEFTypes

Supported event bit flags.

- + TCefEventHandle uCEFTypes

Native event handle.

- + TCefFastTaskProc uCEFInterfaces

 

- + TCefFileDialogMode uCEFTypes

Supported file dialog modes.

- + TCefFocusSource uCEFTypes

Focus sources.

- + TCefGestureCommand uCEFTypes

Specifies the gesture commands.

- + TCefHighEfficiencyModeState uCEFTypes

Values used by the high efficiency mode state preference.

- + TCefHorizontalAlignment uCEFTypes

Specifies the horizontal text alignment mode.

- + TCefJsDialogType uCEFTypes

Supported JavaScript dialog types.

- + TCefJsonParserOptions uCEFTypes

Options that can be passed to CefParseJSON.

- + TCefJsonWriterOptions uCEFTypes

Options that can be passed to CefWriteJSON.

- + TCefKeyEventType uCEFTypes

Notification that a character was typed. Use this for text input. Key down events may generate 0, 1, or more than one character event depending on the key, locale, and operating system.

- + TCefKeyLocation uCEFTypes

Key location value used in the TChromiumCore.dispatchKeyEvent DevTools method.

- + TCefLogItems uCEFTypes

Log items prepended to each log line.

- + TCefLogSeverity uCEFTypes

Log severity levels.

- + TCefMediaAccessPermissionTypes uCEFTypes

Media access permissions used by OnRequestMediaAccessPermission.

- + TCefMediaRouteArray uCEFInterfaces

 

- + TCefMediaRouteConnectionState uCEFTypes

Connection state for a MediaRoute object.

- + TCefMediaRouteCreateCallbackProc uCEFInterfaces

 

- + TCefMediaRouteInfoArray uCEFInterfaces

 

- + TCefMediaRouterCreateResult uCEFTypes

Result codes for ICefMediaRouter.CreateRoute. Should be kept in sync with Chromium's media_router::mojom::RouteRequestResultCode type.

- + TCefMediaSinkArray uCEFInterfaces

 

- + TCefMediaSinkDeviceInfoCallbackProc uCEFInterfaces

 

- + TCefMediaSinkIconType uCEFTypes

Icon types for a MediaSink object. Should be kept in sync with Chromium's media_router::SinkIconType type.

- + TCefMediaSinkInfoArray uCEFInterfaces

 

- + TCefMediaSourceInfoArray uCEFInterfaces

 

- + TCefMediaType uCEFTypes

Used by TCefMediaSinkInfo and TCefMediaSourceInfo.

- + TCefMenuAnchorPosition uCEFTypes

Specifies how a menu will be anchored for non-RTL languages. The opposite position will be used for RTL languages.

- + TCefMenuColorType uCEFTypes

Supported color types for menu items.

- + TCefMenuId uCEFTypes

Supported menu IDs. Non-English translations can be provided for the IDS_MENU_* strings in ICefResourceBundleHandler.GetLocalizedString().

- + TCefMenuItemType uCEFTypes

Supported menu item types.

- + TCefMessageLoopType uCEFTypes

Flags used to customize the behavior of CefURLRequest.

- + TCefMouseButtonType uCEFTypes

Mouse button types.

- + TCefNavigationEntryVisitorProc uCEFInterfaces

 

- + TCefNavigationType uCEFTypes

Navigation types.

- + TCefNetLogCaptureMode uCEFTypes

Values used by the –net-log-capture-mode command line switch. Sets the granularity of events to capture in the network log.

- + TCefPaintElementType uCEFTypes

Paint element types.

- + TCefPathKey uCEFTypes

Process termination status values.

- + TCefPdfPrintMarginType uCEFTypes

Margin type for PDF printing.

- + TCefPermissionRequestResult uCEFTypes

Permission request results.

- + TCefPermissionRequestTypes uCEFTypes -

Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with the Chrome runtime. Should be kept in sync with Chromium's permissions::RequestType type.

+

Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with Chrome style. Should be kept in sync with Chromium's permissions::RequestType type.

- + TCefPlatformThreadHandle uCEFTypes

Platform thread handle.

- + TCefPlatformThreadId uCEFTypes

Platform thread ID.

- + TCefPointerType uCEFTypes

The device type that caused the event.

- + TCefPostDataElementArray uCEFInterfaces

 

- + TCefPostDataElementType uCEFTypes

Post data elements may represent either bytes or files.

- + TCefPreferencesType uCEFTypes

Preferences type passed to ICefBrowserProcessHandler.OnRegisterCustomPreferences.

- + TCefProcessId uCEFTypes

Existing process IDs.

- + TCefProcessType uCEFTypes

Sub-process types of Chromium.

- + TCefProxyScheme uCEFTypes

Supported proxy schemes in Chromium.

- + TCefQuickMenuEditStateFlags uCEFTypes

Supported quick menu state bit flags.

- + TCefRangeArray uCEFTypes

 

- + TCefRectArray uCEFTypes

 

- + TCefRectDynArray uCEFTypes

 

- + TCefReferrerPolicy uCEFTypes

Policy for how the Referrer HTTP header value will be sent during navigation. If the `–no-referrers` command-line flag is specified then the policy value will be ignored and the Referrer value will never be sent. Must be kept synchronized with net::URLRequest::ReferrerPolicy from Chromium.

- + TCefResourceHandlerClass uCEFResourceHandler

 

- + TCefResourceType uCEFTypes

Resource type for a request. These constants match their equivalents in Chromium's ResourceType and should not be renumbered.

- + TCefResponseFilterStatus uCEFTypes

Return values for ICefResponseFilter.Filter().

- + TCefResultCode uCEFTypes

Process result codes. This is not a comprehensive list, as result codes might also include platform-specific crash values (Posix signal or Windows hardware exception), or internal-only implementation values.

- + TCefReturnValue uCEFTypes

Return value types.

- + TCefRunFileDialogCallbackProc uCEFInterfaces

 

- + TCefRuntimeStyle uCEFTypes

-

CEF supports both a Chrome runtime (based on the Chrome UI layer) and an Alloy runtime (based on the Chromium content layer). The Chrome runtime provides the full Chrome UI and browser functionality whereas the Alloy runtime provides less default browser functionality but adds additional client callbacks and support for windowless (off-screen) rendering. For additional comparative details on runtime types see https://bitbucket.org/chromiumembedded/cef/wiki/Architecture.md#markdown-header-cef3 +

CEF supports both a Chrome runtime style (based on the Chrome UI layer) and an Alloy runtime style (based on the Chromium content layer). Chrome style provides the full Chrome UI and browser functionality whereas Alloy style provides less default browser functionality but adds additional client callbacks and support for windowless (off-screen) rendering. The style type is individually configured for each window/browser at creation time and different styles can be mixed during runtime. For additional comparative details on runtime styles see https://bitbucket.org/chromiumembedded/cef/wiki/Architecture.md#markdown-header-cef3 -

Each runtime is composed of a bootstrap component and a style component. The bootstrap component is configured via CefSettings.chrome_runtime and cannot be changed after CefInitialize. The style component is individually configured for each window/browser at creation time and, in combination with the Chrome bootstrap, different styles can be mixed during runtime. - -

Windowless rendering will always use Alloy style. Windowed rendering with a default window or client-provided parent window can configure the style via CefWindowInfo.runtime_style. Windowed rendering with the Views framework can configure the style via CefWindowDelegate::GetWindowRuntimeStyle and CefBrowserViewDelegate::GetBrowserRuntimeStyle. Alloy style Windows with the Views framework can host only Alloy style BrowserViews but Chrome style Windows can host both style BrowserViews. Additionally, a Chrome style Window can host at most one Chrome style BrowserView but potentially multiple Alloy style BrowserViews. See CefWindowInfo.runtime_style documentation for any additional platform-specific limitations. +

Windowless rendering will always use Alloy style. Windowed rendering with a default window or client-provided parent window can configure the style via TCefWindowInfo.runtime_style. Windowed rendering with the Views framework can configure the style via ICefWindowDelegate.GetWindowRuntimeStyle and ICefBrowserViewDelegate.GetBrowserRuntimeStyle. Alloy style Windows with the Views framework can host only Alloy style BrowserViews but Chrome style Windows can host both style BrowserViews. Additionally, a Chrome style Window can host at most one Chrome style BrowserView but potentially multiple Alloy style BrowserViews. See TCefWindowInfo.runtime_style documentation for any additional platform-specific limitations.

- + TCefScaleFactor uCEFTypes

Supported UI scale factors for the platform. SCALE_FACTOR_NONE is used for density independent resources such as string, html/js files or an image that can be used for any scale factors (such as wallpapers).

- + TCefSchemeOptions uCEFTypes

Configuration options for registering a custom scheme. These values are used when calling AddCustomScheme.

- + TCefSetCookieCallbackProc uCEFInterfaces

 

- + TCefSharedTextureHandle uCEFTypes

Native texture handle.

- + TCefShowState uCEFTypes

Show states supported by ICefWindowDelegate.GetInitialShowState.

- + TCefSimulatedMouseButton uCEFTypes

Mouse button in the TChromiumCore.SimulateMouseEvent function.

- + TCefSimulatedMouseEventType uCEFTypes

Type of mouse event in the TChromiumCore.SimulateMouseEvent function.

- + TCefSimulatedPointerType uCEFTypes

Pointer type in the TChromiumCore.SimulateMouseEvent function.

- + TCefSimulatedTouchEventType uCEFTypes

Type of touch event in the TChromiumCore.SimulateTouchEvent function.

- + TCefSimulatedTouchPointArray uCEFTypes

 

- + TCefSSLContentStatus uCEFTypes

Supported SSL content status flags. See content/public/common/ssl_status.h for more information.

- + TCefSSLVersion uCEFTypes

Supported SSL version values.

- + TCefState uCEFTypes

Represents the state of a setting.

- + TCefStorageType uCEFTypes

Storage types.

- + TCefString uCEFTypes

String record used by the CEF C API. The CEF interface is built with the UTF16 string type as the default.

- + TCefStringList uCEFTypes

CEF string maps are a set of key/value string pairs.

- + TCefStringMap uCEFTypes

CEF string maps are a set of key/value string pairs.

- + TCefStringMultimap uCEFTypes

CEF string multimaps are a set of key/value string pairs. More than one value can be assigned to a single key.

- + TCefStringUserFree uCEFTypes

 

- + TCefStringUserFreeUtf16 uCEFTypes

 

- + TCefStringUserFreeUtf8 uCEFTypes

 

- + TCefStringUserFreeWide uCEFTypes

 

- + TCefStringVisitorProc uCEFInterfaces

 

+ +TCefTaskType +uCEFTypes +

Specifies the task type variants supported by CefTaskManager. Should be kept in sync with Chromium's task_manager::Task::Type type.

+ TCefTerminationStatus uCEFTypes @@ -2105,20 +2113,10 @@ Ranges:

 

-TOnBeforeBackgroundBrowserEvent -uCEFChromiumEvents -

 

- - TOnBeforeBrowse uCEFChromiumEvents

ICefRequestHandler

- -TOnBeforeBrowserEvent -uCEFChromiumEvents -

 

- TOnBeforeChildProcessLaunchEvent uCEFApplicationEvents @@ -2195,245 +2193,225 @@ Ranges:

 

-TOnCanAccessBrowserEvent -uCEFChromiumEvents -

 

- - TOnCanCloseEvent uCEFViewsFrameworkEvents

 

- + TOnCanDownloadEvent uCEFChromiumEvents

ICefDownloadHandler

- + TOnCanMaximizeEvent uCEFViewsFrameworkEvents

 

- + TOnCanMinimizeEvent uCEFViewsFrameworkEvents

 

- + TOnCanResizeEvent uCEFViewsFrameworkEvents

 

- + TOnCanSaveCookie uCEFChromiumEvents

 

- + TOnCanSendCookie uCEFChromiumEvents

ICefCookieAccessFilter

- + TOnCertificateError uCEFChromiumEvents

 

- + TOnChildViewChangedEvent uCEFViewsFrameworkEvents

 

- + TOnChromeCommandEvent uCEFChromiumEvents

ICefCommandHandler

- + TOnClientConnected uCEFServerEvents

 

- + TOnClientDisconnected uCEFServerEvents

 

- + TOnClose uCEFChromiumEvents

 

- + TOnCompMsgEvent uCEFChromiumEvents

 

- + TOnConsoleMessage uCEFChromiumEvents

 

- + TOnContextCreatedEvent uCEFApplicationEvents

 

- + TOnContextInitializedEvent uCEFApplicationEvents

 

- + TOnContextMenuCommand uCEFChromiumEvents

 

- + TOnContextMenuDismissed uCEFChromiumEvents

 

- + TOnContextReleasedEvent uCEFApplicationEvents

 

- + TOnCookiesDeletedEvent uCEFChromiumEvents

 

- + TOnCookieSet uCEFChromiumEvents

 

- + TOnCookiesVisited uCEFChromiumEvents

 

- + TOnCookieVisitorDestroyed uCEFChromiumEvents

 

- + TOnCursorChange uCEFChromiumEvents

 

- + TOnDevToolsAgentAttachedEvent uCEFChromiumEvents

 

- + TOnDevToolsAgentDetachedEvent uCEFChromiumEvents

 

- + TOnDevToolsEventEvent uCEFChromiumEvents

 

- + TOnDevToolsEventRawEvent uCEFChromiumEvents

 

- + TOnDevToolsMessageEvent uCEFChromiumEvents

ICefDevToolsMessageObserver

- + TOnDevToolsMethodRawResultEvent uCEFChromiumEvents

 

- + TOnDevToolsMethodResultEvent uCEFChromiumEvents

 

- + TOnDevToolsRawMessageEvent uCEFChromiumEvents

 

- + TOnDialogClosed uCEFChromiumEvents

 

- + TOnDismissPermissionPromptEvent uCEFChromiumEvents

 

- + TOnDocumentAvailableInMainFrame uCEFChromiumEvents

 

- + TOnDownloadData uCEFUrlRequestClientEvents

 

- + TOnDownloadImageFinishedEvent uCEFChromiumEvents

 

- + TOnDownloadImageFinishedProc uCEFInterfaces

 

- + TOnDownloadProgress uCEFUrlRequestClientEvents

 

- + TOnDownloadUpdated uCEFChromiumEvents

 

- + TOnDragEnter uCEFChromiumEvents

ICefDragHandler

- + TOnDraggableRegionsChanged uCEFChromiumEvents

 

- + TOnExecuteTaskOnCefThread uCEFChromiumEvents

 

- -TOnExtensionLoadedEvent -uCEFChromiumEvents -

 

- - -TOnExtensionLoadFailedEvent -uCEFChromiumEvents -

ICefExtensionHandler

- - -TOnExtensionUnloadedEvent -uCEFChromiumEvents -

 

- TOnFavIconUrlChange uCEFChromiumEvents @@ -2495,65 +2473,55 @@ Ranges:

ICefRenderHandler

-TOnGetActiveBrowserEvent -uCEFChromiumEvents -

 

- - TOnGetAudioParametersEvent uCEFChromiumEvents

ICefAudioHandler

- + TOnGetAuthCredentials uCEFChromiumEvents

 

- + TOnGetAuthCredentials uCEFUrlRequestClientEvents

 

- + TOnGetBrowserRuntimeStyleEvent uCEFViewsFrameworkEvents

 

- + TOnGetChromeToolbarTypeEvent uCEFViewsFrameworkEvents

 

- + TOnGetDataResourceEvent uCEFApplicationEvents

 

- + TOnGetDataResourceForScaleEvent uCEFApplicationEvents

 

- + TOnGetDefaultClientEvent uCEFApplicationEvents

 

- + TOnGetDefaultRequestContextHandlerEvent uCEFApplicationEvents

 

- + TOnGetDelegateForPopupBrowserViewEvent uCEFViewsFrameworkEvents

 

- -TOnGetExtensionResourceEvent -uCEFChromiumEvents -

 

- TOnGetHeightForWidthEvent uCEFViewsFrameworkEvents @@ -2570,646 +2538,651 @@ Ranges:

 

+TOnGetLinuxWindowPropertiesEvent +uCEFViewsFrameworkEvents +

 

+ + TOnGetLocalizedStringEvent uCEFApplicationEvents

ICefResourceBundleHandler

- + TOnGetMaximumSizeEvent uCEFViewsFrameworkEvents

 

- + TOnGetMinimumSizeEvent uCEFViewsFrameworkEvents

 

- + TOnGetParentWindowEvent uCEFViewsFrameworkEvents

 

- + TOnGetPDFPaperSizeEvent uCEFChromiumEvents

 

- + TOnGetPreferredSizeEvent uCEFViewsFrameworkEvents

ICefViewDelegate

- + TOnGetResourceHandler uCEFChromiumEvents

 

- + TOnGetResourceRequestHandler uCEFChromiumEvents

 

- + TOnGetResourceResponseFilter uCEFChromiumEvents

 

- + TOnGetRootScreenRect uCEFChromiumEvents

 

- + TOnGetScreenInfo uCEFChromiumEvents

 

- + TOnGetScreenPoint uCEFChromiumEvents

 

- + TOnGetTitlebarHeightEvent uCEFViewsFrameworkEvents

 

- + TOnGetTouchHandleSize uCEFChromiumEvents

 

- + TOnGetViewRect uCEFChromiumEvents

 

- + TOnGetWindowRuntimeStyleEvent uCEFViewsFrameworkEvents

 

- + TOnGotFocus uCEFChromiumEvents

 

- + TOnHandledMessageEvent uCEFBufferPanel

 

- + TOnHttpRequest uCEFServerEvents

 

- + TOnIMECommitTextEvent uCEFBufferPanel

 

- + TOnIMECompositionRangeChanged uCEFChromiumEvents

 

- + TOnIMESetCompositionEvent uCEFBufferPanel

 

- + TOnInitFilterEvent uCEFResponseFilter

 

- + TOnIsChromeAppMenuItemEnabledEvent uCEFChromiumEvents

 

- + TOnIsChromeAppMenuItemVisibleEvent uCEFChromiumEvents

 

- + TOnIsChromePageActionIconVisibleEvent uCEFChromiumEvents

 

- + TOnIsChromeToolbarButtonVisibleEvent uCEFChromiumEvents

 

- + TOnIsFramelessEvent uCEFViewsFrameworkEvents

 

- + TOnIsWindowModalDialogEvent uCEFViewsFrameworkEvents

 

- + TOnJsdialog uCEFChromiumEvents

ICefJsDialogHandler

- + TOnKeyEvent uCEFChromiumEvents

 

- + TOnLayoutChangedEvent uCEFViewsFrameworkEvents

 

- + TOnLoadEnd uCEFChromiumEvents

 

- + TOnLoadError uCEFChromiumEvents

 

- + TOnLoadingProgressChange uCEFChromiumEvents

 

- + TOnLoadingStateChange uCEFChromiumEvents

 

- + TOnLoadStart uCEFChromiumEvents

ICefLoadHandler

- + TOnMainFrameChanged uCEFChromiumEvents

 

- + TOnMediaAccessChange uCEFChromiumEvents

 

- + TOnMediaRouteCreateFinishedEvent uCEFChromiumEvents

 

- + TOnMediaSinkDeviceInfoEvent uCEFChromiumEvents

 

- + TOnMenuButtonPressedEvent uCEFViewsFrameworkEvents

ICefMenuButtonDelegate

- + TOnNavigationVisitorResultAvailableEvent uCEFChromiumEvents

 

- + TOnOpenUrlFromTab uCEFChromiumEvents

 

- + TOnPaint uCEFChromiumEvents

 

- + TOnParentViewChangedEvent uCEFViewsFrameworkEvents

 

- + TOnPdfPrintFinishedEvent uCEFChromiumEvents

 

- + TOnPdfPrintFinishedProc uCEFInterfaces

 

- + TOnPopupBrowserViewCreatedEvent uCEFViewsFrameworkEvents

 

- + TOnPopupShow uCEFChromiumEvents

 

- + TOnPopupSize uCEFChromiumEvents

 

- + TOnPrefsAvailableEvent uCEFChromiumEvents

 

- + TOnPreKeyEvent uCEFChromiumEvents

ICefKeyboardHandler

- + TOnPrintDialogEvent uCEFChromiumEvents

 

- + TOnPrintJobEvent uCEFChromiumEvents

 

- + TOnPrintResetEvent uCEFChromiumEvents

 

- + TOnPrintSettingsEvent uCEFChromiumEvents

 

- + TOnPrintStartEvent uCEFChromiumEvents

ICefPrintHandler

- + TOnProcessMessageReceived uCEFChromiumEvents

ICefClient

- + TOnProcessMessageReceivedEvent uCEFApplicationEvents

 

- + TOnProtocolExecution uCEFChromiumEvents

 

- + TOnPulseEvent uCEFWorkSchedulerQueueThread

 

- + TOnQuickMenuCommandEvent uCEFChromiumEvents

 

- + TOnQuickMenuDismissedEvent uCEFChromiumEvents

 

- + TOnRegisterCustomPreferencesEvent uCEFApplicationEvents

ICefBrowserProcessHandler

- + TOnRegisterCustomSchemesEvent uCEFApplicationEvents

ICefApp

- + TOnRenderLoadEnd uCEFApplicationEvents

 

- + TOnRenderLoadError uCEFApplicationEvents

 

- + TOnRenderLoadingStateChange uCEFApplicationEvents

ICefLoadHandler

- + TOnRenderLoadStart uCEFApplicationEvents

 

- + TOnRenderProcessResponsive uCEFChromiumEvents

 

- + TOnRenderProcessTerminated uCEFChromiumEvents

 

- + TOnRenderProcessUnresponsive uCEFChromiumEvents

 

- + TOnRenderViewReady uCEFChromiumEvents

 

- + TOnRequestComplete uCEFUrlRequestClientEvents

 

- + TOnRequestContextInitialized uCEFChromiumEvents

ICefRequestContextHandler

- + TOnRequestMediaAccessPermissionEvent uCEFChromiumEvents

ICefPermissionHandler

- + TOnResetDialogState uCEFChromiumEvents

 

- + TOnResolvedIPsAvailableEvent uCEFChromiumEvents

 

- + TOnResourceLoadComplete uCEFChromiumEvents

 

- + TOnResourceRedirect uCEFChromiumEvents

 

- + TOnResourceResponse uCEFChromiumEvents

 

- + TOnRouteMessageReceivedEvent uCEFChromiumEvents

 

- + TOnRoutesEvent uCEFChromiumEvents

 

- + TOnRouteStateChangedEvent uCEFChromiumEvents

 

- + TOnRunContextMenu uCEFChromiumEvents

 

- + TOnRunQuickMenuEvent uCEFChromiumEvents

 

- + TOnScheduleMessagePumpWorkEvent uCEFApplicationEvents

 

- + TOnScrollOffsetChanged uCEFChromiumEvents

 

- + TOnSelectClientCertificate uCEFChromiumEvents

 

- + TOnServerCreated uCEFServerEvents

 

- + TOnServerDestroyed uCEFServerEvents

 

- + TOnSetFocus uCEFChromiumEvents

 

- + TOnShowPermissionPromptEvent uCEFChromiumEvents

 

- + TOnSinksEvent uCEFChromiumEvents

ICefRequestContextHandler uses the same TOnGetResourceRequestHandler event type defined for ICefRequestHandler ICefMediaObserver

- + TOnStartDragging uCEFChromiumEvents

 

- + TOnStatusMessage uCEFChromiumEvents

 

- + TOnTakeFocus uCEFChromiumEvents

ICefFocusHandler

- + TOnTextfieldKeyEventEvent uCEFViewsFrameworkEvents

ICefTextfieldDelegate

- + TOnTextResultAvailableEvent uCEFChromiumEvents

Custom

- + TOnTextSelectionChanged uCEFChromiumEvents

 

- + TOnThemeChangedEvent uCEFViewsFrameworkEvents

 

- + TOnThemeColorsChangedEvent uCEFViewsFrameworkEvents

 

- + TOnTitleChange uCEFChromiumEvents

 

- + TOnTooltip uCEFChromiumEvents

 

- + TOnTouchHandleStateChanged uCEFChromiumEvents

 

- + TOnUncaughtExceptionEvent uCEFApplicationEvents

 

- + TOnUpdateDragCursor uCEFChromiumEvents

 

- + TOnUploadProgress uCEFUrlRequestClientEvents

 

- + TOnUseFramelessWindowForPictureInPicture uCEFViewsFrameworkEvents

 

- + TOnVirtualKeyboardRequested uCEFChromiumEvents

 

- + TOnWebKitInitializedEvent uCEFApplicationEvents

ICefRenderProcessHandler

- + TOnWebSocketConnected uCEFServerEvents

 

- + TOnWebSocketMessage uCEFServerEvents

 

- + TOnWebSocketRequest uCEFServerEvents

 

- + TOnWindowActivationChangedEvent uCEFViewsFrameworkEvents

 

- + TOnWindowBoundsChangedEvent uCEFViewsFrameworkEvents

 

- + TOnWindowChangedEvent uCEFViewsFrameworkEvents

 

- + TOnWindowClosingEvent uCEFViewsFrameworkEvents

 

- + TOnWindowCreatedEvent uCEFViewsFrameworkEvents

ICefWindowDelegate

- + TOnWindowDestroyedEvent uCEFViewsFrameworkEvents

 

- + TOnWindowFullscreenTransitionEvent uCEFViewsFrameworkEvents

 

- + TOnWindowKeyEventEvent uCEFViewsFrameworkEvents

 

- + TOnWithStandardWindowButtonsEvent uCEFViewsFrameworkEvents

 

- + TOnZoomPctAvailable uCEFChromiumEvents

 

- + TSentinelStatus uCEFSentinel

 

- + TSimulatedCefKeyEventType uCEFTypes

Event type used by TChromiumCore.SimulateKeyEvent

- + TValuesArray uCEFWorkSchedulerQueueThread

 

- + ustring uCEFTypes

String type used by CEF. ustring was created to use the same type in Delphi and Lazarus.

diff --git a/docs/html/AllUnits.html b/docs/html/AllUnits.html index 459f9944..0adbb335 100644 --- a/docs/html/AllUnits.html +++ b/docs/html/AllUnits.html @@ -259,14 +259,6 @@

 

-uCEFExtension -

 

- - -uCEFExtensionHandler -

 

- - uCEFFileDialogCallback

 

@@ -311,425 +303,425 @@

 

-uCEFGetExtensionResourceCallback -

 

- - uCEFImage

 

- + uCEFInterfaces

 

- + uCEFJsDialogCallback

 

- + uCEFJsDialogHandler

 

- + uCEFJson

 

- + uCEFKeyboardHandler

 

- + uCEFLabelButton

 

- + uCEFLabelButtonComponent

 

- + uCEFLayout

 

- + uCEFLazarusCocoa

 

- + uCEFLibFunctions

 

- + uCEFLifeSpanHandler

 

- + uCEFLinkedWinControlBase

 

- + uCEFLinkedWindowParent

 

- + uCEFLinuxConstants

 

- + uCEFLinuxEventPipe

 

- + uCEFLinuxFunctions

 

- + uCEFLinuxTypes

 

- + uCEFListValue

 

- + uCEFLoadHandler

 

- + uCEFMacOSConstants

 

- + uCEFMacOSCustomCocoaTimer

 

- + uCEFMacOSFunctions

 

- + uCEFMacOSInterfaces

 

- + uCEFMediaAccessCallback

 

- + uCEFMediaAccessHandler

 

- + uCEFMediaObserver

 

- + uCEFMediaRoute

 

- + uCEFMediaRouteCreateCallback

 

- + uCEFMediaRouter

 

- + uCEFMediaSink

 

- + uCEFMediaSinkDeviceInfoCallback

 

- + uCEFMediaSource

 

- + uCEFMenuButton

 

- + uCEFMenuButtonComponent

 

- + uCEFMenuButtonDelegate

 

- + uCEFMenuButtonPressedLock

 

- + uCEFMenuModel

 

- + uCEFMenuModelDelegate

 

- + uCEFMiscFunctions

 

- + uCEFNavigationEntry

 

- + uCEFNavigationEntryVisitor

 

- + uCEFOAuth2Helper

 

- + uCEFOLEDragAndDrop

 

- + uCEFOsrBrowserWindow

 

- + uCEFOSRIMEHandler

 

- + uCEFOverlayController

 

- + uCEFPanel

 

- + uCEFPanelComponent

 

- + uCEFPanelDelegate

 

- + uCEFPDFPrintCallback

 

- + uCEFPDFPrintOptions

 

- + uCEFPermissionHandler

 

- + uCEFPermissionPromptCallback

 

- + uCEFPostData

 

- + uCEFPostDataElement

 

- + uCEFPreferenceManager

 

- + uCEFPreferenceRegistrar

 

- + uCEFPrintDialogCallback

 

- + uCEFPrintHandler

 

- + uCEFPrintJobCallback

 

- + uCEFPrintSettings

 

- + uCEFProcessMessage

 

- + uCEFRegistration

 

- + uCEFRenderHandler

 

- + uCEFRenderProcessHandler

 

- + uCEFRequest

 

- + uCEFRequestContext

 

- + uCEFRequestContextHandler

 

- + uCEFRequestHandler

 

- + uCEFResolveCallback

 

- + uCEFResourceBundle

 

- + uCEFResourceBundleHandler

 

- + uCEFResourceHandler

 

- + uCEFResourceReadCallback

 

- + uCEFResourceRequestHandler

 

- + uCEFResourceSkipCallback

 

- + uCEFResponse

 

- + uCEFResponseFilter

 

- + uCEFRunContextMenuCallback

 

- + uCEFRunFileDialogCallback

 

- + uCEFRunQuickMenuCallback

 

- + uCEFSchemeHandlerFactory

 

- + uCEFSchemeRegistrar

 

- + uCEFScrollView

 

- + uCEFScrollViewComponent

 

- + uCEFSelectClientCertificateCallback

 

- + uCEFSentinel

 

- + uCEFServer

 

- + uCEFServerComponent

 

- + uCEFServerEvents

 

- + uCEFServerHandler

 

- + uCEFSetCookieCallback

 

- + uCEFSharedMemoryRegion

 

- + uCEFSharedProcessMessageBuilder

 

- + uCEFSslInfo

 

- + uCEFSSLStatus

 

- + uCEFStreamReader

 

- + uCEFStreamWriter

 

- + uCEFStringList

 

- + uCEFStringMap

 

- + uCEFStringMultimap

 

- + uCEFStringVisitor

 

- + uCEFTask

 

+ +uCEFTaskManager +

 

+ uCEFTaskRunner

 

diff --git a/docs/html/AllVariables.html b/docs/html/AllVariables.html index c94d911c..8c30011f 100644 --- a/docs/html/AllVariables.html +++ b/docs/html/AllVariables.html @@ -201,6 +201,16 @@

/include/capi/cef_drag_data_capi.h

+cef_dump_without_crashing +uCEFLibFunctions +

/include/internal/cef_dump_without_crashing_internal.h

+ + +cef_dump_without_crashing_unthrottled +uCEFLibFunctions +

 

+ + cef_end_tracing uCEFLibFunctions

 

@@ -741,155 +751,165 @@

 

+cef_task_manager_get +uCEFLibFunctions +

/include/capi/cef_task_manager_capi.h

+ + cef_task_runner_get_for_current_thread uCEFLibFunctions

/include/capi/cef_task_capi.h

- + cef_task_runner_get_for_thread uCEFLibFunctions

 

- + cef_textfield_create uCEFLibFunctions

/include/capi/views/cef_textfield_capi.h

- + cef_thread_create uCEFLibFunctions

/include/capi/cef_thread_capi.h

- + cef_time_delta uCEFLibFunctions

 

- + cef_time_from_basetime uCEFLibFunctions

 

- + cef_time_from_doublet uCEFLibFunctions

 

- + cef_time_from_timet uCEFLibFunctions

 

- + cef_time_now uCEFLibFunctions

 

- + cef_time_to_basetime uCEFLibFunctions

 

- + cef_time_to_doublet uCEFLibFunctions

 

- + cef_time_to_timet uCEFLibFunctions

/include/internal/cef_time.h

- + cef_trace_counter uCEFLibFunctions

 

- + cef_trace_counter_id uCEFLibFunctions

 

- + cef_trace_event_async_begin uCEFLibFunctions

 

- + cef_trace_event_async_end uCEFLibFunctions

 

- + cef_trace_event_async_step_into uCEFLibFunctions

 

- + cef_trace_event_async_step_past uCEFLibFunctions

 

- + cef_trace_event_begin uCEFLibFunctions

 

- + cef_trace_event_end uCEFLibFunctions

 

- + cef_trace_event_instant uCEFLibFunctions

/include/internal/cef_trace_event_internal.h

- + cef_uridecode uCEFLibFunctions

 

- + cef_uriencode uCEFLibFunctions

 

- + cef_urlrequest_create uCEFLibFunctions

/include/capi/cef_urlrequest_capi.h

- + cef_v8context_get_current_context uCEFLibFunctions

/include/capi/cef_v8_capi.h

- + cef_v8context_get_entered_context uCEFLibFunctions

 

- + cef_v8context_in_context uCEFLibFunctions

 

- + cef_v8stack_trace_get_current uCEFLibFunctions

 

- + cef_v8value_create_array uCEFLibFunctions

 

- + cef_v8value_create_array_buffer uCEFLibFunctions

 

+ +cef_v8value_create_array_buffer_with_copy +uCEFLibFunctions +

 

+ cef_v8value_create_bool uCEFLibFunctions diff --git a/docs/html/ClassHierarchy.html b/docs/html/ClassHierarchy.html index 0b94e628..e16e0d0f 100644 --- a/docs/html/ClassHierarchy.html +++ b/docs/html/ClassHierarchy.html @@ -12,13 +12,13 @@
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      -
    -
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • @@ -27260,26 +26572,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -29697,6 +28989,10 @@ +
  • + + + @@ -36290,26 +35586,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -39946,6 +39222,58 @@
  • + + + +
      +
    • + + + +
        +
      • + + + +
          +
        • + + + +
            +
          • + + + +
          • + + + +
          • + + + +
          • + + + +
          • + + + +
          • + + + +
          • + + + +
          +
        +
      +
    +
  • @@ -41164,6 +40492,62 @@
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • @@ -41296,6 +40680,102 @@
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • @@ -41494,10 +40974,6 @@
  • - - - -
  • @@ -41526,10 +41002,6 @@
  • - - - -
  • @@ -41566,10 +41038,6 @@
  • - - - -
  • @@ -41954,10 +41422,6 @@
  • - - - -
  • @@ -43252,78 +42716,6 @@
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • @@ -43360,54 +42752,6 @@
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • @@ -44914,26 +44258,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -46468,6 +45792,42 @@
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • @@ -48154,14 +47514,6 @@
  • - - - -
  • - - - -
  • @@ -49837,6 +49189,10 @@ +
  • + + + @@ -50018,6 +49374,10 @@
  • + + + +
  • @@ -50170,14 +49530,6 @@
  • - - - -
  • - - - -
  • @@ -50186,10 +49538,6 @@
  • - - - -
  • @@ -50630,6 +49978,14 @@
  • + + + +
  • + + + +
  • @@ -50838,6 +50194,10 @@
  • + + + +
  • @@ -51222,6 +50582,10 @@
  • + + + +
  • @@ -52524,6 +51888,10 @@
  • + + + +
  • @@ -53837,6 +53205,10 @@ +
  • + + +
  • @@ -54349,6 +53721,10 @@ +
  • + + +
  • @@ -54495,6 +53871,10 @@ +
  • + + +
  • @@ -54686,6 +54066,10 @@
  • + + + +
  • @@ -54908,6 +54292,10 @@
  • + + + +
  • @@ -55012,6 +54400,10 @@
  • + + + +
  • @@ -55174,6 +54566,10 @@
  • + + + +
  • @@ -56920,10 +56316,6 @@
  • - - - -
  • @@ -56964,10 +56356,6 @@
  • - - - -
  • @@ -59038,188 +58426,6 @@
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • @@ -59476,26 +58682,6 @@
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      -
    -
  • @@ -61672,10 +60858,6 @@
  • - - - -
  • @@ -61704,14 +60886,6 @@
  • - - - -
  • - - - -
  • @@ -61724,10 +60898,6 @@
  • - - - -
  • @@ -61756,10 +60926,6 @@
  • - - - -
  • @@ -62848,6 +62014,38 @@
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • @@ -64678,6 +63876,10 @@
  • + + + +
  • @@ -64778,6 +63980,10 @@
  • + + + +
  • @@ -65240,22 +64446,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -65600,22 +64790,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -67072,10 +66246,6 @@
  • - - - -
  • @@ -67500,16 +66670,12 @@
  • - - - -
  • - - + +
  • @@ -67702,10 +66868,6 @@
  • - - - -
  • @@ -68126,18 +67288,10 @@
  • - - - -
  • - - - -
  • @@ -68190,6 +67344,10 @@
  • + + + +
  • @@ -68256,6 +67414,14 @@
  • + + + +
  • + + + +
  • @@ -68428,6 +67594,10 @@
  • + + + +
  • @@ -68552,6 +67722,10 @@
  • + + + +
  • @@ -69950,10 +69124,6 @@
  • - - - -
  • @@ -70018,10 +69188,6 @@
  • - - - -
  • @@ -70186,10 +69352,6 @@
  • - - - -
  • @@ -70230,10 +69392,6 @@
  • - - - -
  • @@ -70890,6 +70048,10 @@
  • + + + +
  • @@ -70952,6 +70114,10 @@
  • + + + +
  • @@ -75744,294 +74910,6 @@
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • @@ -77408,54 +76286,6 @@
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • @@ -78404,6 +77234,34 @@
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • @@ -83002,10 +81860,6 @@
  • - - - -
  • @@ -83030,14 +81884,6 @@
  • - - - -
  • - - - -
  • @@ -83050,10 +81896,6 @@
  • - - - -
  • @@ -83066,10 +81908,6 @@
  • - - - -
  • @@ -83206,10 +82044,6 @@
  • - - - -
  • @@ -83238,14 +82072,6 @@
  • - - - -
  • - - - -
  • @@ -83258,10 +82084,6 @@
  • - - - -
  • @@ -83290,10 +82112,6 @@
  • - - - -
  • @@ -83342,10 +82160,6 @@
  • - - - -
  • @@ -85566,10 +84380,6 @@
  • - - - -
  • @@ -85626,18 +84436,10 @@
  • - - - -
  • - - - -
  • @@ -86494,6 +85296,130 @@
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • @@ -88988,6 +87914,10 @@
  • + + + +
  • @@ -91062,6 +89992,10 @@
  • + + + +
  • @@ -91196,6 +90130,10 @@
  • + + + +
  • @@ -91482,6 +90420,10 @@
  • + + + +
  • @@ -91606,6 +90548,10 @@
  • + + + +
  • @@ -91718,6 +90664,10 @@
  • + + + +
  • @@ -91822,6 +90772,10 @@
  • + + + +
  • @@ -93610,10 +92564,6 @@
  • - - - -
  • @@ -93886,38 +92836,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -94560,10 +93478,6 @@
  • - - - -
  • @@ -94876,38 +93790,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -95454,10 +94336,6 @@
  • - - - -
  • @@ -95474,14 +94352,6 @@
  • - - - -
  • - - - -
  • @@ -95498,10 +94368,6 @@
  • - - - -
  • @@ -95510,10 +94376,6 @@
  • - - - -
  • @@ -95626,22 +94488,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -95998,10 +94844,6 @@
  • - - - -
  • @@ -96510,10 +95352,6 @@
  • - - - -
  • @@ -96566,10 +95404,6 @@
  • - - - -
  • @@ -96734,22 +95568,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -98890,72 +97708,6 @@
  • - - - -
      -
    • - - - -
        -
      • - - - -
      -
    • - - - -
        -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      • - - - -
      -
    -
  • @@ -100048,6 +98800,54 @@
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • @@ -100272,6 +99072,10 @@
  • + + + +
  • @@ -101060,6 +99864,34 @@
  • + + + +
      +
    • + + + +
        +
      • + + + +
      • + + + +
      • + + + +
      • + + + +
      +
    +
  • diff --git a/docs/html/cef4delphi.hhk b/docs/html/cef4delphi.hhk index f5564e95..9790fbc8 100644 --- a/docs/html/cef4delphi.hhk +++ b/docs/html/cef4delphi.hhk @@ -763,6 +763,14 @@
  • + + + +
  • + + + +
  • @@ -1003,6 +1011,10 @@
  • + + + +
  • @@ -1847,6 +1859,10 @@
  • + + + +
  • @@ -2035,6 +2051,10 @@
  • + + + +
  • @@ -2488,11 +2508,15 @@
  • - +
    • + + +
    • +
    • @@ -2501,10 +2525,6 @@
    • - - -
    • -
    • @@ -3998,16 +4018,16 @@
    • - +
      • - +
      • - +
    • @@ -4275,10 +4295,6 @@
    • - - - -
    • @@ -4347,10 +4363,6 @@
    • - - - -
    • @@ -6055,166 +6067,6 @@
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • @@ -6423,18 +6275,6 @@
    • - - - -
    • - - - -
    • - - - -
    • @@ -8191,10 +8031,6 @@
    • - - - -
    • @@ -8223,14 +8059,6 @@
    • - - - -
    • - - - -
    • @@ -8243,10 +8071,6 @@
    • - - - -
    • @@ -8263,10 +8087,6 @@
    • - - - -
    • @@ -9079,6 +8899,30 @@
    • + + + +
    • + + + +
    • + + + +
    • + + + +
    • + + + +
    • + + + +
    • @@ -10651,6 +10495,10 @@
    • + + + +
    • @@ -10743,6 +10591,10 @@
    • + + + +
    • @@ -11303,38 +11155,6 @@
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • @@ -13947,14 +13767,6 @@
    • - - - -
    • - - - -
    • @@ -13979,10 +13791,6 @@
    • - - - -
    • @@ -14019,6 +13827,10 @@
    • + + + +
    • @@ -14375,6 +14187,14 @@
    • + + + +
    • + + + +
    • @@ -15891,10 +15711,6 @@
    • - - - -
    • @@ -16151,6 +15967,14 @@
    • + + + +
    • + + + +
    • @@ -16255,10 +16079,6 @@
    • - - - -
    • @@ -16695,16 +16515,12 @@
    • - - - -
    • - - + +
    • @@ -16983,6 +16799,10 @@
    • + + + +
    • @@ -17107,6 +16927,10 @@
    • + + + +
    • @@ -17363,10 +17187,6 @@
    • - - - -
    • @@ -17375,10 +17195,6 @@
    • - - - -
    • @@ -17503,6 +17319,10 @@
    • + + + +
    • @@ -17800,16 +17620,16 @@
    • - +
      • - +
      • - +
    • @@ -17846,16 +17666,16 @@
    • - +
      • - +
      • - +
    • @@ -18471,10 +18291,6 @@
    • - - - -
    • @@ -18539,10 +18355,6 @@
    • - - - -
    • @@ -18751,10 +18563,6 @@
    • - - - -
    • @@ -18823,10 +18631,6 @@
    • - - - -
    • @@ -19299,6 +19103,10 @@
    • + + + +
    • @@ -19391,6 +19199,10 @@
    • + + + +
    • @@ -21293,6 +21105,10 @@
    • + + + +
    • @@ -23511,254 +23327,6 @@
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • @@ -24747,38 +24315,6 @@
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • - - - -
    • @@ -25070,30 +24606,26 @@
    • - +
      • - - -
      • - +
      • + + +
    • - +
      • - - -
      • - - +
      • @@ -25101,7 +24633,11 @@
      • - + + +
      • + +
    • @@ -25577,6 +25113,26 @@
    • + + + +
    • + + + +
    • + + + +
    • + + + +
    • + + + +
    • @@ -29525,10 +29081,6 @@
    • - - - -
    • @@ -29553,14 +29105,6 @@
    • - - - -
    • - - - -
    • @@ -29573,10 +29117,6 @@
    • - - - -
    • @@ -29589,10 +29129,6 @@
    • - - - -
    • @@ -29689,10 +29225,6 @@
    • - - - -
    • @@ -29721,14 +29253,6 @@
    • - - - -
    • - - - -
    • @@ -29745,10 +29269,6 @@
    • - - - -
    • @@ -29761,10 +29281,6 @@
    • - - - -
    • @@ -29775,7 +29291,7 @@
    • - +
  • @@ -29831,10 +29347,6 @@
  • - - - -
  • @@ -31639,10 +31151,6 @@
  • - - - -
  • @@ -31699,18 +31207,10 @@
  • - - - -
  • - - - -
  • @@ -32395,6 +31895,106 @@
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • @@ -32483,6 +32083,10 @@
  • + + + +
  • @@ -34703,6 +34307,10 @@
  • + + + +
  • @@ -36531,6 +36139,10 @@
  • + + + +
  • @@ -36619,6 +36231,10 @@
  • + + + +
  • @@ -36823,6 +36439,10 @@
  • + + + +
  • @@ -37007,6 +36627,10 @@
  • + + + +
  • @@ -37111,6 +36735,10 @@
  • + + + +
  • @@ -37203,6 +36831,10 @@
  • + + + +
  • @@ -38880,16 +38512,16 @@
  • - +
    • - +
    • - +
  • @@ -38902,16 +38534,16 @@
  • - +
    • - +
    • - +
  • @@ -38945,10 +38577,6 @@
  • - - - -
  • @@ -38978,16 +38606,16 @@
  • - +
    • - +
    • - +
  • @@ -39063,10 +38691,6 @@
  • - - - -
  • @@ -39087,10 +38711,6 @@
  • - - - -
  • @@ -39315,38 +38935,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -39821,10 +39409,6 @@
  • - - - -
  • @@ -39953,10 +39537,6 @@
  • - - - -
  • @@ -40237,38 +39817,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -40853,14 +40401,6 @@
  • - - - -
  • - - - -
  • @@ -41021,10 +40561,6 @@
  • - - - -
  • @@ -41129,10 +40665,6 @@
  • - - - -
  • @@ -41156,16 +40688,16 @@
  • - +
    • - +
    • - +
  • @@ -41243,10 +40775,6 @@
  • - - - -
  • @@ -41523,38 +41051,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -42036,30 +41532,30 @@
  • - +
    • - - -
    • - +
    • + + +
  • - +
    • - +
    • - +
  • @@ -42116,16 +41612,16 @@
  • - +
    • - +
    • - +
  • @@ -42418,19 +41914,11 @@
  • - +
    • - - -
    • - - - -
    • -
    • @@ -42439,8 +41927,16 @@
    • + + +
    • + +
    • + + +
  • @@ -43819,58 +43315,6 @@
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • - - - -
  • @@ -44691,6 +44135,46 @@
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • @@ -44875,6 +44359,10 @@
  • + + + +
  • @@ -44997,11 +44485,11 @@
  • - +
  • - +
  • @@ -45126,16 +44614,16 @@
  • - +
    • - +
    • - +
  • @@ -45597,6 +45085,26 @@
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • + + + +
  • @@ -45758,16 +45266,16 @@
  • - +
    • - +
    • - +
  • @@ -45828,16 +45336,16 @@
  • - +
    • - +
    • - +
  • @@ -45933,18 +45441,10 @@
  • - - - -
  • - - - -
  • @@ -46017,10 +45517,6 @@
  • - - - -
  • @@ -46197,18 +45693,6 @@
  • - - - -
  • - - - -
  • - - - -
  • @@ -46257,10 +45741,6 @@
  • - - - -
  • @@ -46307,10 +45787,6 @@
  • - - - -
  • @@ -46323,6 +45799,10 @@
  • + + + +
  • diff --git a/docs/html/cef4delphi.hhp b/docs/html/cef4delphi.hhp index f4dda523..51a184c7 100644 --- a/docs/html/cef4delphi.hhp +++ b/docs/html/cef4delphi.hhp @@ -185,12 +185,6 @@ uCEFDragHandler.TCustomDragHandler.html uCEFEndTracingCallback.html uCEFEndTracingCallback.TCefEndTracingCallbackOwn.html uCEFEndTracingCallback.TCefFastEndTracingCallback.html -uCEFExtension.html -uCEFExtension.TCefExtensionRef.html -uCEFExtensionHandler.html -uCEFExtensionHandler.TCefExtensionHandlerRef.html -uCEFExtensionHandler.TCefExtensionHandlerOwn.html -uCEFExtensionHandler.TCustomExtensionHandler.html uCEFFileDialogCallback.html uCEFFileDialogCallback.TCefFileDialogCallbackRef.html uCEFFileDialogInfo.html @@ -216,8 +210,6 @@ uCEFFrame.TCefFrameRef.html uCEFFrameHandler.html uCEFFrameHandler.TCefFrameHandlerOwn.html uCEFFrameHandler.TCustomFrameHandler.html -uCEFGetExtensionResourceCallback.html -uCEFGetExtensionResourceCallback.TCefGetExtensionResourceCallbackRef.html uCEFImage.html uCEFImage.TCefImageRef.html uCEFInterfaces.html @@ -269,6 +261,7 @@ uCEFInterfaces.ICefv8Handler.html uCEFInterfaces.ICefV8Interceptor.html uCEFInterfaces.ICefV8Accessor.html uCEFInterfaces.ICefTask.html +uCEFInterfaces.ICefTaskManager.html uCEFInterfaces.ICefTaskRunner.html uCEFInterfaces.ICefThread.html uCEFInterfaces.ICefWaitableEvent.html @@ -314,9 +307,6 @@ uCEFInterfaces.ICefDictionaryValue.html uCEFInterfaces.ICefListValue.html uCEFInterfaces.ICefLifeSpanHandler.html uCEFInterfaces.ICefCommandHandler.html -uCEFInterfaces.ICefGetExtensionResourceCallback.html -uCEFInterfaces.ICefExtensionHandler.html -uCEFInterfaces.ICefExtension.html uCEFInterfaces.ICefLoadHandler.html uCEFInterfaces.ICefResponseFilter.html uCEFInterfaces.ICefRequestHandler.html @@ -655,6 +645,8 @@ uCEFTask.TCefBrowserNavigationTask.html uCEFTask.TCefSetAudioMutedTask.html uCEFTask.TCefToggleAudioMutedTask.html uCEFTask.TCefEnableFocusTask.html +uCEFTaskManager.html +uCEFTaskManager.TCefTaskManagerRef.html uCEFTaskRunner.html uCEFTaskRunner.TCefTaskRunnerRef.html uCEFTextfield.html @@ -683,9 +675,13 @@ uCEFTypes.TCefPoint.html uCEFTypes.TCefSize.html uCEFTypes.TCefRange.html uCEFTypes.TCefCursorInfo.html +uCEFTypes.TCefLinuxWindowProperties.html +uCEFTypes.TLinuxWindowProperties.html uCEFTypes.TCefUrlParts.html uCEFTypes.TUrlParts.html uCEFTypes.TCefInsets.html +uCEFTypes.TCefTaskInfo.html +uCEFTypes.TCustomTaskInfo.html uCEFTypes.TCefTouchHandleState.html uCEFTypes.TCefCompositionUnderline.html uCEFTypes.TCefTime.html @@ -736,10 +732,7 @@ uCEFTypes.TCefMediaRouteCreateCallback.html uCEFTypes.TCefMediaSink.html uCEFTypes.TCefMediaSinkDeviceInfoCallback.html uCEFTypes.TCefMediaSource.html -uCEFTypes.TCefGetExtensionResourceCallback.html -uCEFTypes.TCefExtensionHandler.html uCEFTypes.TCefAudioHandler.html -uCEFTypes.TCefExtension.html uCEFTypes.TCefLoadHandler.html uCEFTypes.TCefRenderHandler.html uCEFTypes.TCefPreferenceRegistrar.html @@ -809,6 +802,7 @@ uCEFTypes.TCefPostDataElement.html uCEFTypes.TCefPostData.html uCEFTypes.TCefRequest.html uCEFTypes.TCefTask.html +uCEFTypes.TCefTaskManager.html uCEFTypes.TCefDomVisitor.html uCEFTypes.TCefMenuModel.html uCEFTypes.TCefContextMenuParams.html diff --git a/docs/html/cef4delphi.log b/docs/html/cef4delphi.log index 03a6b405..0077d099 100644 --- a/docs/html/cef4delphi.log +++ b/docs/html/cef4delphi.log @@ -172,12 +172,6 @@ uCEFDragHandler.TCustomDragHandler.html uCEFEndTracingCallback.html uCEFEndTracingCallback.TCefEndTracingCallbackOwn.html uCEFEndTracingCallback.TCefFastEndTracingCallback.html -uCEFExtension.html -uCEFExtension.TCefExtensionRef.html -uCEFExtensionHandler.html -uCEFExtensionHandler.TCefExtensionHandlerRef.html -uCEFExtensionHandler.TCefExtensionHandlerOwn.html -uCEFExtensionHandler.TCustomExtensionHandler.html uCEFFileDialogCallback.html uCEFFileDialogCallback.TCefFileDialogCallbackRef.html uCEFFileDialogInfo.html @@ -203,8 +197,6 @@ uCEFFrame.TCefFrameRef.html uCEFFrameHandler.html uCEFFrameHandler.TCefFrameHandlerOwn.html uCEFFrameHandler.TCustomFrameHandler.html -uCEFGetExtensionResourceCallback.html -uCEFGetExtensionResourceCallback.TCefGetExtensionResourceCallbackRef.html uCEFImage.html uCEFImage.TCefImageRef.html uCEFInterfaces.html @@ -256,6 +248,7 @@ uCEFInterfaces.ICefv8Handler.html uCEFInterfaces.ICefV8Interceptor.html uCEFInterfaces.ICefV8Accessor.html uCEFInterfaces.ICefTask.html +uCEFInterfaces.ICefTaskManager.html uCEFInterfaces.ICefTaskRunner.html uCEFInterfaces.ICefThread.html uCEFInterfaces.ICefWaitableEvent.html @@ -301,9 +294,6 @@ uCEFInterfaces.ICefDictionaryValue.html uCEFInterfaces.ICefListValue.html uCEFInterfaces.ICefLifeSpanHandler.html uCEFInterfaces.ICefCommandHandler.html -uCEFInterfaces.ICefGetExtensionResourceCallback.html -uCEFInterfaces.ICefExtensionHandler.html -uCEFInterfaces.ICefExtension.html uCEFInterfaces.ICefLoadHandler.html uCEFInterfaces.ICefResponseFilter.html uCEFInterfaces.ICefRequestHandler.html @@ -642,6 +632,8 @@ uCEFTask.TCefBrowserNavigationTask.html uCEFTask.TCefSetAudioMutedTask.html uCEFTask.TCefToggleAudioMutedTask.html uCEFTask.TCefEnableFocusTask.html +uCEFTaskManager.html +uCEFTaskManager.TCefTaskManagerRef.html uCEFTaskRunner.html uCEFTaskRunner.TCefTaskRunnerRef.html uCEFTextfield.html @@ -670,9 +662,13 @@ uCEFTypes.TCefPoint.html uCEFTypes.TCefSize.html uCEFTypes.TCefRange.html uCEFTypes.TCefCursorInfo.html +uCEFTypes.TCefLinuxWindowProperties.html +uCEFTypes.TLinuxWindowProperties.html uCEFTypes.TCefUrlParts.html uCEFTypes.TUrlParts.html uCEFTypes.TCefInsets.html +uCEFTypes.TCefTaskInfo.html +uCEFTypes.TCustomTaskInfo.html uCEFTypes.TCefTouchHandleState.html uCEFTypes.TCefCompositionUnderline.html uCEFTypes.TCefTime.html @@ -723,10 +719,7 @@ uCEFTypes.TCefMediaRouteCreateCallback.html uCEFTypes.TCefMediaSink.html uCEFTypes.TCefMediaSinkDeviceInfoCallback.html uCEFTypes.TCefMediaSource.html -uCEFTypes.TCefGetExtensionResourceCallback.html -uCEFTypes.TCefExtensionHandler.html uCEFTypes.TCefAudioHandler.html -uCEFTypes.TCefExtension.html uCEFTypes.TCefLoadHandler.html uCEFTypes.TCefRenderHandler.html uCEFTypes.TCefPreferenceRegistrar.html @@ -796,6 +789,7 @@ uCEFTypes.TCefPostDataElement.html uCEFTypes.TCefPostData.html uCEFTypes.TCefRequest.html uCEFTypes.TCefTask.html +uCEFTypes.TCefTaskManager.html uCEFTypes.TCefDomVisitor.html uCEFTypes.TCefMenuModel.html uCEFTypes.TCefContextMenuParams.html @@ -933,12 +927,12 @@ published.gif automated.gif pasdoc.css -Compile time: 0 minutes, 15 seconds -16,535 Topics -141,156 Local links +Compile time: 0 minutes, 16 seconds +16,339 Topics +139,275 Local links 35 Internet links 5 Graphics -Created c:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\docs\cef4delphi.chm, 3,651,572 bytes -Compression decreased file by 23,610,650 bytes. +Created c:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\docs\cef4delphi.chm, 3,602,610 bytes +Compression decreased file by 23,307,016 bytes. diff --git a/docs/html/index.html b/docs/html/index.html index 459f9944..0adbb335 100644 --- a/docs/html/index.html +++ b/docs/html/index.html @@ -259,14 +259,6 @@

     

    -uCEFExtension -

     

    - - -uCEFExtensionHandler -

     

    - - uCEFFileDialogCallback

     

    @@ -311,425 +303,425 @@

     

    -uCEFGetExtensionResourceCallback -

     

    - - uCEFImage

     

    - + uCEFInterfaces

     

    - + uCEFJsDialogCallback

     

    - + uCEFJsDialogHandler

     

    - + uCEFJson

     

    - + uCEFKeyboardHandler

     

    - + uCEFLabelButton

     

    - + uCEFLabelButtonComponent

     

    - + uCEFLayout

     

    - + uCEFLazarusCocoa

     

    - + uCEFLibFunctions

     

    - + uCEFLifeSpanHandler

     

    - + uCEFLinkedWinControlBase

     

    - + uCEFLinkedWindowParent

     

    - + uCEFLinuxConstants

     

    - + uCEFLinuxEventPipe

     

    - + uCEFLinuxFunctions

     

    - + uCEFLinuxTypes

     

    - + uCEFListValue

     

    - + uCEFLoadHandler

     

    - + uCEFMacOSConstants

     

    - + uCEFMacOSCustomCocoaTimer

     

    - + uCEFMacOSFunctions

     

    - + uCEFMacOSInterfaces

     

    - + uCEFMediaAccessCallback

     

    - + uCEFMediaAccessHandler

     

    - + uCEFMediaObserver

     

    - + uCEFMediaRoute

     

    - + uCEFMediaRouteCreateCallback

     

    - + uCEFMediaRouter

     

    - + uCEFMediaSink

     

    - + uCEFMediaSinkDeviceInfoCallback

     

    - + uCEFMediaSource

     

    - + uCEFMenuButton

     

    - + uCEFMenuButtonComponent

     

    - + uCEFMenuButtonDelegate

     

    - + uCEFMenuButtonPressedLock

     

    - + uCEFMenuModel

     

    - + uCEFMenuModelDelegate

     

    - + uCEFMiscFunctions

     

    - + uCEFNavigationEntry

     

    - + uCEFNavigationEntryVisitor

     

    - + uCEFOAuth2Helper

     

    - + uCEFOLEDragAndDrop

     

    - + uCEFOsrBrowserWindow

     

    - + uCEFOSRIMEHandler

     

    - + uCEFOverlayController

     

    - + uCEFPanel

     

    - + uCEFPanelComponent

     

    - + uCEFPanelDelegate

     

    - + uCEFPDFPrintCallback

     

    - + uCEFPDFPrintOptions

     

    - + uCEFPermissionHandler

     

    - + uCEFPermissionPromptCallback

     

    - + uCEFPostData

     

    - + uCEFPostDataElement

     

    - + uCEFPreferenceManager

     

    - + uCEFPreferenceRegistrar

     

    - + uCEFPrintDialogCallback

     

    - + uCEFPrintHandler

     

    - + uCEFPrintJobCallback

     

    - + uCEFPrintSettings

     

    - + uCEFProcessMessage

     

    - + uCEFRegistration

     

    - + uCEFRenderHandler

     

    - + uCEFRenderProcessHandler

     

    - + uCEFRequest

     

    - + uCEFRequestContext

     

    - + uCEFRequestContextHandler

     

    - + uCEFRequestHandler

     

    - + uCEFResolveCallback

     

    - + uCEFResourceBundle

     

    - + uCEFResourceBundleHandler

     

    - + uCEFResourceHandler

     

    - + uCEFResourceReadCallback

     

    - + uCEFResourceRequestHandler

     

    - + uCEFResourceSkipCallback

     

    - + uCEFResponse

     

    - + uCEFResponseFilter

     

    - + uCEFRunContextMenuCallback

     

    - + uCEFRunFileDialogCallback

     

    - + uCEFRunQuickMenuCallback

     

    - + uCEFSchemeHandlerFactory

     

    - + uCEFSchemeRegistrar

     

    - + uCEFScrollView

     

    - + uCEFScrollViewComponent

     

    - + uCEFSelectClientCertificateCallback

     

    - + uCEFSentinel

     

    - + uCEFServer

     

    - + uCEFServerComponent

     

    - + uCEFServerEvents

     

    - + uCEFServerHandler

     

    - + uCEFSetCookieCallback

     

    - + uCEFSharedMemoryRegion

     

    - + uCEFSharedProcessMessageBuilder

     

    - + uCEFSslInfo

     

    - + uCEFSSLStatus

     

    - + uCEFStreamReader

     

    - + uCEFStreamWriter

     

    - + uCEFStringList

     

    - + uCEFStringMap

     

    - + uCEFStringMultimap

     

    - + uCEFStringVisitor

     

    - + uCEFTask

     

    + +uCEFTaskManager +

     

    + uCEFTaskRunner

     

    diff --git a/docs/html/uCEFApp.TCefAppOwn.html b/docs/html/uCEFApp.TCefAppOwn.html index dffdac14..18cc8d67 100644 --- a/docs/html/uCEFApp.TCefAppOwn.html +++ b/docs/html/uCEFApp.TCefAppOwn.html @@ -88,7 +88,7 @@

    This item has no description. Showing description inherited from ICefApp.GetResourceBundleHandler.

    - Return the handler for resource bundle events. If TCefSettings.pack_loading_disabled is true (1) a handler must be returned. If no handler is returned resources will be loaded from pack files. This function is called by the browser and render processes on multiple threads.

    + Return the handler for resource bundle events. If no handler is returned resources will be loaded from pack files. This function is called by the browser and render processes on multiple threads.

    diff --git a/docs/html/uCEFApp.TCustomCefApp.html b/docs/html/uCEFApp.TCustomCefApp.html index c20c5f20..86529374 100644 --- a/docs/html/uCEFApp.TCustomCefApp.html +++ b/docs/html/uCEFApp.TCustomCefApp.html @@ -147,7 +147,7 @@

    This item has no description. Showing description inherited from ICefApp.GetResourceBundleHandler.

    - Return the handler for resource bundle events. If TCefSettings.pack_loading_disabled is true (1) a handler must be returned. If no handler is returned resources will be loaded from pack files. This function is called by the browser and render processes on multiple threads.

    + Return the handler for resource bundle events. If no handler is returned resources will be loaded from pack files. This function is called by the browser and render processes on multiple threads.

    diff --git a/docs/html/uCEFApplicationCore.TCefApplicationCore.html b/docs/html/uCEFApplicationCore.TCefApplicationCore.html index da305607..abdf8cf4 100644 --- a/docs/html/uCEFApplicationCore.TCefApplicationCore.html +++ b/docs/html/uCEFApplicationCore.TCefApplicationCore.html @@ -43,39 +43,31 @@ - - - - - + - + - + - + - + - - - - - + @@ -115,296 +107,296 @@ - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + @@ -766,92 +758,100 @@ - + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + @@ -1196,6 +1196,14 @@ + + + + + + + +
    ProtectedFChromeRuntime: boolean;
    Protected FMultiThreadedMessageLoop: boolean;
    Protected FExternalMessagePump: boolean;
    Protected FWindowlessRenderingEnabled: boolean;
    Protected FCommandLineArgsDisabled: boolean;
    Protected FCache: ustring;
    Protected FRootCache: ustring;
    ProtectedFPersistSessionCookies: boolean;
    ProtectedFPersistUserPreferences: boolean;FPersistSessionCookies: boolean;
    Protected
    ProtectedFPackLoadingDisabled: boolean;
    Protected FRemoteDebuggingPort: integer;
    Protected FUncaughtExceptionStackSize: integer;
    Protected FIgnoreCertificateErrors: boolean;
    Protected FBackgroundColor: TCefColor;
    Protected FAcceptLanguageList: ustring;
    Protected FCookieableSchemesList: ustring;
    Protected FCookieableSchemesExcludeDefaults: boolean;
    Protected FChromePolicyId: ustring;
    Protected FChromeAppIconId: integer;
    Protected FSingleProcess: boolean;
    Protected FEnableMediaStream: boolean;
    Protected FEnableSpeechInput: boolean;
    Protected FUseFakeUIForMediaStream: boolean;
    Protected FEnableUsermediaScreenCapturing: boolean;
    Protected FEnableGPU: boolean;
    Protected FEnableFeatures: ustring;
    Protected FDisableFeatures: ustring;
    Protected FEnableBlinkFeatures: ustring;
    Protected FDisableBlinkFeatures: ustring;
    Protected FBlinkSettings: ustring;
    Protected FForceFieldTrials: ustring;
    Protected FForceFieldTrialParams: ustring;
    Protected FSmoothScrolling: TCefState;
    Protected FMuteAudio: boolean;
    Protected FSitePerProcess: boolean;
    Protected FDisableWebSecurity: boolean;
    Protected FDisablePDFExtension: boolean;
    Protected FDisableSiteIsolationTrials: boolean;
    Protected FDisableChromeLoginPrompt: boolean;
    Protected FDisableExtensions: boolean;
    Protected FAutoplayPolicy: TCefAutoplayPolicy;
    Protected FDisableBackgroundNetworking: boolean;
    Protected FMetricsRecordingOnly: boolean;
    Protected FAllowFileAccessFromFiles: boolean;
    Protected FAllowRunningInsecureContent: boolean;
    Protected FEnablePrintPreview: boolean;
    Protected FDefaultEncoding: ustring;
    Protected FDisableJavascript: boolean;
    Protected FDisableJavascriptCloseWindows: boolean;
    Protected FDisableJavascriptAccessClipboard: boolean;
    Protected FDisableJavascriptDomPaste: boolean;
    Protected FAllowUniversalAccessFromFileUrls: boolean;
    Protected FDisableImageLoading: boolean;
    Protected FImageShrinkStandaloneToFit: boolean;
    Protected FDisableTextAreaResize: boolean;
    Protected FDisableTabToLinks: boolean;
    Protected FEnableProfanityFilter: boolean;
    Protected FDisableSpellChecking: boolean;
    Protected FOverrideSpellCheckLang: ustring;
    Protected FTouchEvents: TCefState;
    Protected FDisableReadingFromCanvas: boolean;
    Protected FHyperlinkAuditing: boolean;
    Protected FDisableNewBrowserInfoTimeout: boolean;
    Protected FDevToolsProtocolLogFile: ustring;
    Protected FForcedDeviceScaleFactor: single;
    Protected FDisableZygote: boolean;
    Protected FUseMockKeyChain: boolean;
    Protected FDisableRequestHandlingForTesting: boolean;
    Protected FDisablePopupBlocking: boolean;
    Protected FDisableBackForwardCache: boolean;
    Protected FDisableComponentUpdate: boolean;
    Protected FAllowInsecureLocalhost: boolean;
    Protected FKioskPrinting: boolean;
    Protected FTreatInsecureOriginAsSecure: ustring;
    Protected FNetLogEnabled: boolean;
    Protected FNetLogFile: ustring;
    Protected FNetLogCaptureMode: TCefNetLogCaptureMode;
    Protected FRemoteAllowOrigins: ustring;
    Protected FAutoAcceptCamAndMicCapture: boolean;
    Protected FUIColorMode: TCefUIColorMode;
    Protected FDisableHangMonitor: boolean;
    Protected FHideCrashRestoreBubble: boolean;
    ProtectedFPostQuantumKyber: TCefState;
    Protected FWindowsSandboxInfo: pointer;
    Protectedfunction Load_cef_file_util_capi_h: boolean;function Load_cef_dump_without_crashing_internal_h: boolean;
    Protectedfunction Load_cef_file_util_capi_h: boolean;
    Protected function Load_cef_i18n_util_capi_h: boolean;
    Protected function Load_cef_image_capi_h: boolean;
    Protected function Load_cef_menu_model_capi_h: boolean;
    Protected function Load_cef_media_router_capi_h: boolean;
    Protected function Load_cef_origin_whitelist_capi_h: boolean;
    Protected function Load_cef_parser_capi_h: boolean;
    Protected function Load_cef_path_util_capi_h: boolean;
    Protected function Load_cef_preference_capi_h: boolean;
    Protected function Load_cef_print_settings_capi_h: boolean;
    Protected function Load_cef_process_message_capi_h: boolean;
    Protected function Load_cef_process_util_capi_h: boolean;
    Protected function Load_cef_request_capi_h: boolean;
    Protected function Load_cef_request_context_capi_h: boolean;
    Protected function Load_cef_resource_bundle_capi_h: boolean;
    Protected function Load_cef_response_capi_h: boolean;
    Protected function Load_cef_scheme_capi_h: boolean;
    Protected function Load_cef_server_capi_h: boolean;
    Protected function Load_cef_shared_process_message_builder_capi_h: boolean;
    Protected function Load_cef_ssl_info_capi_h: boolean;
    Protected function Load_cef_stream_capi_h: boolean;
    Protected function Load_cef_task_capi_h: boolean;
    Protectedfunction Load_cef_task_manager_capi_h: boolean;
    Protected function Load_cef_thread_capi_h: boolean;Public procedure RemoveComponentID(aComponentID : integer);
    Publicfunction DumpWithoutCrashing(mseconds_between_dumps: int64; const function_name, file_name: ustring; line_number: integer): boolean;
    Publicfunction DumpWithoutCrashingUnthrottled: boolean;

    Properties

    @@ -1217,39 +1225,31 @@ - - - - - + - + - + - + - + - - - - - + @@ -1289,292 +1289,292 @@ - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + @@ -1871,7 +1871,7 @@ Fields used to populate TCefSettings

    Publicproperty ChromeRuntime : boolean read FChromeRuntime write FChromeRuntime;
    Public property MultiThreadedMessageLoop : boolean read FMultiThreadedMessageLoop write FMultiThreadedMessageLoop;
    Public property ExternalMessagePump : boolean read FExternalMessagePump write FExternalMessagePump;
    Public property WindowlessRenderingEnabled : Boolean read FWindowlessRenderingEnabled write FWindowlessRenderingEnabled;
    Public property CommandLineArgsDisabled : Boolean read FCommandLineArgsDisabled write FCommandLineArgsDisabled;
    Public property Cache : ustring read FCache write SetCache;
    Public property RootCache : ustring read FRootCache write SetRootCache;
    Publicproperty PersistSessionCookies : Boolean read FPersistSessionCookies write FPersistSessionCookies;
    Publicproperty PersistUserPreferences : Boolean read FPersistUserPreferences write FPersistUserPreferences;property PersistSessionCookies : Boolean read FPersistSessionCookies write FPersistSessionCookies;
    Public
    Publicproperty PackLoadingDisabled : Boolean read FPackLoadingDisabled write FPackLoadingDisabled;
    Public property RemoteDebuggingPort : Integer read FRemoteDebuggingPort write FRemoteDebuggingPort;
    Public property UncaughtExceptionStackSize : Integer read FUncaughtExceptionStackSize write FUncaughtExceptionStackSize;
    Public property BackgroundColor : TCefColor read FBackgroundColor write FBackgroundColor;
    Public property AcceptLanguageList : ustring read FAcceptLanguageList write FAcceptLanguageList;
    Public property CookieableSchemesList : ustring read FCookieableSchemesList write FCookieableSchemesList;
    Public property CookieableSchemesExcludeDefaults : boolean read FCookieableSchemesExcludeDefaults write FCookieableSchemesExcludeDefaults;
    Public property ChromePolicyId : ustring read FChromePolicyId write FChromePolicyId;
    Public property ChromeAppIconId : integer read FChromeAppIconId write FChromeAppIconId;
    Public property SingleProcess : Boolean read FSingleProcess write FSingleProcess;
    Public property EnableMediaStream : boolean read FEnableMediaStream write FEnableMediaStream;
    Public property EnableSpeechInput : boolean read FEnableSpeechInput write FEnableSpeechInput;
    Public property UseFakeUIForMediaStream : boolean read FUseFakeUIForMediaStream write FUseFakeUIForMediaStream;
    Public property EnableUsermediaScreenCapturing : boolean read FEnableUsermediaScreenCapturing write FEnableUsermediaScreenCapturing;
    Public property EnableGPU : boolean read FEnableGPU write FEnableGPU;
    Public property EnableFeatures : ustring read FEnableFeatures write FEnableFeatures;
    Public property DisableFeatures : ustring read FDisableFeatures write FDisableFeatures;
    Public property EnableBlinkFeatures : ustring read FEnableBlinkFeatures write FEnableBlinkFeatures;
    Public property DisableBlinkFeatures : ustring read FDisableBlinkFeatures write FDisableBlinkFeatures;
    Public property BlinkSettings : ustring read FBlinkSettings write FBlinkSettings;
    Public property ForceFieldTrials : ustring read FForceFieldTrials write FForceFieldTrials;
    Public property ForceFieldTrialParams : ustring read FForceFieldTrialParams write FForceFieldTrialParams;
    Public property SmoothScrolling : TCefState read FSmoothScrolling write FSmoothScrolling;
    Public property MuteAudio : boolean read FMuteAudio write FMuteAudio;
    Public property SitePerProcess : boolean read FSitePerProcess write FSitePerProcess;
    Public property DisableWebSecurity : boolean read FDisableWebSecurity write FDisableWebSecurity;
    Public property DisablePDFExtension : boolean read FDisablePDFExtension write FDisablePDFExtension;
    Public property DisableSiteIsolationTrials : boolean read FDisableSiteIsolationTrials write FDisableSiteIsolationTrials;
    Public property DisableChromeLoginPrompt : boolean read FDisableChromeLoginPrompt write FDisableChromeLoginPrompt;
    Public property DisableExtensions : boolean read FDisableExtensions write FDisableExtensions;
    Public property AutoplayPolicy : TCefAutoplayPolicy read FAutoplayPolicy write FAutoplayPolicy;
    Public property DisableBackgroundNetworking : boolean read FDisableBackgroundNetworking write FDisableBackgroundNetworking;
    Public property MetricsRecordingOnly : boolean read FMetricsRecordingOnly write FMetricsRecordingOnly;
    Public property AllowFileAccessFromFiles : boolean read FAllowFileAccessFromFiles write FAllowFileAccessFromFiles;
    Public property AllowRunningInsecureContent : boolean read FAllowRunningInsecureContent write FAllowRunningInsecureContent;
    Public property EnablePrintPreview : boolean read FEnablePrintPreview write FEnablePrintPreview;
    Public property DefaultEncoding : ustring read FDefaultEncoding write FDefaultEncoding;
    Public property DisableJavascript : boolean read FDisableJavascript write FDisableJavascript;
    Public property DisableJavascriptCloseWindows : boolean read FDisableJavascriptCloseWindows write FDisableJavascriptCloseWindows;
    Public property DisableJavascriptAccessClipboard : boolean read FDisableJavascriptAccessClipboard write FDisableJavascriptAccessClipboard;
    Public property DisableJavascriptDomPaste : boolean read FDisableJavascriptDomPaste write FDisableJavascriptDomPaste;
    Public property AllowUniversalAccessFromFileUrls : boolean read FAllowUniversalAccessFromFileUrls write FAllowUniversalAccessFromFileUrls;
    Public property DisableImageLoading : boolean read FDisableImageLoading write FDisableImageLoading;
    Public property ImageShrinkStandaloneToFit : boolean read FImageShrinkStandaloneToFit write FImageShrinkStandaloneToFit;
    Public property DisableTextAreaResize : boolean read FDisableTextAreaResize write FDisableTextAreaResize;
    Public property DisableTabToLinks : boolean read FDisableTabToLinks write FDisableTabToLinks;
    Public property EnableProfanityFilter : boolean read FEnableProfanityFilter write FEnableProfanityFilter;
    Public property DisableSpellChecking : boolean read FDisableSpellChecking write FDisableSpellChecking;
    Public property OverrideSpellCheckLang : ustring read FOverrideSpellCheckLang write FOverrideSpellCheckLang;
    Public property TouchEvents : TCefState read FTouchEvents write FTouchEvents;
    Public property DisableReadingFromCanvas : boolean read FDisableReadingFromCanvas write FDisableReadingFromCanvas;
    Public property HyperlinkAuditing : boolean read FHyperlinkAuditing write FHyperlinkAuditing;
    Public property DisableNewBrowserInfoTimeout : boolean read FDisableNewBrowserInfoTimeout write FDisableNewBrowserInfoTimeout;
    Public property DevToolsProtocolLogFile : ustring read FDevToolsProtocolLogFile write FDevToolsProtocolLogFile;
    Public property ForcedDeviceScaleFactor : single read FForcedDeviceScaleFactor write FForcedDeviceScaleFactor;
    Public property DisableZygote : boolean read FDisableZygote write FDisableZygote;
    Public property UseMockKeyChain : boolean read FUseMockKeyChain write FUseMockKeyChain;
    Public property DisableRequestHandlingForTesting : boolean read FDisableRequestHandlingForTesting write FDisableRequestHandlingForTesting;
    Public property DisablePopupBlocking : boolean read FDisablePopupBlocking write FDisablePopupBlocking;
    Public property DisableBackForwardCache : boolean read FDisableBackForwardCache write FDisableBackForwardCache;
    Public property DisableComponentUpdate : boolean read FDisableComponentUpdate write FDisableComponentUpdate;
    Public property AllowInsecureLocalhost : boolean read FAllowInsecureLocalhost write FAllowInsecureLocalhost;
    Public property KioskPrinting : boolean read FKioskPrinting write SetKioskPrinting;
    Public property TreatInsecureOriginAsSecure : ustring read FTreatInsecureOriginAsSecure write FTreatInsecureOriginAsSecure;
    Public property NetLogEnabled : boolean read FNetLogEnabled write FNetLogEnabled;
    Public property NetLogFile : ustring read FNetLogFile write FNetLogFile;
    Public property NetLogCaptureMode : TCefNetLogCaptureMode read FNetLogCaptureMode write FNetLogCaptureMode;
    Public property RemoteAllowOrigins : ustring read FRemoteAllowOrigins write FRemoteAllowOrigins;
    Public property AutoAcceptCamAndMicCapture : boolean read FAutoAcceptCamAndMicCapture write FAutoAcceptCamAndMicCapture;
    Public property UIColorMode : TCefUIColorMode read FUIColorMode write FUIColorMode;
    Public property DisableHangMonitor : boolean read FDisableHangMonitor write FDisableHangMonitor;
    Public property HideCrashRestoreBubble : boolean read FHideCrashRestoreBubble write FHideCrashRestoreBubble;
    Publicproperty TLS13HybridizedKyberSupport : TCefState read FPostQuantumKyber write FPostQuantumKyber;
    Public property IgnoreCertificateErrors : Boolean read FIgnoreCertificateErrors write FIgnoreCertificateErrors;
    - +
    ProtectedFChromeRuntime: boolean;FMultiThreadedMessageLoop: boolean;

    @@ -1881,14 +1881,6 @@ Only used in macOS

    - - - -
    ProtectedFMultiThreadedMessageLoop: boolean;
    -

    This item has no description.

    - - -
    Protected FExternalMessagePump: boolean;
    @@ -1937,14 +1929,6 @@ Only used in macOS

    - - - -
    ProtectedFPersistUserPreferences: boolean;
    -

    This item has no description.

    - - - + + + + + + + + @@ -84,6 +92,14 @@ + + + + + + + + @@ -284,299 +300,291 @@ - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + @@ -928,133 +936,127 @@ + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - + @@ -1387,6 +1389,12 @@ + + + + + + @@ -1543,293 +1551,299 @@ + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + @@ -2163,6 +2177,13 @@
    Protected FUserAgent: ustring;
    @@ -2017,14 +2001,6 @@ Only used in macOS

    - - - -
    ProtectedFPackLoadingDisabled: boolean;
    -

    This item has no description.

    - - -
    Protected FRemoteDebuggingPort: integer;
    @@ -2607,6 +2583,14 @@ Only used in macOS

    + + + +
    ProtectedFPostQuantumKyber: TCefState;
    +

    This item has no description.

    + + + - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + @@ -247,46 +227,6 @@
    Protected FWindowsSandboxInfo: pointer;
    @@ -3336,6 +3320,14 @@ ICefLoadHandler

    + + + +
    Protectedfunction Load_cef_dump_without_crashing_internal_h: boolean;
    +

    This item has no description.

    + + + - - - - - - - - @@ -783,22 +775,6 @@
    Protected function Load_cef_file_util_capi_h: boolean;
    @@ -3512,6 +3504,14 @@ ICefLoadHandler

    + + + +
    Protectedfunction Load_cef_task_manager_capi_h: boolean;
    +

    This item has no description.

    + + +
    Protected function Load_cef_thread_capi_h: boolean;
    @@ -4229,6 +4229,36 @@ ICefLoadHandler

    Removes a component ID from the valid ID list when a component is destroyed.

    + + + + + + +
    Publicfunction DumpWithoutCrashing(mseconds_between_dumps: int64; const function_name, file_name: ustring; line_number: integer): boolean;
    +

    + DumpWithoutCrashing allows for generating crash dumps with a throttling mechanism, preventing frequent dumps from being generated in a short period of time from the same location. The |function_name|, |file_name|, and |line_number| determine the location of the dump. The |mseconds_between_dumps| is an interval between consecutive dumps in milliseconds from the same location.

    +

    + + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/base/cef_dump_without_crashing.h">CEF source file: /include/base/cef_dump_without_crashing.h (CefDumpWithoutCrashing))

    +
    Returns
    +

    Returns true if the dump was successfully generated, false otherwise

    + + + + + + +
    Publicfunction DumpWithoutCrashingUnthrottled: boolean;
    +

    + DumpWithoutCrashingUnthrottled allows for immediate crash dumping without any throttling constraints.

    +

    + + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/base/cef_dump_without_crashing.h">CEF source file: /include/base/cef_dump_without_crashing.h (CefDumpWithoutCrashingUnthrottled))

    +
    Returns
    +

    Returns true if the dump was successfully generated, false otherwise

    Properties

    @@ -4273,16 +4303,6 @@ ICefLoadHandler

    - - - -
    Publicproperty ChromeRuntime : boolean read FChromeRuntime write FChromeRuntime;
    -

    - Set to true (1) to enable use of the Chrome runtime in CEF. This feature is considered experimental and is not recommended for most users at this time. See issue #2969 for details.

    -
    - - -
    Public property MultiThreadedMessageLoop : boolean read FMultiThreadedMessageLoop write FMultiThreadedMessageLoop;
    @@ -4327,7 +4347,7 @@ ICefLoadHandler

    - The directory where data for the global browser cache will be stored on disk. If this value is non-empty then it must be an absolute path that is either equal to or a child directory of TCefSettings.root_cache_path. If this value is empty then browsers will be created in "incognito mode" where in-memory caches are used for storage and no profile-specific data is persisted to disk (installation-specific data will still be persisted in root_cache_path). HTML5 databases such as localStorage will only persist across sessions if a cache path is specified. Can be overridden for individual ICefRequestContext instances via the ICefRequestContextSettings.cache_path value. When using the Chrome runtime any child directory value will be ignored and the "default" profile (also a child directory) will be used instead.

    + The directory where data for the global browser cache will be stored on disk. If this value is non-empty then it must be an absolute path that is either equal to or a child directory of CefSettings.root_cache_path. If this value is empty then browsers will be created in "incognito mode" where in-memory caches are used for storage and no profile-specific data is persisted to disk (installation-specific data will still be persisted in root_cache_path). HTML5 databases such as localStorage will only persist across sessions if a cache path is specified. Can be overridden for individual CefRequestContext instances via the TCefRequestContextSettings.cache_path value. Any child directory value will be ignored and the "default" profile (also a child directory) will be used instead.

    @@ -4361,16 +4381,6 @@ ICefLoadHandler

    - - - -
    Publicproperty PersistUserPreferences : Boolean read FPersistUserPreferences write FPersistUserPreferences;
    -

    - To persist user preferences as a JSON file in the cache path directory set this value to true (1). A |cache_path| value must also be specified to enable this feature. Also configurable using the "persist-user-preferences" command-line switch. Can be overridden for individual CefRequestContext instances via the TCefRequestContextSettings.persist_user_preferences value.

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -1567,72 +1535,6 @@ ICefDevToolsMessageObserver

    Public property UserAgent : ustring read FUserAgent write FUserAgent;
    @@ -4461,16 +4471,6 @@ ICefLoadHandler

    - - - -
    Publicproperty PackLoadingDisabled : Boolean read FPackLoadingDisabled write FPackLoadingDisabled;
    -

    - Set to true (1) to disable loading of pack files for resources and locales. A resource bundle handler must be provided for the browser and render processes via ICefApp.GetResourceBundleHandler() if loading of pack files is disabled. Also configurable using the "disable-pack-loading" command- line switch.

    -
    - - -
    Public property RemoteDebuggingPort : Integer read FRemoteDebuggingPort write FRemoteDebuggingPort;
    @@ -4537,7 +4537,7 @@ ICefLoadHandler

    -

    Specify an ID to enable Chrome policy management via Platform and OS-user policies. On Windows, this is a registry key like "SOFTWARE\\Policies\\Google\\Chrome". On MacOS, this is a bundle ID like "com.google.Chrome". On Linux, this is an absolute directory path like "/etc/opt/chrome/policies". Only supported with the Chrome runtime. See https://support.google.com/chrome/a/answer/9037717 for details. +

    Specify an ID to enable Chrome policy management via Platform and OS-user policies. On Windows, this is a registry key like "SOFTWARE\\Policies\\Google\\Chrome". On MacOS, this is a bundle ID like "com.google.Chrome". On Linux, this is an absolute directory path like "/etc/opt/chrome/policies". Only supported with Chrome style. See https://support.google.com/chrome/a/answer/9037717 for details.

    Chrome Browser Cloud Management integration, when enabled via the "enable-chrome-browser-cloud-management" command-line flag, will also use the specified ID. See https://support.google.com/chrome/a/answer/9116814 for details. @@ -4551,7 +4551,7 @@ ICefLoadHandler

    - Specify an ID for an ICON resource that can be loaded from the main executable and used when creating default Chrome windows such as DevTools and Task Manager. If unspecified the default Chromium ICON (IDR_MAINFRAME [101]) will be loaded from libcef.dll. Only supported with the Chrome runtime on Windows.

    + Specify an ID for an ICON resource that can be loaded from the main executable and used when creating default Chrome windows such as DevTools and Task Manager. If unspecified the default Chromium ICON (IDR_MAINFRAME [101]) will be loaded from libcef.dll. Only supported with Chrome style on Windows.

    @@ -4867,7 +4867,7 @@ ICefLoadHandler

    - Delegate all login requests to the client GetAuthCredentials callback when using the Chrome runtime.

    + Delegate all login requests to the client GetAuthCredentials callback.

    @@ -5479,6 +5479,16 @@ ICefLoadHandler

    + + + +
    Publicproperty TLS13HybridizedKyberSupport : TCefState read FPostQuantumKyber write FPostQuantumKyber;
    +

    + This option enables a combination of X25519 and Kyber in TLS 1.3.

    +
    + + +
    Public property IgnoreCertificateErrors : Boolean read FIgnoreCertificateErrors write FIgnoreCertificateErrors;
    @@ -5915,13 +5925,17 @@ ICefLoadHandler

    - Provides an opportunity to register custom preferences prior to global and request context initialization. -

    If |type| is CEF_PREFERENCES_TYPE_GLOBAL the registered preferences can be accessed via ICefPreferenceManager.GetGlobalPreferences after OnContextInitialized is called. Global preferences are registered a single time at application startup. See related TCefSettings.cache_path and TCefSettings.persist_user_preferences configuration. -

    If |type| is CEF_PREFERENCES_TYPE_REQUEST_CONTEXT the preferences can be accessed via the ICefRequestContext after ICefRequestContextHandler.OnRequestContextInitialized is called. Request context preferences are registered each time a new ICefRequestContext is created. It is intended but not required that all request contexts have the same registered preferences. See related TCefRequestContextSettings.cache_path and TCefRequestContextSettings.persist_user_preferences configuration. +

    Provides an opportunity to register custom preferences prior to global and request context initialization. -

    Do not keep a reference to the |registrar| object. This function is called on the browser process UI thread.

    +

    If |type| is CEF_PREFERENCES_TYPE_GLOBAL the registered preferences can be accessed via ICefPreferenceManager.GetGlobalPreferences after OnContextInitialized is called. Global preferences are registered a single time at application startup. See related TCefSettings.cache_path configuration. + +

    If |type| is CEF_PREFERENCES_TYPE_REQUEST_CONTEXT the preferences can be accessed via the ICefRequestContext after ICefRequestContextHandler.OnRequestContextInitialized is called. Request context preferences are registered each time a new ICefRequestContext is created. It is intended but not required that all request contexts have the same registered preferences. See related TCefRequestContextSettings.cache_path configuration. + +

    Do not keep a reference to the |registrar| object. This function is called on the browser process UI thread. + +

    @@ -5999,7 +6013,7 @@ ICefLoadHandler

    - Return the default client for use with a newly created browser window (TCefBrowser object). If null is returned the TCefBrowser will be unmanaged (no callbacks will be executed for that TCefBrowser) and application shutdown will be blocked until the browser window is closed manually. This function is currently only used with the Chrome runtime when creating new browser windows via Chrome UI.

    + Return the default client for use with a newly created browser window (TCefBrowser object). If null is returned the TCefBrowser will be unmanaged (no callbacks will be executed for that TCefBrowser) and application shutdown will be blocked until the browser window is closed manually. This function is currently only used with Chrome style when creating new browser windows via Chrome UI.

    @@ -6013,7 +6027,7 @@ ICefLoadHandler

    - Return the default handler for use with a new user or incognito profile (TCefRequestContext object). If null is returned the TCefRequestContext will be unmanaged (no callbacks will be executed for that TCefRequestContext). This function is currently only used with the Chrome runtime when creating new browser windows via Chrome UI.

    + Return the default handler for use with a new user or incognito profile (TCefRequestContext object). If null is returned the TCefRequestContext will be unmanaged (no callbacks will be executed for that TCefRequestContext). This function is currently only used with Chrome style when creating new browser windows via Chrome UI.

    diff --git a/docs/html/uCEFApplicationCore.html b/docs/html/uCEFApplicationCore.html index bfc69f04..96cd133a 100644 --- a/docs/html/uCEFApplicationCore.html +++ b/docs/html/uCEFApplicationCore.html @@ -37,13 +37,13 @@

    Constants

    - + - + - + @@ -55,10 +55,10 @@ - + - + @@ -94,21 +94,21 @@

    Constants

    CEF_SUPPORTED_VERSION_MAJOR = 127;CEF_SUPPORTED_VERSION_MAJOR = 128;
    CEF_SUPPORTED_VERSION_MINOR = 3;CEF_SUPPORTED_VERSION_MINOR = 4;
    CEF_SUPPORTED_VERSION_RELEASE = 1;CEF_SUPPORTED_VERSION_RELEASE = 8;
    CEF_SUPPORTED_VERSION_BUILD = 0;CEF_CHROMEELF_VERSION_MINOR = 0;
    CEF_CHROMEELF_VERSION_RELEASE = 6533;CEF_CHROMEELF_VERSION_RELEASE = 6613;
    CEF_CHROMEELF_VERSION_BUILD = 100;CEF_CHROMEELF_VERSION_BUILD = 114;
    LIBCEF_DLL = 'libcef.dll';
    - +
    CEF_SUPPORTED_VERSION_MAJOR = 127;CEF_SUPPORTED_VERSION_MAJOR = 128;

    This item has no description.

    - +
    CEF_SUPPORTED_VERSION_MINOR = 3;CEF_SUPPORTED_VERSION_MINOR = 4;

    This item has no description.

    - + @@ -136,14 +136,14 @@
    CEF_SUPPORTED_VERSION_RELEASE = 1;CEF_SUPPORTED_VERSION_RELEASE = 8;

    This item has no description.

    - +
    CEF_CHROMEELF_VERSION_RELEASE = 6533;CEF_CHROMEELF_VERSION_RELEASE = 6613;

    This item has no description.

    - + diff --git a/docs/html/uCEFBrowser.TCefBrowserHostRef.html b/docs/html/uCEFBrowser.TCefBrowserHostRef.html index 9316da99..690207d2 100644 --- a/docs/html/uCEFBrowser.TCefBrowserHostRef.html +++ b/docs/html/uCEFBrowser.TCefBrowserHostRef.html @@ -274,14 +274,6 @@ - - - - - - - - @@ -436,7 +428,7 @@
    CEF_CHROMEELF_VERSION_BUILD = 100;CEF_CHROMEELF_VERSION_BUILD = 114;

    This item has no description.

    Protectedfunction GetExtension: ICefExtension;
    Protectedfunction IsBackgroundHost: boolean;
    Protected procedure SetAudioMuted(mute: boolean);

    This item has no description. Showing description inherited from ICefBrowserHost.GetDefaultZoomLevel.

    - Get the default zoom level. This value will be 0.0 by default but can be configured with the Chrome runtime. This function can only be called on the UI thread.

    + Get the default zoom level. This value will be 0.0 by default but can be configured. This function can only be called on the UI thread.

    @@ -956,30 +948,6 @@
    - - - -
    Protectedfunction GetExtension: ICefExtension;
    -

    This item has no description. Showing description inherited from ICefBrowserHost.GetExtension.

    - Returns the extension hosted in this browser or NULL if no extension is hosted. See ICefRequestContext.LoadExtension for details. - -

    WARNING: This API is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Protectedfunction IsBackgroundHost: boolean;
    -

    This item has no description. Showing description inherited from ICefBrowserHost.IsBackgroundHost.

    - Returns true (1) if this browser is hosting an extension background script. Background hosts do not have a window and are not displayable. See ICefRequestContext.LoadExtension for details. - -

    WARNING: This API is deprecated and will be removed in ~M127.

    -
    - - -
    Protected procedure SetAudioMuted(mute: boolean);
    @@ -1014,7 +982,7 @@

    This item has no description. Showing description inherited from ICefBrowserHost.ExitFullscreen.

    - Requests the renderer to exit browser fullscreen. In most cases exiting window fullscreen should also exit browser fullscreen. With the Alloy runtime this function should be called in response to a user action such as clicking the green traffic light button on MacOS (ICefWindowDelegate.OnWindowFullscreenTransition callback) or pressing the "ESC" key (ICefKeyboardHandler.OnPreKeyEvent callback). With the Chrome runtime these standard exit actions are handled internally but new/additional user actions can use this function. Set |will_cause_resize| to true (1) if exiting browser fullscreen will cause a view resize.

    + Requests the renderer to exit browser fullscreen. In most cases exiting window fullscreen should also exit browser fullscreen. With Alloy style this function should be called in response to a user action such as clicking the green traffic light button on MacOS (ICefWindowDelegate.OnWindowFullscreenTransition callback) or pressing the "ESC" key (ICefKeyboardHandler.OnPreKeyEvent callback). With Chrome style these standard exit actions are handled internally but new/additional user actions can use this function. Set |will_cause_resize| to true (1) if exiting browser fullscreen will cause a view resize.

    @@ -1024,7 +992,7 @@

    This item has no description. Showing description inherited from ICefBrowserHost.CanExecuteChromeCommand.

    - Returns true (1) if a Chrome command is supported and enabled. Values for |command_id| can be found in the cef_command_ids.h file. This function can only be called on the UI thread. Only used with the Chrome runtime. + Returns true (1) if a Chrome command is supported and enabled. Values for |command_id| can be found in the cef_command_ids.h file. This function can only be called on the UI thread. Only used with Chrome style.

    See the IDC_* constants in uCEFConstants.pas for all the |command_id| values. @@ -1038,7 +1006,7 @@

    This item has no description. Showing description inherited from ICefBrowserHost.ExecuteChromeCommand.

    - Execute a Chrome command. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Only used with the Chrome runtime. + Execute a Chrome command. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Only used with Chrome style.

    See the IDC_* constants in uCEFConstants.pas for all the |command_id| values. diff --git a/docs/html/uCEFBrowserProcessHandler.TCefBrowserProcessHandlerOwn.html b/docs/html/uCEFBrowserProcessHandler.TCefBrowserProcessHandlerOwn.html index 8cfa497b..683e4024 100644 --- a/docs/html/uCEFBrowserProcessHandler.TCefBrowserProcessHandlerOwn.html +++ b/docs/html/uCEFBrowserProcessHandler.TCefBrowserProcessHandlerOwn.html @@ -74,9 +74,9 @@

    Provides an opportunity to register custom preferences prior to global and request context initialization. -

    If |type| is CEF_PREFERENCES_TYPE_GLOBAL the registered preferences can be accessed via ICefPreferenceManager.GetGlobalPreferences after OnContextInitialized is called. Global preferences are registered a single time at application startup. See related TCefSettings.cache_path and TCefSettings.persist_user_preferences configuration. +

    If |type| is CEF_PREFERENCES_TYPE_GLOBAL the registered preferences can be accessed via ICefPreferenceManager.GetGlobalPreferences after OnContextInitialized is called. Global preferences are registered a single time at application startup. See related TCefSettings.cache_path configuration. -

    If |type| is CEF_PREFERENCES_TYPE_REQUEST_CONTEXT the preferences can be accessed via the ICefRequestContext after ICefRequestContextHandler.OnRequestContextInitialized is called. Request context preferences are registered each time a new ICefRequestContext is created. It is intended but not required that all request contexts have the same registered preferences. See related TCefRequestContextSettings.cache_path and TCefRequestContextSettings.persist_user_preferences configuration. +

    If |type| is CEF_PREFERENCES_TYPE_REQUEST_CONTEXT the preferences can be accessed via the ICefRequestContext after ICefRequestContextHandler.OnRequestContextInitialized is called. Request context preferences are registered each time a new ICefRequestContext is created. It is intended but not required that all request contexts have the same registered preferences. See related TCefRequestContextSettings.cache_path configuration.

    Do not keep a reference to the |registrar| object. This function is called on the browser process UI thread. @@ -138,7 +138,7 @@

    This item has no description. Showing description inherited from ICefBrowserProcessHandler.GetDefaultClient.

    - Return the default client for use with a newly created browser window (TCefBrowser object). If null is returned the TCefBrowser will be unmanaged (no callbacks will be executed for that TCefBrowser) and application shutdown will be blocked until the browser window is closed manually. This function is currently only used with the Chrome runtime when creating new browser windows via Chrome UI.

    + Return the default client for use with a newly created browser window (TCefBrowser object). If null is returned the TCefBrowser will be unmanaged (no callbacks will be executed for that TCefBrowser) and application shutdown will be blocked until the browser window is closed manually. This function is currently only used with Chrome style when creating new browser windows via Chrome UI.

    @@ -148,7 +148,7 @@

    This item has no description. Showing description inherited from ICefBrowserProcessHandler.GetDefaultRequestContextHandler.

    - Return the default handler for use with a new user or incognito profile (TCefRequestContext object). If null is returned the TCefRequestContext will be unmanaged (no callbacks will be executed for that TCefRequestContext). This function is currently only used with the Chrome runtime when creating new browser windows via Chrome UI.

    + Return the default handler for use with a new user or incognito profile (TCefRequestContext object). If null is returned the TCefRequestContext will be unmanaged (no callbacks will be executed for that TCefRequestContext). This function is currently only used with Chrome style when creating new browser windows via Chrome UI.

    diff --git a/docs/html/uCEFBrowserProcessHandler.TCefCustomBrowserProcessHandler.html b/docs/html/uCEFBrowserProcessHandler.TCefCustomBrowserProcessHandler.html index 918bf7dc..4eb2e0d7 100644 --- a/docs/html/uCEFBrowserProcessHandler.TCefCustomBrowserProcessHandler.html +++ b/docs/html/uCEFBrowserProcessHandler.TCefCustomBrowserProcessHandler.html @@ -95,9 +95,9 @@

    Provides an opportunity to register custom preferences prior to global and request context initialization. -

    If |type| is CEF_PREFERENCES_TYPE_GLOBAL the registered preferences can be accessed via ICefPreferenceManager.GetGlobalPreferences after OnContextInitialized is called. Global preferences are registered a single time at application startup. See related TCefSettings.cache_path and TCefSettings.persist_user_preferences configuration. +

    If |type| is CEF_PREFERENCES_TYPE_GLOBAL the registered preferences can be accessed via ICefPreferenceManager.GetGlobalPreferences after OnContextInitialized is called. Global preferences are registered a single time at application startup. See related TCefSettings.cache_path configuration. -

    If |type| is CEF_PREFERENCES_TYPE_REQUEST_CONTEXT the preferences can be accessed via the ICefRequestContext after ICefRequestContextHandler.OnRequestContextInitialized is called. Request context preferences are registered each time a new ICefRequestContext is created. It is intended but not required that all request contexts have the same registered preferences. See related TCefRequestContextSettings.cache_path and TCefRequestContextSettings.persist_user_preferences configuration. +

    If |type| is CEF_PREFERENCES_TYPE_REQUEST_CONTEXT the preferences can be accessed via the ICefRequestContext after ICefRequestContextHandler.OnRequestContextInitialized is called. Request context preferences are registered each time a new ICefRequestContext is created. It is intended but not required that all request contexts have the same registered preferences. See related TCefRequestContextSettings.cache_path configuration.

    Do not keep a reference to the |registrar| object. This function is called on the browser process UI thread. @@ -159,7 +159,7 @@

    This item has no description. Showing description inherited from ICefBrowserProcessHandler.GetDefaultClient.

    - Return the default client for use with a newly created browser window (TCefBrowser object). If null is returned the TCefBrowser will be unmanaged (no callbacks will be executed for that TCefBrowser) and application shutdown will be blocked until the browser window is closed manually. This function is currently only used with the Chrome runtime when creating new browser windows via Chrome UI.

    + Return the default client for use with a newly created browser window (TCefBrowser object). If null is returned the TCefBrowser will be unmanaged (no callbacks will be executed for that TCefBrowser) and application shutdown will be blocked until the browser window is closed manually. This function is currently only used with Chrome style when creating new browser windows via Chrome UI.

    @@ -169,7 +169,7 @@

    This item has no description. Showing description inherited from ICefBrowserProcessHandler.GetDefaultRequestContextHandler.

    - Return the default handler for use with a new user or incognito profile (TCefRequestContext object). If null is returned the TCefRequestContext will be unmanaged (no callbacks will be executed for that TCefRequestContext). This function is currently only used with the Chrome runtime when creating new browser windows via Chrome UI.

    + Return the default handler for use with a new user or incognito profile (TCefRequestContext object). If null is returned the TCefRequestContext will be unmanaged (no callbacks will be executed for that TCefRequestContext). This function is currently only used with Chrome style when creating new browser windows via Chrome UI.

    diff --git a/docs/html/uCEFBrowserView.TCefBrowserViewRef.html b/docs/html/uCEFBrowserView.TCefBrowserViewRef.html index 26fed41b..b4fd0b04 100644 --- a/docs/html/uCEFBrowserView.TCefBrowserViewRef.html +++ b/docs/html/uCEFBrowserView.TCefBrowserViewRef.html @@ -79,7 +79,7 @@

    - Returns the Chrome toolbar associated with this BrowserView. Only supported when using the Chrome runtime. The ICefBrowserViewDelegate.GetChromeToolbarType function must return a value other than CEF_CTT_NONE and the toolbar will not be available until after this BrowserView is added to a ICefWindow and ICefViewDelegate.OnWindowChanged() has been called.

    + Returns the Chrome toolbar associated with this BrowserView. Only supported when using Chrome style. The ICefBrowserViewDelegate.GetChromeToolbarType function must return a value other than CEF_CTT_NONE and the toolbar will not be available until after this BrowserView is added to a ICefWindow and ICefViewDelegate.OnWindowChanged() has been called.

    @@ -89,7 +89,7 @@

    - Sets whether accelerators registered with ICefWindow.SetAccelerator are triggered before or after the event is sent to the ICefBrowser. If |prefer_accelerators| is true (1) then the matching accelerator will be triggered immediately and the event will not be sent to the ICefBrowser. If |prefer_accelerators| is false (0) then the matching accelerator will only be triggered if the event is not handled by web content or by ICefKeyboardHandler. The default value is false (0).

    + Sets whether normal priority accelerators are first forwarded to the web content (`keydown` event handler) or ICefKeyboardHandler. Normal priority accelerators can be registered via ICefWindow.SetAccelerator (with |high_priority|=false) or internally for standard accelerators supported by Chrome style. If |prefer_accelerators| is true then the matching accelerator will be triggered immediately (calling ICefWindowDelegate.OnAccelerator or ICefCommandHandler.OnChromeCommand respectively) and the event will not be forwarded to the web content or ICefKeyboardHandler first. If |prefer_accelerators| is false then the matching accelerator will only be triggered if the event is not handled by web content (`keydown` event handler that calls `event.preventDefault()`) or by ICefKeyboardHandler. The default value is false.

    diff --git a/docs/html/uCEFBrowserViewComponent.TCEFBrowserViewComponent.html b/docs/html/uCEFBrowserViewComponent.TCEFBrowserViewComponent.html index 9e54e73d..50e303b3 100644 --- a/docs/html/uCEFBrowserViewComponent.TCEFBrowserViewComponent.html +++ b/docs/html/uCEFBrowserViewComponent.TCEFBrowserViewComponent.html @@ -19,7 +19,7 @@ type TCEFBrowserViewComponent = class(TCEFViewComponent, ICefBrowserViewDelegateEvents)

    Description

    - Component hosting a ICefBrowserView instance. Used in Chrome runtime mode only.

    + Component hosting a ICefBrowserView instance.

    Hierarchy

    • TObject
    • TPersistent
    • @@ -97,49 +97,53 @@
    - + + + + + - + - + - + - + - + - + - + - + - + - + @@ -156,37 +160,41 @@ - + + + + + - + - + - + - + - + - + - + @@ -327,6 +335,14 @@ ICefBrowserViewDelegateEvents

    Protectedfunction GetRuntimeStyle: TCefRuntimeStyle;function GetChromeToolbar: ICefView;
    Protectedfunction GetRuntimeStyle: TCefRuntimeStyle;
    Protected procedure doOnBrowserCreated(const browser_view: ICefBrowserView; const browser: ICefBrowser);
    Protected procedure doOnBrowserDestroyed(const browser_view: ICefBrowserView; const browser: ICefBrowser);
    Protected procedure doOnGetDelegateForPopupBrowserView(const browser_view: ICefBrowserView; const settings: TCefBrowserSettings; const client: ICefClient; is_devtools: boolean; var aResult : ICefBrowserViewDelegate);
    Protected procedure doOnPopupBrowserViewCreated(const browser_view, popup_browser_view: ICefBrowserView; is_devtools: boolean; var aResult : boolean);
    Protected procedure doOnGetChromeToolbarType(const browser_view: ICefBrowserView; var aChromeToolbarType: TCefChromeToolbarType);
    Protected procedure doOnUseFramelessWindowForPictureInPicture(const browser_view: ICefBrowserView; var aResult: boolean);
    Protected procedure doOnGestureCommand(const browser_view: ICefBrowserView; gesture_command: TCefGestureCommand; var aResult : boolean);
    Protected procedure doOnGetBrowserRuntimeStyle(var aResult : TCefRuntimeStyle);
    Public function CreateBrowserView(const client: ICefClient; const url: ustring; const settings: TCefBrowserSettings; const extra_info: ICefDictionaryValue; const request_context: ICefRequestContext): boolean;
    Public function GetForBrowser(const browser: ICefBrowser): boolean;
    Public procedure SetPreferAccelerators(prefer_accelerators: boolean);
    Publicproperty RuntimeStyle : TCefRuntimeStyle read GetRuntimeStyle;property ChromeToolbar : ICefView read GetChromeToolbar;
    Publicproperty RuntimeStyle : TCefRuntimeStyle read GetRuntimeStyle;
    Published property OnBrowserCreated : TOnBrowserCreatedEvent read FOnBrowserCreated write FOnBrowserCreated;
    Published property OnBrowserDestroyed : TOnBrowserDestroyedEvent read FOnBrowserDestroyed write FOnBrowserDestroyed;
    Published property OnGetDelegateForPopupBrowserView : TOnGetDelegateForPopupBrowserViewEvent read FOnGetDelegateForPopupBrowserView write FOnGetDelegateForPopupBrowserView;
    Published property OnPopupBrowserViewCreated : TOnPopupBrowserViewCreatedEvent read FOnPopupBrowserViewCreated write FOnPopupBrowserViewCreated;
    Published property OnGetChromeToolbarType : TOnGetChromeToolbarTypeEvent read FOnGetChromeToolbarType write FOnGetChromeToolbarType;
    Published property OnUseFramelessWindowForPictureInPicture : TOnUseFramelessWindowForPictureInPicture read FOnUseFramelessWindowForPictureInPicture write FOnUseFramelessWindowForPictureInPicture;
    Published property OnGestureCommand : TOnGestureCommandEvent read FOnGestureCommand write FOnGestureCommand;
    Published property OnGetBrowserRuntimeStyle : TOnGetBrowserRuntimeStyleEvent read FOnGetBrowserRuntimeStyle write FOnGetBrowserRuntimeStyle;
    + + + +
    Protectedfunction GetChromeToolbar: ICefView;
    +

    This item has no description.

    + + +
    Protected function GetRuntimeStyle: TCefRuntimeStyle;
    @@ -425,7 +441,7 @@ ICefBrowserViewDelegateEvents

    - Sets whether accelerators registered with ICefWindow.SetAccelerator are triggered before or after the event is sent to the ICefBrowser. If |prefer_accelerators| is true (1) then the matching accelerator will be triggered immediately and the event will not be sent to the ICefBrowser. If |prefer_accelerators| is false (0) then the matching accelerator will only be triggered if the event is not handled by web content or by ICefKeyboardHandler. The default value is false (0).

    + Sets whether normal priority accelerators are first forwarded to the web content (`keydown` event handler) or ICefKeyboardHandler. Normal priority accelerators can be registered via ICefWindow.SetAccelerator (with |high_priority|=false) or internally for standard accelerators supported by Chrome style. If |prefer_accelerators| is true then the matching accelerator will be triggered immediately (calling ICefWindowDelegate.OnAccelerator or ICefCommandHandler.OnChromeCommand respectively) and the event will not be forwarded to the web content or ICefKeyboardHandler first. If |prefer_accelerators| is false then the matching accelerator will only be triggered if the event is not handled by web content (`keydown` event handler that calls `event.preventDefault()`) or by ICefKeyboardHandler. The default value is false.

    Properties

    @@ -452,6 +468,16 @@ ICefBrowserViewDelegateEvents

    + + + +
    Publicproperty ChromeToolbar : ICefView read GetChromeToolbar;
    +

    + Returns the Chrome toolbar associated with this BrowserView. Only supported when using Chrome style. The ICefBrowserViewDelegate.GetChromeToolbarType function must return a value other than CEF_CTT_NONE and the toolbar will not be available until after this BrowserView is added to a ICefWindow and ICefViewDelegate.OnWindowChanged() has been called.

    +
    + + +
    Public property RuntimeStyle : TCefRuntimeStyle read GetRuntimeStyle;
    @@ -526,7 +552,7 @@ ICefBrowserViewDelegateEvents

    - Called when |browser_view| receives a gesture command. Return true (1) to handle (or disable) a |gesture_command| or false (0) to propagate the gesture to the browser for default handling. With the Chrome runtime these commands can also be handled via cef_command_handler_t::OnChromeCommand.

    + Called when |browser_view| receives a gesture command. Return true (1) to handle (or disable) a |gesture_command| or false (0) to propagate the gesture to the browser for default handling. With Chrome style these commands can also be handled via ICefCommandHandler.OnChromeCommand.

    diff --git a/docs/html/uCEFBrowserViewComponent.html b/docs/html/uCEFBrowserViewComponent.html index 7fccae62..ac1df373 100644 --- a/docs/html/uCEFBrowserViewComponent.html +++ b/docs/html/uCEFBrowserViewComponent.html @@ -21,7 +21,7 @@ - +
    Class TCEFBrowserViewComponent Component hosting a ICefBrowserView instance. Used in Chrome runtime mode only. Component hosting a ICefBrowserView instance.

    Functions and Procedures

    diff --git a/docs/html/uCEFBrowserViewDelegate.TCefBrowserViewDelegateOwn.html b/docs/html/uCEFBrowserViewDelegate.TCefBrowserViewDelegateOwn.html index bb577993..917bdab7 100644 --- a/docs/html/uCEFBrowserViewDelegate.TCefBrowserViewDelegateOwn.html +++ b/docs/html/uCEFBrowserViewDelegate.TCefBrowserViewDelegateOwn.html @@ -141,7 +141,7 @@

    - Called when |browser_view| receives a gesture command. Return true (1) to handle (or disable) a |gesture_command| or false (0) to propagate the gesture to the browser for default handling. With the Chrome runtime these commands can also be handled via cef_command_handler_t::OnChromeCommand.

    + Called when |browser_view| receives a gesture command. Return true (1) to handle (or disable) a |gesture_command| or false (0) to propagate the gesture to the browser for default handling. With Chrome style these commands can also be handled via ICefCommandHandler.OnChromeCommand.

    diff --git a/docs/html/uCEFBrowserViewDelegate.TCefBrowserViewDelegateRef.html b/docs/html/uCEFBrowserViewDelegate.TCefBrowserViewDelegateRef.html index d7f56d76..e76c4184 100644 --- a/docs/html/uCEFBrowserViewDelegate.TCefBrowserViewDelegateRef.html +++ b/docs/html/uCEFBrowserViewDelegate.TCefBrowserViewDelegateRef.html @@ -131,7 +131,7 @@

    This item has no description. Showing description inherited from ICefBrowserViewDelegate.OnGestureCommand.

    - Called when |browser_view| receives a gesture command. Return true (1) to handle (or disable) a |gesture_command| or false (0) to propagate the gesture to the browser for default handling. With the Chrome runtime these commands can also be handled via cef_command_handler_t::OnChromeCommand.

    + Called when |browser_view| receives a gesture command. Return true (1) to handle (or disable) a |gesture_command| or false (0) to propagate the gesture to the browser for default handling. With Chrome style these commands can also be handled via ICefCommandHandler.OnChromeCommand.

    diff --git a/docs/html/uCEFBrowserViewDelegate.TCustomBrowserViewDelegate.html b/docs/html/uCEFBrowserViewDelegate.TCustomBrowserViewDelegate.html index 21bdff3b..bc82d205 100644 --- a/docs/html/uCEFBrowserViewDelegate.TCustomBrowserViewDelegate.html +++ b/docs/html/uCEFBrowserViewDelegate.TCustomBrowserViewDelegate.html @@ -323,7 +323,7 @@ ICefBrowserViewDelegate

    This item has no description. Showing description inherited from TCefBrowserViewDelegateOwn.OnGestureCommand.

    - Called when |browser_view| receives a gesture command. Return true (1) to handle (or disable) a |gesture_command| or false (0) to propagate the gesture to the browser for default handling. With the Chrome runtime these commands can also be handled via cef_command_handler_t::OnChromeCommand.

    + Called when |browser_view| receives a gesture command. Return true (1) to handle (or disable) a |gesture_command| or false (0) to propagate the gesture to the browser for default handling. With Chrome style these commands can also be handled via ICefCommandHandler.OnChromeCommand.

    diff --git a/docs/html/uCEFChromiumCore.TChromiumCore.html b/docs/html/uCEFChromiumCore.TChromiumCore.html index e91c1fab..a8b03c02 100644 --- a/docs/html/uCEFChromiumCore.TChromiumCore.html +++ b/docs/html/uCEFChromiumCore.TChromiumCore.html @@ -77,873 +77,837 @@ - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -1340,27 +1304,19 @@ - - - - - + - + - - - - - + @@ -1940,38 +1896,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -2240,556 +2164,532 @@ - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - @@ -2907,889 +2807,853 @@ - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + @@ -3895,14 +3759,6 @@
    ProtectedFExtensionHandler: ICefExtensionHandler;
    Protected FDefaultUrl: ustring;
    Protected FOptions: TChromiumOptions;
    Protected FFontOptions: TChromiumFontOptions;
    Protected FPDFPrintOptions: TPDFPrintOptions;
    Protected FDefaultEncoding: ustring;
    Protected FProxyType: integer;
    Protected FProxyScheme: TCefProxyScheme;
    Protected FProxyServer: ustring;
    Protected FProxyPort: integer;
    Protected FProxyUsername: ustring;
    Protected FProxyPassword: ustring;
    Protected FProxyScriptURL: ustring;
    Protected FProxyByPassList: ustring;
    Protected FMaxConnectionsPerProxy: integer;
    Protected FUpdatePreferences: boolean;
    Protected FCustomHeaderName: ustring;
    Protected FCustomHeaderValue: ustring;
    Protected FAddCustomHeader: boolean;
    Protected FDoNotTrack: boolean;
    Protected FSendReferrer: boolean;
    Protected FHyperlinkAuditing: boolean;
    Protected FAllowOutdatedPlugins: boolean;
    Protected FAlwaysAuthorizePlugins: boolean;
    Protected FAlwaysOpenPDFExternally: boolean;
    Protected FSpellChecking: boolean;
    Protected FSpellCheckerDicts: ustring;
    Protected FZoomStep: byte;
    Protected FZoomStepCS: TCriticalSection;
    Protected FPrefsFileName: string;
    Protected FIsOSR: boolean;
    Protected FSafeSearch: boolean;
    Protected FOffline: boolean;
    Protected FYouTubeRestrict: integer;
    Protected FPrintingEnabled: boolean;
    Protected FWindowInfo: TCEFWindowInfoWrapper;
    Protected FBrowserSettings: TCefBrowserSettings;
    Protected FDevWindowInfo: TCEFWindowInfoWrapper;
    Protected FDevBrowserSettings: TCefBrowserSettings;
    Protected FDragOperations: TCefDragOperations;
    Protected FDragDropManager: TCEFDragAndDropMgr;
    Protected FDropTargetWnd: HWND;
    Protected FDragAndDropInitialized: boolean;
    Protected FWebRTCIPHandlingPolicy: TCefWebRTCHandlingPolicy;
    Protected FWebRTCMultipleRoutes: TCefState;
    Protected FWebRTCNonProxiedUDP: TCefState;
    Protected FAcceptLanguageList: ustring;
    Protected FAcceptCookies: TCefCookiePref;
    Protected FBlock3rdPartyCookies: boolean;
    Protected FQuicAllowed: boolean;
    Protected FJavascriptEnabled: boolean;
    Protected FLoadImagesAutomatically: boolean;
    Protected FBatterySaverModeState: TCefBatterySaverModeState;
    Protected FHighEfficiencyModeState: TCefHighEfficiencyModeState;
    Protected FCanFocus: boolean;
    Protected FEnableFocusDelayMs: cardinal;
    Protected FComponentID: integer;
    Protected FDownloadBubble: TCefState;
    Protected FHTTPSUpgrade: TCefState;
    Protected FHSTSPolicyBypassList: ustring;
    Protected FOldBrowserCompWndPrc: TFNWndProc;
    Protected FOldWidgetCompWndPrc: TFNWndProc;
    Protected FOldRenderCompWndPrc: TFNWndProc;
    Protected FBrowserCompStub: Pointer;
    Protected FWidgetCompStub: Pointer;
    Protected FRenderCompStub: Pointer;
    Protected FBrowserCompHWND: THandle;
    Protected FWidgetCompHWND: THandle;
    Protected FRenderCompHWND: THandle;
    Protected FOnProcessMessageReceived: TOnProcessMessageReceived;
    Protected FOnLoadStart: TOnLoadStart;
    Protected FOnLoadEnd: TOnLoadEnd;
    Protected FOnLoadError: TOnLoadError;
    Protected FOnLoadingStateChange: TOnLoadingStateChange;
    Protected FOnTakeFocus: TOnTakeFocus;
    Protected FOnSetFocus: TOnSetFocus;
    Protected FOnGotFocus: TOnGotFocus;
    Protected FOnBeforeContextMenu: TOnBeforeContextMenu;
    Protected FOnRunContextMenu: TOnRunContextMenu;
    Protected FOnContextMenuCommand: TOnContextMenuCommand;
    Protected FOnContextMenuDismissed: TOnContextMenuDismissed;
    Protected FOnRunQuickMenu: TOnRunQuickMenuEvent;
    Protected FOnQuickMenuCommand: TOnQuickMenuCommandEvent;
    Protected FOnQuickMenuDismissed: TOnQuickMenuDismissedEvent;
    Protected FOnPreKeyEvent: TOnPreKeyEvent;
    Protected FOnKeyEvent: TOnKeyEvent;
    Protected FOnAddressChange: TOnAddressChange;
    Protected FOnTitleChange: TOnTitleChange;
    Protected FOnFavIconUrlChange: TOnFavIconUrlChange;
    Protected FOnFullScreenModeChange: TOnFullScreenModeChange;
    Protected FOnTooltip: TOnTooltip;
    Protected FOnStatusMessage: TOnStatusMessage;
    Protected FOnConsoleMessage: TOnConsoleMessage;
    Protected FOnAutoResize: TOnAutoResize;
    Protected FOnLoadingProgressChange: TOnLoadingProgressChange;
    Protected FOnCursorChange: TOnCursorChange;
    Protected FOnMediaAccessChange: TOnMediaAccessChange;
    Protected FOnCanDownload: TOnCanDownloadEvent;
    Protected FOnBeforeDownload: TOnBeforeDownload;
    Protected FOnDownloadUpdated: TOnDownloadUpdated;
    Protected FOnJsdialog: TOnJsdialog;
    Protected FOnBeforeUnloadDialog: TOnBeforeUnloadDialog;
    Protected FOnResetDialogState: TOnResetDialogState;
    Protected FOnDialogClosed: TOnDialogClosed;
    Protected FOnBeforePopup: TOnBeforePopup;
    Protected FOnBeforeDevToolsPopup: TOnBeforeDevToolsPopup;
    Protected FOnAfterCreated: TOnAfterCreated;
    Protected FOnBeforeClose: TOnBeforeClose;
    Protected FOnClose: TOnClose;
    Protected FOnBeforeBrowse: TOnBeforeBrowse;
    Protected FOnOpenUrlFromTab: TOnOpenUrlFromTab;
    Protected FOnGetAuthCredentials: TOnGetAuthCredentials;
    Protected FOnCertificateError: TOnCertificateError;
    Protected FOnSelectClientCertificate: TOnSelectClientCertificate;
    Protected FOnRenderViewReady: TOnRenderViewReady;
    Protected FOnRenderProcessUnresponsive: TOnRenderProcessUnresponsive;
    Protected FOnRenderProcessResponsive: TOnRenderProcessResponsive;
    Protected FOnRenderProcessTerminated: TOnRenderProcessTerminated;
    Protected FOnGetResourceRequestHandler_ReqHdlr: TOnGetResourceRequestHandler;
    Protected FOnDocumentAvailableInMainFrame: TOnDocumentAvailableInMainFrame;
    Protected FOnBeforeResourceLoad: TOnBeforeResourceLoad;
    Protected FOnGetResourceHandler: TOnGetResourceHandler;
    Protected FOnResourceRedirect: TOnResourceRedirect;
    Protected FOnResourceResponse: TOnResourceResponse;
    Protected FOnGetResourceResponseFilter: TOnGetResourceResponseFilter;
    Protected FOnResourceLoadComplete: TOnResourceLoadComplete;
    Protected FOnProtocolExecution: TOnProtocolExecution;
    Protected FOnCanSendCookie: TOnCanSendCookie;
    Protected FOnCanSaveCookie: TOnCanSaveCookie;
    Protected FOnFileDialog: TOnFileDialog;
    Protected FOnGetAccessibilityHandler: TOnGetAccessibilityHandler;
    Protected FOnGetRootScreenRect: TOnGetRootScreenRect;
    Protected FOnGetViewRect: TOnGetViewRect;
    Protected FOnGetScreenPoint: TOnGetScreenPoint;
    Protected FOnGetScreenInfo: TOnGetScreenInfo;
    Protected FOnPopupShow: TOnPopupShow;
    Protected FOnPopupSize: TOnPopupSize;
    Protected FOnPaint: TOnPaint;
    Protected FOnAcceleratedPaint: TOnAcceleratedPaint;
    Protected FOnGetTouchHandleSize: TOnGetTouchHandleSize;
    Protected FOnTouchHandleStateChanged: TOnTouchHandleStateChanged;
    Protected FOnStartDragging: TOnStartDragging;
    Protected FOnUpdateDragCursor: TOnUpdateDragCursor;
    Protected FOnScrollOffsetChanged: TOnScrollOffsetChanged;
    Protected FOnIMECompositionRangeChanged: TOnIMECompositionRangeChanged;
    Protected FOnTextSelectionChanged: TOnTextSelectionChanged;
    Protected FOnVirtualKeyboardRequested: TOnVirtualKeyboardRequested;
    Protected FOnDragEnter: TOnDragEnter;
    Protected FOnDraggableRegionsChanged: TOnDraggableRegionsChanged;
    Protected FOnFindResult: TOnFindResult;
    Protected FOnRequestContextInitialized: TOnRequestContextInitialized;
    Protected FOnGetResourceRequestHandler_ReqCtxHdlr: TOnGetResourceRequestHandler;
    Protected FOnSinks: TOnSinksEvent;
    Protected FOnRoutes: TOnRoutesEvent;
    Protected FOnRouteStateChanged: TOnRouteStateChangedEvent;
    Protected FOnRouteMessageReceived: TOnRouteMessageReceivedEvent;
    Protected FOnGetAudioParameters: TOnGetAudioParametersEvent;
    Protected FOnAudioStreamStarted: TOnAudioStreamStartedEvent;
    Protected FOnAudioStreamPacket: TOnAudioStreamPacketEvent;
    Protected FOnAudioStreamStopped: TOnAudioStreamStoppedEvent;
    Protected FOnAudioStreamError: TOnAudioStreamErrorEvent;
    Protected FOnDevToolsMessage: TOnDevToolsMessageEvent;
    Protected FOnDevToolsRawMessage: TOnDevToolsRawMessageEvent;
    Protected FOnDevToolsMethodResult: TOnDevToolsMethodResultEvent;
    Protected FOnDevToolsMethodRawResult: TOnDevToolsMethodRawResultEvent;
    Protected FOnDevToolsEvent: TOnDevToolsEventEvent;
    Protected FOnDevToolsRawEvent: TOnDevToolsEventRawEvent;
    Protected FOnDevToolsAgentAttached: TOnDevToolsAgentAttachedEvent;
    Protected FOnDevToolsAgentDetached: TOnDevToolsAgentDetachedEvent;
    ProtectedFOnExtensionLoadFailed: TOnExtensionLoadFailedEvent;
    ProtectedFOnExtensionLoaded: TOnExtensionLoadedEvent;
    ProtectedFOnExtensionUnloaded: TOnExtensionUnloadedEvent;
    ProtectedFOnExtensionBeforeBackgroundBrowser: TOnBeforeBackgroundBrowserEvent;
    ProtectedFOnExtensionBeforeBrowser: TOnBeforeBrowserEvent;
    ProtectedFOnExtensionGetActiveBrowser: TOnGetActiveBrowserEvent;
    ProtectedFOnExtensionCanAccessBrowser: TOnCanAccessBrowserEvent;
    ProtectedFOnExtensionGetExtensionResource: TOnGetExtensionResourceEvent;
    Protected FOnPrintStart: TOnPrintStartEvent;
    Protected FOnPrintSettings: TOnPrintSettingsEvent;
    Protected FOnPrintDialog: TOnPrintDialogEvent;
    Protected FOnPrintJob: TOnPrintJobEvent;
    Protected FOnPrintReset: TOnPrintResetEvent;
    Protected FOnGetPDFPaperSize: TOnGetPDFPaperSizeEvent;
    Protected FOnFrameCreated: TOnFrameCreated;
    Protected FOnFrameAttached: TOnFrameAttached;
    Protected FOnFrameDetached: TOnFrameDetached;
    Protected FOnMainFrameChanged: TOnMainFrameChanged;
    Protected FOnChromeCommand: TOnChromeCommandEvent;
    Protected FOnIsChromeAppMenuItemVisible: TOnIsChromeAppMenuItemVisibleEvent;
    Protected FOnIsChromeAppMenuItemEnabled: TOnIsChromeAppMenuItemEnabledEvent;
    Protected FOnIsChromePageActionIconVisible: TOnIsChromePageActionIconVisibleEvent;
    Protected FOnIsChromeToolbarButtonVisible: TOnIsChromeToolbarButtonVisibleEvent;
    Protected FOnRequestMediaAccessPermission: TOnRequestMediaAccessPermissionEvent;
    Protected FOnShowPermissionPrompt: TOnShowPermissionPromptEvent;
    Protected FOnDismissPermissionPrompt: TOnDismissPermissionPromptEvent;
    Protected FOnTextResultAvailable: TOnTextResultAvailableEvent;
    Protected FOnPdfPrintFinished: TOnPdfPrintFinishedEvent;
    Protected FOnPrefsAvailable: TOnPrefsAvailableEvent;
    Protected FOnPrefsUpdated: TNotifyEvent;
    Protected FOnCookiesDeleted: TOnCookiesDeletedEvent;
    Protected FOnResolvedHostAvailable: TOnResolvedIPsAvailableEvent;
    Protected FOnNavigationVisitorResultAvailable: TOnNavigationVisitorResultAvailableEvent;
    Protected FOnDownloadImageFinished: TOnDownloadImageFinishedEvent;
    Protected FOnCookiesFlushed: TNotifyEvent;
    Protected FOnCertificateExceptionsCleared: TNotifyEvent;
    Protected FOnHttpAuthCredentialsCleared: TNotifyEvent;
    Protected FOnAllConnectionsClosed: TNotifyEvent;
    Protected FOnExecuteTaskOnCefThread: TOnExecuteTaskOnCefThread;
    Protected FOnCookiesVisited: TOnCookiesVisited;
    Protected FOnCookieVisitorDestroyed: TOnCookieVisitorDestroyed;
    Protected FOnCookieSet: TOnCookieSet;
    Protected FOnZoomPctAvailable: TOnZoomPctAvailable;
    Protected FOnMediaRouteCreateFinished: TOnMediaRouteCreateFinishedEvent;
    Protected FOnMediaSinkDeviceInfo: TOnMediaSinkDeviceInfoEvent;
    Protected FOnCanFocus: TNotifyEvent;
    Protected FOnBrowserCompMsg: TOnCompMsgEvent;
    Protected FOnWidgetCompMsg: TOnCompMsgEvent;
    Protected FOnRenderCompMsg: TOnCompMsgEvent;
    Protectedprocedure DestroyExtensionHandler;
    Protected procedure DestroyAllHandlersAndObservers;
    Protected procedure CreateResourceRequestHandler; virtual;
    Protected procedure CreateMediaObserver; virtual;
    Protectedprocedure CreateDevToolsMsgObserver; virtual;
    Protectedprocedure CreateExtensionHandler; virtual;procedure CreateDevToolsMsgObserver; virtual;
    Protected
    Protectedprocedure doOnExtensionLoadFailed(result: TCefErrorcode);
    Protectedprocedure doOnExtensionLoaded(const extension: ICefExtension);
    Protectedprocedure doOnExtensionUnloaded(const extension: ICefExtension);
    Protectedfunction doOnExtensionBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    Protectedfunction doOnExtensionBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    Protectedprocedure doOnExtensionGetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser);
    Protectedfunction doOnExtensionCanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean;
    Protectedfunction doOnExtensionGetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean;
    Protected procedure doOnPrintStart(const browser: ICefBrowser);
    Protectedfunction MustCreateExtensionHandler: boolean; virtual;
    Protected function MustCreatePrintHandler: boolean; virtual;
    Protected function MustCreateFrameHandler: boolean; virtual;
    Protected function MustCreatePermissionHandler: boolean; virtual;
    Public constructor Create(AOwner: TComponent); override;
    Public destructor Destroy; override;
    Public procedure AfterConstruction; override;
    Public procedure BeforeDestruction; override;
    Public function CreateClientHandler(aIsOSR : boolean = True) : boolean; overload;
    Public function CreateClientHandler(var aClient : ICefClient; aIsOSR : boolean = True) : boolean; overload;
    Public procedure CloseBrowser(aForceClose : boolean);
    Public procedure CloseAllBrowsers;
    Public function TryCloseBrowser: boolean;
    Public function SelectBrowser(aID : integer) : boolean;
    Public function IndexOfBrowserID(aID : integer) : integer;
    Public function ShareRequestContext(var aContext : ICefRequestContext; const aHandler : ICefRequestContextHandler = nil) : boolean;
    Public procedure InitializeDragAndDrop(const aDropTargetWnd : HWND);
    Public procedure ShutdownDragAndDrop;
    Public function SetNewBrowserParent(aNewParentHwnd : HWND) : boolean;
    Public function CreateBrowser(aParentHandle : TCefWindowHandle; aParentRect : TRect; const aWindowName : ustring = ''; const aContext : ICefRequestContext = nil; const aExtraInfo : ICefDictionaryValue = nil; aForceAsPopup : boolean = False) : boolean; overload; virtual;
    Public function CreateBrowser(const aURL : ustring; const aBrowserViewComp : TCEFBrowserViewComponent; const aContext : ICefRequestContext = nil; const aExtraInfo : ICefDictionaryValue = nil) : boolean; overload; virtual;
    Public procedure LoadURL(const aURL : ustring; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;
    Public procedure LoadURL(const aURL : ustring; const aFrame : ICefFrame); overload;
    Public procedure LoadString(const aHTML : ustring; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;
    Public procedure LoadString(const aHTML : ustring; const aFrame : ICefFrame); overload;
    Public procedure LoadResource(const aStream : TCustomMemoryStream; const aMimeType, aCharset : string; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;
    Public procedure LoadResource(const aStream : TCustomMemoryStream; const aMimeType, aCharset : string; const aFrame : ICefFrame); overload;
    Public procedure LoadRequest(const aRequest: ICefRequest);
    Public procedure GoBack;
    Public procedure GoForward;
    Public procedure Reload;
    Public procedure ReloadIgnoreCache;
    Public procedure StopLoad;
    Public procedure StartDownload(const aURL : ustring);
    Public procedure DownloadImage(const imageUrl: ustring; isFavicon: Boolean; maxImageSize: cardinal; bypassCache: Boolean);
    Public procedure SimulateMouseWheel(aDeltaX, aDeltaY : integer);
    Public procedure SimulateKeyEvent(type_: TSimulatedCefKeyEventType; modifiers: integer = CEF_MOUSETOUCH_EVENT_MODIFIERS_NONE; timestamp: single = 0; const text: ustring = ''; const unmodifiedtext: ustring = ''; const keyIdentifier: ustring = ''; const code: ustring = ''; const key: ustring = ''; windowsVirtualKeyCode: integer = 0; nativeVirtualKeyCode: integer = 0; autoRepeat: boolean = False; isKeypad: boolean = False; isSystemKey: boolean = False; location: TCefKeyLocation = CEF_KEYLOCATION_NONE; commands: TCefEditingCommand = ecNone);
    Public procedure SimulateMouseEvent(type_: TCefSimulatedMouseEventType; x, y: single; modifiers: integer = CEF_MOUSETOUCH_EVENT_MODIFIERS_NONE; timestamp: single = 0; button: TCefSimulatedMouseButton = CEF_SIMULATEDMOUSEBUTTON_NONE; buttons: integer = CEF_PRESSED_MOUSE_BUTTONS_NONE; clickCount: integer = 0; force: single = 0; tangentialPressure: single = 0; tiltX: single = 0; tiltY: single = 0; twist: integer = 0; deltaX: single = 0; deltaY: single = 0; pointerType: TCefSimulatedPointerType = CEF_SIMULATEDPOINTERTYPE_MOUSE);
    Public procedure SimulateTouchEvent(type_: TCefSimulatedTouchEventType; var touchPoints: TCefSimulatedTouchPointArray; modifiers: integer = CEF_MOUSETOUCH_EVENT_MODIFIERS_NONE; timestamp: single = 0);
    Public procedure SimulateEditingCommand(command : TCefEditingCommand);
    Public function ClearCertificateExceptions(aClearImmediately : boolean = True) : boolean;
    Public function ClearHttpAuthCredentials(aClearImmediately : boolean = True) : boolean;
    Public function CloseAllConnections(aCloseImmediately : boolean = True) : boolean;
    Public procedure RetrieveHTML(const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;
    Public procedure RetrieveHTML(const aFrame : ICefFrame); overload;
    Public procedure RetrieveText(const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;
    Public procedure RetrieveText(const aFrame : ICefFrame); overload;
    Public procedure GetNavigationEntries(currentOnly: Boolean);
    Public function GetFrameNames(var aFrameNames : TStrings) : boolean;
    Public function GetFrameIdentifiers(var aFrameIdentifiers : TStrings) : boolean;
    Public procedure ExecuteJavaScript(const aCode, aScriptURL : ustring; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''; aStartLine : integer = 0); overload;
    Public procedure ExecuteJavaScript(const aCode, aScriptURL : ustring; const aFrame : ICefFrame; aStartLine : integer = 0); overload;
    Public procedure UpdatePreferences;
    Public procedure SavePreferences(const aFileName : string);
    Public procedure ResolveHost(const aURL : ustring);
    Public function IsSameBrowser(const aBrowser : ICefBrowser) : boolean;
    Public function ExecuteTaskOnCefThread(aCefThreadId : TCefThreadId; aTaskID : cardinal; aDelayMs : Int64 = 0) : boolean;
    Public procedure SetUserAgentOverride(const aUserAgent : ustring; const aAcceptLanguage : ustring = ''; const aPlatform : ustring = '');
    Public procedure ClearDataForOrigin(const aOrigin : ustring; aStorageTypes : TCefClearDataStorageTypes = cdstAll);
    Public procedure ClearCache;
    Public procedure ToggleAudioMuted;
    Public function DeleteCookies(const url : ustring = ''; const cookieName : ustring = ''; aDeleteImmediately : boolean = False) : boolean;
    Public function VisitAllCookies(aID : integer = 0) : boolean;
    Public function VisitURLCookies(const url : ustring; includeHttpOnly : boolean = False; aID : integer = 0) : boolean;
    Public function SetCookie(const url, name_, value, domain, path: ustring; secure, httponly, hasExpires: Boolean; const creation, lastAccess, expires: TDateTime; same_site : TCefCookieSameSite; priority : TCefCookiePriority; aSetImmediately : boolean = True; aID : integer = 0): Boolean;
    Public function FlushCookieStore(aFlushImmediately : boolean = True) : boolean;
    Public procedure ShowDevTools(const inspectElementAt: TPoint; aWindowInfo: PCefWindowInfo);
    Public procedure CloseDevTools; overload;
    Public procedure CloseDevTools(const aDevToolsWnd : TCefWindowHandle); overload;
    Public function SendDevToolsMessage(const message_: ustring): boolean;
    Public function ExecuteDevToolsMethod(message_id: integer; const method: ustring; const params: ICefDictionaryValue): Integer;
    Public function AddDevToolsMessageObserver(const observer: ICefDevToolsMessageObserver): ICefRegistration;
    Public procedure Find(const aSearchText : ustring; aForward, aMatchCase, aFindNext : Boolean);
    Public procedure StopFinding(aClearSelection : Boolean);
    Public procedure Print;
    Public procedure PrintToPDF(const aFilePath : ustring);
    Public procedure ClipboardCopy;
    Public procedure ClipboardPaste;
    Public procedure ClipboardCut;
    Public procedure ClipboardUndo;
    Public procedure ClipboardRedo;
    Public procedure ClipboardDel;
    Public procedure SelectAll;
    Public procedure IncZoomStep;
    Public procedure DecZoomStep;
    Public procedure IncZoomPct;
    Public procedure DecZoomPct;
    Public procedure ResetZoomStep;
    Public procedure ResetZoomLevel;
    Public procedure ResetZoomPct;
    Public procedure ReadZoom;
    Public procedure IncZoomCommand;
    Public procedure DecZoomCommand;
    Public procedure ResetZoomCommand;
    Public procedure WasResized;
    Public procedure WasHidden(hidden: Boolean);
    Public procedure NotifyScreenInfoChanged;
    Public procedure NotifyMoveOrResizeStarted;
    Public procedure Invalidate(type_: TCefPaintElementType = PET_VIEW);
    Public procedure ExitFullscreen(will_cause_resize: boolean);
    Public function CanExecuteChromeCommand(command_id: integer): boolean;
    Public procedure ExecuteChromeCommand(command_id: integer; disposition: TCefWindowOpenDisposition);
    Public procedure SendExternalBeginFrame;
    Public procedure SendKeyEvent(const event: PCefKeyEvent);
    Public procedure SendMouseClickEvent(const event: PCefMouseEvent; type_: TCefMouseButtonType; mouseUp: Boolean; clickCount: Integer);
    Public procedure SendMouseMoveEvent(const event: PCefMouseEvent; mouseLeave: Boolean);
    Public procedure SendMouseWheelEvent(const event: PCefMouseEvent; deltaX, deltaY: Integer);
    Public procedure SendTouchEvent(const event: PCefTouchEvent);
    Public procedure SendCaptureLostEvent;
    Public procedure SendProcessMessage(targetProcess: TCefProcessId; const ProcMessage: ICefProcessMessage; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''); overload;
    Public procedure SendProcessMessage(targetProcess: TCefProcessId; const ProcMessage: ICefProcessMessage; const aFrame : ICefFrame); overload;
    Public function CreateUrlRequest(const request: ICefRequest; const client: ICefUrlrequestClient; const aFrameName : ustring = ''; const aFrameIdentifier : ustring = ''): ICefUrlRequest; overload;
    Public function CreateUrlRequest(const request: ICefRequest; const client: ICefUrlrequestClient; const aFrame : ICefFrame): ICefUrlRequest; overload;
    Public procedure SetFocus(focus: Boolean);
    Public procedure SetAccessibilityState(accessibilityState: TCefState);
    Public procedure DragTargetDragEnter(const dragData: ICefDragData; const event: PCefMouseEvent; allowedOps: TCefDragOperations);
    Public procedure DragTargetDragOver(const event: PCefMouseEvent; allowedOps: TCefDragOperations);
    Public procedure DragTargetDragLeave;
    Public procedure DragTargetDrop(const event: PCefMouseEvent);
    Public procedure DragSourceEndedAt(x, y: Integer; op: TCefDragOperation);
    Public procedure DragSourceSystemDragEnded;
    Public procedure IMESetComposition(const text: ustring; const underlines : TCefCompositionUnderlineDynArray; const replacement_range, selection_range : PCefRange);
    Public procedure IMECommitText(const text: ustring; const replacement_range : PCefRange; relative_cursor_pos : integer);
    Public procedure IMEFinishComposingText(keep_selection : boolean);
    Public procedure IMECancelComposition;
    Public procedure ReplaceMisspelling(const aWord : ustring);
    Public procedure AddWordToDictionary(const aWord : ustring);
    Public function AddObserver(const observer: ICefMediaObserver): ICefRegistration;
    Public function GetSource(const urn: ustring): ICefMediaSource;
    Public procedure NotifyCurrentSinks;
    Public procedure NotifyCurrentRoutes;
    Public procedure CreateRoute(const source: ICefMediaSource; const sink: ICefMediaSink);
    Public procedure GetDeviceInfo(const aMediaSink: ICefMediaSink);
    Publicfunction LoadExtension(const root_directory: ustring; const manifest: ICefDictionaryValue = nil; const handler: ICefExtensionHandler = nil; const requestContext : ICefRequestContext = nil) : boolean; deprecated;
    Publicfunction DidLoadExtension(const extension_id: ustring): boolean; deprecated;
    Publicfunction HasExtension(const extension_id: ustring): boolean; deprecated;
    Publicfunction GetExtensions(const extension_ids: TStringList): boolean; deprecated;
    Publicfunction GetExtension(const extension_id: ustring): ICefExtension; deprecated;
    Public function GetWebsiteSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes): ICefValue;
    Publicproperty ExtensionHandler : ICefExtensionHandler read FExtensionHandler;
    Public property MultithreadApp : boolean read GetMultithreadApp;
    Public property IsLoading : boolean read GetIsLoading;
    Public property HasDocument : boolean read GetHasDocument;
    Public property HasView : boolean read GetHasView;
    Public property HasDevTools : boolean read GetHasDevTools;
    Public property HasClientHandler : boolean read GetHasClientHandler;
    Public property HasBrowser : boolean read GetHasBrowser;
    Public property CanGoBack : boolean read GetCanGoBack;
    Public property CanGoForward : boolean read GetCanGoForward;
    Public property IsPopUp : boolean read GetIsPopUp;
    Public property WindowHandle : TCefWindowHandle read GetWindowHandle;
    Public property OpenerWindowHandle : TCefWindowHandle read GetOpenerWindowHandle;
    Public property BrowserHandle : THandle read FBrowserCompHWND;
    Public property WidgetHandle : THandle read FWidgetCompHWND;
    Public property RenderHandle : THandle read FRenderCompHWND;
    Public property FrameIsFocused : boolean read GetFrameIsFocused;
    Public property Initialized : boolean read GetInitialized;
    Public property RequestContextCache : ustring read GetRequestContextCache;
    Public property RequestContextIsGlobal : boolean read GetRequestContextIsGlobal;
    Public property ChromeColorSchemeMode : TCefColorVariant read GetChromeColorSchemeMode;
    Public property ChromeColorSchemeColor : TCefColor read GetChromeColorSchemeColor;
    Public property ChromeColorSchemeVariant : TCefColorVariant read GetChromeColorSchemeVariant;
    Public property DocumentURL : ustring read GetDocumentURL;
    Public property ZoomLevel : double read GetZoomLevel write SetZoomLevel;
    Public property DefaultZoomLevel : double read GetDefaultZoomLevel;
    Public property CanIncZoom : boolean read GetCanIncZoom;
    Public property CanDecZoom : boolean read GetCanDecZoom;
    Public property CanResetZoom : boolean read GetCanResetZoom;
    Public property ZoomPct : double read GetZoomPct write SetZoomPct;
    Public property ZoomStep : byte read GetZoomStep write SetZoomStep;
    Public property WindowlessFrameRate : integer read GetWindowlessFrameRate write SetWindowlessFrameRate;
    Public property CustomHeaderName : ustring read FCustomHeaderName write SetCustomHeaderName;
    Public property CustomHeaderValue : ustring read FCustomHeaderValue write SetCustomHeaderValue;
    Public property DoNotTrack : boolean read FDoNotTrack write SetDoNotTrack;
    Public property SendReferrer : boolean read FSendReferrer write SetSendReferrer;
    Public property HyperlinkAuditing : boolean read FHyperlinkAuditing write SetHyperlinkAuditing;
    Public property AllowOutdatedPlugins : boolean read FAllowOutdatedPlugins write SetAllowOutdatedPlugins;
    Public property AlwaysAuthorizePlugins : boolean read FAlwaysAuthorizePlugins write SetAlwaysAuthorizePlugins;
    Public property AlwaysOpenPDFExternally : boolean read FAlwaysOpenPDFExternally write SetAlwaysOpenPDFExternally;
    Public property SpellChecking : boolean read FSpellChecking write SetSpellChecking;
    Public property SpellCheckerDicts : ustring read FSpellCheckerDicts write SetSpellCheckerDicts;
    Public property HasValidMainFrame : boolean read GetHasValidMainFrame;
    Public property FrameCount : NativeUInt read GetFrameCount;
    Public property DragOperations : TCefDragOperations read FDragOperations write FDragOperations;
    Public property AudioMuted : boolean read GetAudioMuted write SetAudioMuted;
    Public property Fullscreen : boolean read GetFullscreen;
    Public property IsRenderProcessUnresponsive : boolean read GetIsRenderProcessUnresponsive;
    Public property SafeSearch : boolean read FSafeSearch write SetSafeSearch;
    Public property YouTubeRestrict : integer read FYouTubeRestrict write SetYouTubeRestrict;
    Public property PrintingEnabled : boolean read FPrintingEnabled write SetPrintingEnabled;
    Public property AcceptLanguageList : ustring read FAcceptLanguageList write SetAcceptLanguageList;
    Public property AcceptCookies : TCefCookiePref read FAcceptCookies write SetAcceptCookies;
    Public property Block3rdPartyCookies : boolean read FBlock3rdPartyCookies write SetBlock3rdPartyCookies;
    Public property MultiBrowserMode : boolean read FMultiBrowserMode write SetMultiBrowserMode;
    Public property DefaultWindowInfoExStyle : DWORD read GetWindowInfoExStyle write SetWindowInfoExStyle;
    Public property Offline : boolean read FOffline write SetOffline;
    Public property QuicAllowed : boolean read FQuicAllowed write SetQuicAllowed;
    Public property JavascriptEnabled : boolean read FJavascriptEnabled write SetJavascriptEnabled;
    Public property LoadImagesAutomatically : boolean read FLoadImagesAutomatically write SetLoadImagesAutomatically;
    Public property BatterySaverModeState : TCefBatterySaverModeState read FBatterySaverModeState write SetBatterySaverModeState;
    Public property HighEfficiencyModeState : TCefHighEfficiencyModeState read FHighEfficiencyModeState write SetHighEfficiencyModeState;
    Public property CanFocus : boolean read FCanFocus;
    Public property EnableFocusDelayMs : cardinal read FEnableFocusDelayMs write FEnableFocusDelayMs;
    Public property WebRTCIPHandlingPolicy : TCefWebRTCHandlingPolicy read FWebRTCIPHandlingPolicy write SetWebRTCIPHandlingPolicy;
    Public property WebRTCMultipleRoutes : TCefState read FWebRTCMultipleRoutes write SetWebRTCMultipleRoutes;
    Public property WebRTCNonproxiedUDP : TCefState read FWebRTCNonProxiedUDP write SetWebRTCNonProxiedUDP;
    Public property ProxyType : integer read FProxyType write SetProxyType;
    Public property ProxyScheme : TCefProxyScheme read FProxyScheme write SetProxyScheme;
    Public property ProxyServer : ustring read FProxyServer write SetProxyServer;
    Public property ProxyPort : integer read FProxyPort write SetProxyPort;
    Public property ProxyUsername : ustring read FProxyUsername write SetProxyUsername;
    Public property ProxyPassword : ustring read FProxyPassword write SetProxyPassword;
    Public property ProxyScriptURL : ustring read FProxyScriptURL write SetProxyScriptURL;
    Public property ProxyByPassList : ustring read FProxyByPassList write SetProxyByPassList;
    Public property MaxConnectionsPerProxy : integer read FMaxConnectionsPerProxy write SetMaxConnectionsPerProxy;
    Public property DownloadBubble : TCefState read FDownloadBubble write FDownloadBubble;
    Public property HTTPSUpgrade : TCefState read FHTTPSUpgrade write FHTTPSUpgrade;
    Public property HSTSPolicyBypassList : ustring read FHSTSPolicyBypassList write FHSTSPolicyBypassList;
    Published property OnTextResultAvailable : TOnTextResultAvailableEvent read FOnTextResultAvailable write FOnTextResultAvailable;
    Published property OnPdfPrintFinished : TOnPdfPrintFinishedEvent read FOnPdfPrintFinished write FOnPdfPrintFinished;
    Published property OnPrefsAvailable : TOnPrefsAvailableEvent read FOnPrefsAvailable write FOnPrefsAvailable;
    Published property OnPrefsUpdated : TNotifyEvent read FOnPrefsUpdated write FOnPrefsUpdated;
    Published property OnCookiesDeleted : TOnCookiesDeletedEvent read FOnCookiesDeleted write FOnCookiesDeleted;
    Published property OnResolvedHostAvailable : TOnResolvedIPsAvailableEvent read FOnResolvedHostAvailable write FOnResolvedHostAvailable;
    Published property OnNavigationVisitorResultAvailable : TOnNavigationVisitorResultAvailableEvent read FOnNavigationVisitorResultAvailable write FOnNavigationVisitorResultAvailable;
    Published property OnDownloadImageFinished : TOnDownloadImageFinishedEvent read FOnDownloadImageFinished write FOnDownloadImageFinished;
    Published property OnCookiesFlushed : TNotifyEvent read FOnCookiesFlushed write FOnCookiesFlushed;
    Published property OnCertificateExceptionsCleared : TNotifyEvent read FOnCertificateExceptionsCleared write FOnCertificateExceptionsCleared;
    Published property OnHttpAuthCredentialsCleared : TNotifyEvent read FOnHttpAuthCredentialsCleared write FOnHttpAuthCredentialsCleared;
    Published property OnAllConnectionsClosed : TNotifyEvent read FOnAllConnectionsClosed write FOnAllConnectionsClosed;
    Published property OnExecuteTaskOnCefThread : TOnExecuteTaskOnCefThread read FOnExecuteTaskOnCefThread write FOnExecuteTaskOnCefThread;
    Published property OnCookiesVisited : TOnCookiesVisited read FOnCookiesVisited write FOnCookiesVisited;
    Published property OnCookieVisitorDestroyed : TOnCookieVisitorDestroyed read FOnCookieVisitorDestroyed write FOnCookieVisitorDestroyed;
    Published property OnCookieSet : TOnCookieSet read FOnCookieSet write FOnCookieSet;
    Published property OnZoomPctAvailable : TOnZoomPctAvailable read FOnZoomPctAvailable write FOnZoomPctAvailable;
    Published property OnMediaRouteCreateFinished : TOnMediaRouteCreateFinishedEvent read FOnMediaRouteCreateFinished write FOnMediaRouteCreateFinished;
    Published property OnMediaSinkDeviceInfo : TOnMediaSinkDeviceInfoEvent read FOnMediaSinkDeviceInfo write FOnMediaSinkDeviceInfo;
    Published property OnCanFocus : TNotifyEvent read FOnCanFocus write FOnCanFocus;
    Published property OnBrowserCompMsg : TOnCompMsgEvent read FOnBrowserCompMsg write FOnBrowserCompMsg;
    Published property OnWidgetCompMsg : TOnCompMsgEvent read FOnWidgetCompMsg write FOnWidgetCompMsg;
    Published property OnRenderCompMsg : TOnCompMsgEvent read FOnRenderCompMsg write FOnRenderCompMsg;
    Published property OnProcessMessageReceived : TOnProcessMessageReceived read FOnProcessMessageReceived write FOnProcessMessageReceived;
    Published property OnLoadStart : TOnLoadStart read FOnLoadStart write FOnLoadStart;
    Published property OnLoadEnd : TOnLoadEnd read FOnLoadEnd write FOnLoadEnd;
    Published property OnLoadError : TOnLoadError read FOnLoadError write FOnLoadError;
    Published property OnLoadingStateChange : TOnLoadingStateChange read FOnLoadingStateChange write FOnLoadingStateChange;
    Published property OnTakeFocus : TOnTakeFocus read FOnTakeFocus write FOnTakeFocus;
    Published property OnSetFocus : TOnSetFocus read FOnSetFocus write FOnSetFocus;
    Published property OnGotFocus : TOnGotFocus read FOnGotFocus write FOnGotFocus;
    Published property OnBeforeContextMenu : TOnBeforeContextMenu read FOnBeforeContextMenu write FOnBeforeContextMenu;
    Published property OnRunContextMenu : TOnRunContextMenu read FOnRunContextMenu write FOnRunContextMenu;
    Published property OnContextMenuCommand : TOnContextMenuCommand read FOnContextMenuCommand write FOnContextMenuCommand;
    Published property OnContextMenuDismissed : TOnContextMenuDismissed read FOnContextMenuDismissed write FOnContextMenuDismissed;
    Published property OnRunQuickMenu : TOnRunQuickMenuEvent read FOnRunQuickMenu write FOnRunQuickMenu;
    Published property OnQuickMenuCommand : TOnQuickMenuCommandEvent read FOnQuickMenuCommand write FOnQuickMenuCommand;
    Published property OnQuickMenuDismissed : TOnQuickMenuDismissedEvent read FOnQuickMenuDismissed write FOnQuickMenuDismissed;
    Published property OnPreKeyEvent : TOnPreKeyEvent read FOnPreKeyEvent write FOnPreKeyEvent;
    Published property OnKeyEvent : TOnKeyEvent read FOnKeyEvent write FOnKeyEvent;
    Published property OnAddressChange : TOnAddressChange read FOnAddressChange write FOnAddressChange;
    Published property OnTitleChange : TOnTitleChange read FOnTitleChange write FOnTitleChange;
    Published property OnFavIconUrlChange : TOnFavIconUrlChange read FOnFavIconUrlChange write FOnFavIconUrlChange;
    Published property OnFullScreenModeChange : TOnFullScreenModeChange read FOnFullScreenModeChange write FOnFullScreenModeChange;
    Published property OnTooltip : TOnTooltip read FOnTooltip write FOnTooltip;
    Published property OnStatusMessage : TOnStatusMessage read FOnStatusMessage write FOnStatusMessage;
    Published property OnConsoleMessage : TOnConsoleMessage read FOnConsoleMessage write FOnConsoleMessage;
    Published property OnAutoResize : TOnAutoResize read FOnAutoResize write FOnAutoResize;
    Published property OnLoadingProgressChange : TOnLoadingProgressChange read FOnLoadingProgressChange write FOnLoadingProgressChange;
    Published property OnCursorChange : TOnCursorChange read FOnCursorChange write FOnCursorChange;
    Published property OnMediaAccessChange : TOnMediaAccessChange read FOnMediaAccessChange write FOnMediaAccessChange;
    Published property OnCanDownload : TOnCanDownloadEvent read FOnCanDownload write FOnCanDownload;
    Published property OnBeforeDownload : TOnBeforeDownload read FOnBeforeDownload write FOnBeforeDownload;
    Published property OnDownloadUpdated : TOnDownloadUpdated read FOnDownloadUpdated write FOnDownloadUpdated;
    Published property OnJsdialog : TOnJsdialog read FOnJsdialog write FOnJsdialog;
    Published property OnBeforeUnloadDialog : TOnBeforeUnloadDialog read FOnBeforeUnloadDialog write FOnBeforeUnloadDialog;
    Published property OnResetDialogState : TOnResetDialogState read FOnResetDialogState write FOnResetDialogState;
    Published property OnDialogClosed : TOnDialogClosed read FOnDialogClosed write FOnDialogClosed;
    Published property OnBeforePopup : TOnBeforePopup read FOnBeforePopup write FOnBeforePopup;
    Published property OnBeforeDevToolsPopup : TOnBeforeDevToolsPopup read FOnBeforeDevToolsPopup write FOnBeforeDevToolsPopup;
    Published property OnAfterCreated : TOnAfterCreated read FOnAfterCreated write FOnAfterCreated;
    Published property OnBeforeClose : TOnBeforeClose read FOnBeforeClose write FOnBeforeClose;
    Published property OnClose : TOnClose read FOnClose write FOnClose;
    Published property OnBeforeBrowse : TOnBeforeBrowse read FOnBeforeBrowse write FOnBeforeBrowse;
    Published property OnOpenUrlFromTab : TOnOpenUrlFromTab read FOnOpenUrlFromTab write FOnOpenUrlFromTab;
    Published property OnGetAuthCredentials : TOnGetAuthCredentials read FOnGetAuthCredentials write FOnGetAuthCredentials;
    Published property OnCertificateError : TOnCertificateError read FOnCertificateError write FOnCertificateError;
    Published property OnSelectClientCertificate : TOnSelectClientCertificate read FOnSelectClientCertificate write FOnSelectClientCertificate;
    Published property OnRenderViewReady : TOnRenderViewReady read FOnRenderViewReady write FOnRenderViewReady;
    Published property OnRenderProcessUnresponsive : TOnRenderProcessUnresponsive read FOnRenderProcessUnresponsive write FOnRenderProcessUnresponsive;
    Published property OnRenderProcessResponsive : TOnRenderProcessResponsive read FOnRenderProcessResponsive write FOnRenderProcessResponsive;
    Published property OnRenderProcessTerminated : TOnRenderProcessTerminated read FOnRenderProcessTerminated write FOnRenderProcessTerminated;
    Published property OnGetResourceRequestHandler_ReqHdlr : TOnGetResourceRequestHandler read FOnGetResourceRequestHandler_ReqHdlr write FOnGetResourceRequestHandler_ReqHdlr;
    Published property OnDocumentAvailableInMainFrame : TOnDocumentAvailableInMainFrame read FOnDocumentAvailableInMainFrame write FOnDocumentAvailableInMainFrame;
    Published property OnBeforeResourceLoad : TOnBeforeResourceLoad read FOnBeforeResourceLoad write FOnBeforeResourceLoad;
    Published property OnGetResourceHandler : TOnGetResourceHandler read FOnGetResourceHandler write FOnGetResourceHandler;
    Published property OnResourceRedirect : TOnResourceRedirect read FOnResourceRedirect write FOnResourceRedirect;
    Published property OnResourceResponse : TOnResourceResponse read FOnResourceResponse write FOnResourceResponse;
    Published property OnGetResourceResponseFilter : TOnGetResourceResponseFilter read FOnGetResourceResponseFilter write FOnGetResourceResponseFilter;
    Published property OnResourceLoadComplete : TOnResourceLoadComplete read FOnResourceLoadComplete write FOnResourceLoadComplete;
    Published property OnProtocolExecution : TOnProtocolExecution read FOnProtocolExecution write FOnProtocolExecution;
    Published property OnCanSendCookie : TOnCanSendCookie read FOnCanSendCookie write FOnCanSendCookie;
    Published property OnCanSaveCookie : TOnCanSaveCookie read FOnCanSaveCookie write FOnCanSaveCookie;
    Published property OnFileDialog : TOnFileDialog read FOnFileDialog write FOnFileDialog;
    Published property OnGetAccessibilityHandler : TOnGetAccessibilityHandler read FOnGetAccessibilityHandler write FOnGetAccessibilityHandler;
    Published property OnGetRootScreenRect : TOnGetRootScreenRect read FOnGetRootScreenRect write FOnGetRootScreenRect;
    Published property OnGetViewRect : TOnGetViewRect read FOnGetViewRect write FOnGetViewRect;
    Published property OnGetScreenPoint : TOnGetScreenPoint read FOnGetScreenPoint write FOnGetScreenPoint;
    Published property OnGetScreenInfo : TOnGetScreenInfo read FOnGetScreenInfo write FOnGetScreenInfo;
    Published property OnPopupShow : TOnPopupShow read FOnPopupShow write FOnPopupShow;
    Published property OnPopupSize : TOnPopupSize read FOnPopupSize write FOnPopupSize;
    Published property OnPaint : TOnPaint read FOnPaint write FOnPaint;
    Published property OnAcceleratedPaint : TOnAcceleratedPaint read FOnAcceleratedPaint write FOnAcceleratedPaint;
    Published property OnGetTouchHandleSize : TOnGetTouchHandleSize read FOnGetTouchHandleSize write FOnGetTouchHandleSize;
    Published property OnTouchHandleStateChanged : TOnTouchHandleStateChanged read FOnTouchHandleStateChanged write FOnTouchHandleStateChanged;
    Published property OnStartDragging : TOnStartDragging read FOnStartDragging write FOnStartDragging;
    Published property OnUpdateDragCursor : TOnUpdateDragCursor read FOnUpdateDragCursor write FOnUpdateDragCursor;
    Published property OnScrollOffsetChanged : TOnScrollOffsetChanged read FOnScrollOffsetChanged write FOnScrollOffsetChanged;
    Published property OnIMECompositionRangeChanged : TOnIMECompositionRangeChanged read FOnIMECompositionRangeChanged write FOnIMECompositionRangeChanged;
    Published property OnTextSelectionChanged : TOnTextSelectionChanged read FOnTextSelectionChanged write FOnTextSelectionChanged;
    Published property OnVirtualKeyboardRequested : TOnVirtualKeyboardRequested read FOnVirtualKeyboardRequested write FOnVirtualKeyboardRequested;
    Published property OnDragEnter : TOnDragEnter read FOnDragEnter write FOnDragEnter;
    Published property OnDraggableRegionsChanged : TOnDraggableRegionsChanged read FOnDraggableRegionsChanged write FOnDraggableRegionsChanged;
    Published property OnFindResult : TOnFindResult read FOnFindResult write FOnFindResult;
    Published property OnRequestContextInitialized : TOnRequestContextInitialized read FOnRequestContextInitialized write FOnRequestContextInitialized;
    Published property OnGetResourceRequestHandler_ReqCtxHdlr : TOnGetResourceRequestHandler read FOnGetResourceRequestHandler_ReqCtxHdlr write FOnGetResourceRequestHandler_ReqCtxHdlr;
    Published property OnSinks : TOnSinksEvent read FOnSinks write FOnSinks;
    Published property OnRoutes : TOnRoutesEvent read FOnRoutes write FOnRoutes;
    Published property OnRouteStateChanged : TOnRouteStateChangedEvent read FOnRouteStateChanged write FOnRouteStateChanged;
    Published property OnRouteMessageReceived : TOnRouteMessageReceivedEvent read FOnRouteMessageReceived write FOnRouteMessageReceived;
    Published property OnGetAudioParameters : TOnGetAudioParametersEvent read FOnGetAudioParameters write FOnGetAudioParameters;
    Published property OnAudioStreamStarted : TOnAudioStreamStartedEvent read FOnAudioStreamStarted write FOnAudioStreamStarted;
    Published property OnAudioStreamPacket : TOnAudioStreamPacketEvent read FOnAudioStreamPacket write FOnAudioStreamPacket;
    Published property OnAudioStreamStopped : TOnAudioStreamStoppedEvent read FOnAudioStreamStopped write FOnAudioStreamStopped;
    Published property OnAudioStreamError : TOnAudioStreamErrorEvent read FOnAudioStreamError write FOnAudioStreamError;
    Published property OnDevToolsMessage : TOnDevToolsMessageEvent read FOnDevToolsMessage write FOnDevToolsMessage;
    Published property OnDevToolsRawMessage : TOnDevToolsRawMessageEvent read FOnDevToolsRawMessage write FOnDevToolsRawMessage;
    Published property OnDevToolsMethodResult : TOnDevToolsMethodResultEvent read FOnDevToolsMethodResult write FOnDevToolsMethodResult;
    Published property OnDevToolsMethodRawResult : TOnDevToolsMethodRawResultEvent read FOnDevToolsMethodRawResult write FOnDevToolsMethodRawResult;
    Published property OnDevToolsEvent : TOnDevToolsEventEvent read FOnDevToolsEvent write FOnDevToolsEvent;
    Published property OnDevToolsRawEvent : TOnDevToolsEventRawEvent read FOnDevToolsRawEvent write FOnDevToolsRawEvent;
    Published property OnDevToolsAgentAttached : TOnDevToolsAgentAttachedEvent read FOnDevToolsAgentAttached write FOnDevToolsAgentAttached;
    Published property OnDevToolsAgentDetached : TOnDevToolsAgentDetachedEvent read FOnDevToolsAgentDetached write FOnDevToolsAgentDetached;
    Publishedproperty OnExtensionLoadFailed : TOnExtensionLoadFailedEvent read FOnExtensionLoadFailed write FOnExtensionLoadFailed;
    Publishedproperty OnExtensionLoaded : TOnExtensionLoadedEvent read FOnExtensionLoaded write FOnExtensionLoaded;
    Publishedproperty OnExtensionUnloaded : TOnExtensionUnloadedEvent read FOnExtensionUnloaded write FOnExtensionUnloaded;
    Publishedproperty OnExtensionBeforeBackgroundBrowser : TOnBeforeBackgroundBrowserEvent read FOnExtensionBeforeBackgroundBrowser write FOnExtensionBeforeBackgroundBrowser;
    Publishedproperty OnExtensionBeforeBrowser : TOnBeforeBrowserEvent read FOnExtensionBeforeBrowser write FOnExtensionBeforeBrowser;
    Publishedproperty OnExtensionGetActiveBrowser : TOnGetActiveBrowserEvent read FOnExtensionGetActiveBrowser write FOnExtensionGetActiveBrowser;
    Publishedproperty OnExtensionCanAccessBrowser : TOnCanAccessBrowserEvent read FOnExtensionCanAccessBrowser write FOnExtensionCanAccessBrowser;
    Publishedproperty OnExtensionGetExtensionResource : TOnGetExtensionResourceEvent read FOnExtensionGetExtensionResource write FOnExtensionGetExtensionResource;
    Published property OnFrameCreated : TOnFrameCreated read FOnFrameCreated write FOnFrameCreated;
    Published property OnFrameAttached : TOnFrameAttached read FOnFrameAttached write FOnFrameAttached;
    Published property OnFrameDetached : TOnFrameDetached read FOnFrameDetached write FOnFrameDetached;
    Published property OnMainFrameChanged : TOnMainFrameChanged read FOnMainFrameChanged write FOnMainFrameChanged;
    Published property OnChromeCommand : TOnChromeCommandEvent read FOnChromeCommand write FOnChromeCommand;
    Published property OnIsChromeAppMenuItemVisible : TOnIsChromeAppMenuItemVisibleEvent read FOnIsChromeAppMenuItemVisible write FOnIsChromeAppMenuItemVisible;
    Published property OnIsChromeAppMenuItemEnabled : TOnIsChromeAppMenuItemEnabledEvent read FOnIsChromeAppMenuItemEnabled write FOnIsChromeAppMenuItemEnabled;
    Published property OnIsChromePageActionIconVisible : TOnIsChromePageActionIconVisibleEvent read FOnIsChromePageActionIconVisible write FOnIsChromePageActionIconVisible;
    Published property OnIsChromeToolbarButtonVisible : TOnIsChromeToolbarButtonVisibleEvent read FOnIsChromeToolbarButtonVisible write FOnIsChromeToolbarButtonVisible;
    Published property OnRequestMediaAccessPermission : TOnRequestMediaAccessPermissionEvent read FOnRequestMediaAccessPermission write FOnRequestMediaAccessPermission;
    Published property OnShowPermissionPrompt : TOnShowPermissionPromptEvent read FOnShowPermissionPrompt write FOnShowPermissionPrompt;
    Published property OnDismissPermissionPrompt : TOnDismissPermissionPromptEvent read FOnDismissPermissionPrompt write FOnDismissPermissionPrompt;
    - - - -
    ProtectedFExtensionHandler: ICefExtensionHandler;
    -

    This item has no description.

    - - - + + + +
    Protected FDefaultUrl: ustring;
    @@ -5287,72 +5143,6 @@ ICefDevToolsMessageObserver

    - - - -
    ProtectedFOnExtensionLoadFailed: TOnExtensionLoadFailedEvent;
    -

    -ICefExtensionHandler

    -
    - - - - - - -
    ProtectedFOnExtensionLoaded: TOnExtensionLoadedEvent;
    -

    This item has no description.

    - - - - - - -
    ProtectedFOnExtensionUnloaded: TOnExtensionUnloadedEvent;
    -

    This item has no description.

    - - - - - - -
    ProtectedFOnExtensionBeforeBackgroundBrowser: TOnBeforeBackgroundBrowserEvent;
    -

    This item has no description.

    - - - - - - -
    ProtectedFOnExtensionBeforeBrowser: TOnBeforeBrowserEvent;
    -

    This item has no description.

    - - - - - - -
    ProtectedFOnExtensionGetActiveBrowser: TOnGetActiveBrowserEvent;
    -

    This item has no description.

    - - - - - - -
    ProtectedFOnExtensionCanAccessBrowser: TOnCanAccessBrowserEvent;
    -

    This item has no description.

    - - - - - - -
    ProtectedFOnExtensionGetExtensionResource: TOnGetExtensionResourceEvent;
    -

    This item has no description.

    - - -
    Protected FOnPrintStart: TOnPrintStartEvent;
    @@ -6468,14 +6258,6 @@ Custom

    - - - -
    Protectedprocedure DestroyExtensionHandler;
    -

    This item has no description.

    - - - + + + +
    Protected procedure DestroyAllHandlersAndObservers;
    @@ -6508,14 +6290,6 @@ Custom

    - - - -
    Protectedprocedure CreateExtensionHandler; virtual;
    -

    This item has no description.

    - - - diff --git a/docs/html/uCEFInterfaces.ICefPermissionHandler.html b/docs/html/uCEFInterfaces.ICefPermissionHandler.html index 65ce523a..f2884c80 100644 --- a/docs/html/uCEFInterfaces.ICefPermissionHandler.html +++ b/docs/html/uCEFInterfaces.ICefPermissionHandler.html @@ -58,7 +58,21 @@
    Protected procedure CreateRequestContextHandler; virtual;
    @@ -7710,72 +7484,6 @@ ICefDevToolsMessageObserver

    - - - -
    Protectedprocedure doOnExtensionLoadFailed(result: TCefErrorcode);
    -

    -ICefExtensionHandler

    -
    - - - - - - -
    Protectedprocedure doOnExtensionLoaded(const extension: ICefExtension);
    -

    This item has no description.

    - - - - - - -
    Protectedprocedure doOnExtensionUnloaded(const extension: ICefExtension);
    -

    This item has no description.

    - - - - - - -
    Protectedfunction doOnExtensionBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    -

    This item has no description.

    - - - - - - -
    Protectedfunction doOnExtensionBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    -

    This item has no description.

    - - - - - - -
    Protectedprocedure doOnExtensionGetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser);
    -

    This item has no description.

    - - - - - - -
    Protectedfunction doOnExtensionCanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean;
    -

    This item has no description.

    - - - - - - -
    Protectedfunction doOnExtensionGetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean;
    -

    This item has no description.

    - - -
    Protected procedure doOnPrintStart(const browser: ICefBrowser);
    @@ -8324,14 +8032,6 @@ Custom

    - - - -
    Protectedfunction MustCreateExtensionHandler: boolean; virtual;
    -

    This item has no description.

    - - -
    Protected function MustCreatePrintHandler: boolean; virtual;
    @@ -9612,7 +9312,7 @@ Custom

    - Requests the renderer to exit browser fullscreen. In most cases exiting window fullscreen should also exit browser fullscreen. With the Alloy runtime this function should be called in response to a user action such as clicking the green traffic light button on MacOS (ICefWindowDelegate.OnWindowFullscreenTransition callback) or pressing the "ESC" key (ICefKeyboardHandler.OnPreKeyEvent callback). With the Chrome runtime these standard exit actions are handled internally but new/additional user actions can use this function. Set |will_cause_resize| to true (1) if exiting browser fullscreen will cause a view resize.

    + Requests the renderer to exit browser fullscreen. In most cases exiting window fullscreen should also exit browser fullscreen. With Alloy style this function should be called in response to a user action such as clicking the green traffic light button on MacOS (ICefWindowDelegate.OnWindowFullscreenTransition callback) or pressing the "ESC" key (ICefKeyboardHandler.OnPreKeyEvent callback). With Chrome style these standard exit actions are handled internally but new/additional user actions can use this function. Set |will_cause_resize| to true (1) if exiting browser fullscreen will cause a view resize.

    @@ -9622,7 +9322,7 @@ Custom

    - Returns true (1) if a Chrome command is supported and enabled. Values for |command_id| can be found in the cef_command_ids.h file. This function can only be called on the UI thread. Only used with the Chrome runtime.

    + Returns true (1) if a Chrome command is supported and enabled. Values for |command_id| can be found in the cef_command_ids.h file. This function can only be called on the UI thread. Only used with Chrome style.

    @@ -9638,7 +9338,7 @@ Custom

    - Execute a Chrome command. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Only used with the Chrome runtime.

    + Execute a Chrome command. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Only used with Chrome style.

    @@ -10032,121 +9732,6 @@ Custom

    - - - -
    Publicfunction LoadExtension(const root_directory: ustring; const manifest: ICefDictionaryValue = nil; const handler: ICefExtensionHandler = nil; const requestContext : ICefRequestContext = nil) : boolean; deprecated;
    -

    Warning: this symbol is deprecated.

    - - -

    Load an extension. - -

    If extension resources will be read from disk using the default load implementation then |root_directory| should be the absolute path to the extension resources directory and |manifest| should be NULL. If extension resources will be provided by the client (e.g. via cef_request_handler_t and/or cef_extension_handler_t) then |root_directory| should be a path component unique to the extension (if not absolute this will be internally prefixed with the PK_DIR_RESOURCES path) and |manifest| should contain the contents that would otherwise be read from the "manifest.json" file on disk. - -

    The loaded extension will be accessible in all contexts sharing the same storage (HasExtension returns true (1)). However, only the context on which this function was called is considered the loader (DidLoadExtension returns true (1)) and only the loader will receive TCustomRequestContextHandler callbacks for the extension. - -

    TCustomExtensionHandler.OnExtensionLoaded will be called on load success or TCustomExtensionHandler.OnExtensionLoadFailed will be called on load failure. - -

    If the extension specifies a background script via the "background" manifest key then TCustomExtensionHandler.OnBeforeBackgroundBrowser will be called to create the background browser. See that function for additional information about background scripts. - -

    For visible extension views the client application should evaluate the manifest to determine the correct extension URL to load and then pass that URL to the ICefBrowserHost.CreateBrowser* function after the extension has loaded. For example, the client can look for the "browser_action" manifest key as documented at https://developer.chrome.com/extensions/browserAction. Extension URLs take the form "chrome-extension://<extension_id>/<path>". - -

    Browsers that host extensions differ from normal browsers as follows: - -

    - -
    -- Can access chrome.* JavaScript APIs if allowed by the manifest. Visit
    -  chrome://extensions-support for the list of extension APIs currently
    -  supported by CEF.
    -- Main frame navigation to non-extension content is blocked.
    -- Pinch-zooming is disabled.
    -- ICefBrowserHost.GetExtension returns the hosted extension.
    -- ICefBrowserHost.IsBackgroundHost returns true for background hosts.
    - -

    - -

    See https://developer.chrome.com/extensions for extension implementation and usage documentation. - -

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Publicfunction DidLoadExtension(const extension_id: ustring): boolean; deprecated;
    -

    Warning: this symbol is deprecated.

    - - -

    Returns true (1) if this context was used to load the extension identified by |extension_id|. Other contexts sharing the same storage will also have access to the extension (see HasExtension). This function must be called on the browser process UI thread. - -

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Publicfunction HasExtension(const extension_id: ustring): boolean; deprecated;
    -

    Warning: this symbol is deprecated.

    - - -

    Returns true (1) if this context has access to the extension identified by |extension_id|. This may not be the context that was used to load the extension (see DidLoadExtension). This function must be called on the browser process UI thread. - -

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Publicfunction GetExtensions(const extension_ids: TStringList): boolean; deprecated;
    -

    Warning: this symbol is deprecated.

    - Retrieve the list of all extensions that this context has access to (see HasExtension). |extension_ids| will be populated with the list of extension ID values. Returns true (1) on success. This function must be called on the browser process UI thread. - -

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Publicfunction GetExtension(const extension_id: ustring): ICefExtension; deprecated;
    -

    Warning: this symbol is deprecated.

    - - -

    Returns the extension matching |extension_id| or NULL if no matching extension is accessible in this context (see HasExtension). This function must be called on the browser process UI thread. - -

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - -
    Public function GetWebsiteSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes): ICefValue;
    @@ -10446,16 +10031,6 @@ Custom

    - - - -
    Publicproperty ExtensionHandler : ICefExtensionHandler read FExtensionHandler;
    -

    - Returns a ICefExtensionHandler instance used by the selected browser.

    -
    - - -
    Public property MultithreadApp : boolean read GetMultithreadApp;
    @@ -10700,7 +10275,7 @@ Custom

    - Get the default zoom level. This value will be 0.0 by default but can be configured with the Chrome runtime. This function can only be called on the CEF UI thread.

    + Get the default zoom level. This value will be 0.0 by default but can be configured. This function can only be called on the UI thread.

    @@ -11214,7 +10789,7 @@ Custom

    - Enable the file download bubble when using the Chrome runtime.

    + Enable the file download bubble when using Chrome style.

    @@ -11792,7 +11367,7 @@ Custom

    - Called when web content in the page has toggled fullscreen mode. If |fullscreen| is true (1) the content will automatically be sized to fill the browser content area. If |fullscreen| is false (0) the content will automatically return to its original size and position. With the Alloy runtime the client is responsible for triggering the fullscreen transition (for example, by calling ICefWindow.SetFullscreen when using Views). With the Chrome runtime the fullscreen transition will be triggered automatically. The ICefWindowDelegate.OnWindowFullscreenTransition function will be called during the fullscreen transition for notification purposes.

    + Called when web content in the page has toggled fullscreen mode. If |fullscreen| is true (1) the content will automatically be sized to fill the browser content area. If |fullscreen| is false (0) the content will automatically return to its original size and position. With Alloy style the client is responsible for triggering the fullscreen transition (for example, by calling ICefWindow.SetFullscreen when using Views). With Chrome style the fullscreen transition will be triggered automatically. The ICefWindowDelegate.OnWindowFullscreenTransition function will be called during the fullscreen transition for notification purposes.

    @@ -12054,7 +11629,7 @@ Custom

    The |extra_info| parameter provides an opportunity to specify extra information specific to the created popup browser that will be passed to ICefRenderProcessHandler.OnBrowserCreated() in the render process. The existing |extra_info| object, if any, will be read-only but may be replaced with a new object. -

    Views-hosted source browsers will create Views-hosted DevTools popups unless |use_default_window| is set to to true (1). DevTools popups can be blocked by returning true (1) from ICefCommandHandler.OnChromeCommand for IDC_DEV_TOOLS. Only used with the Chrome runtime. +

    Views-hosted source browsers will create Views-hosted DevTools popups unless |use_default_window| is set to to true (1). DevTools popups can be blocked by returning true (1) from ICefCommandHandler.OnChromeCommand for IDC_DEV_TOOLS. Only used with Chrome style.

    @@ -12290,7 +11865,7 @@ Custom

    - Called on the browser process UI thread when the render process is unresponsive as indicated by a lack of input event processing for at least 15 seconds. Return false (0) for the default behavior which is an indefinite wait with the Alloy runtime or display of the "Page unresponsive" dialog with the Chrome runtime. Return true (1) and don't execute the callback for an indefinite wait without display of the Chrome runtime dialog. Return true (1) and call ICefUnresponsiveProcessCallback.Wait either in this function or at a later time to reset the wait timer, potentially triggering another call to this function if the process remains unresponsive. Return true (1) and call ICefUnresponsiveProcessCallback.Terminate either in this function or at a later time to terminate the unresponsive process, resulting in a call to OnRenderProcessTerminated. OnRenderProcessResponsive will be called if the process becomes responsive after this function is called. This functionality depends on the hang monitor which can be disabled by passing the `–disable-hang-monitor` command-line flag or setting GlobalCEFApp.DisableHangMonitor to True.

    + Called on the browser process UI thread when the render process is unresponsive as indicated by a lack of input event processing for at least 15 seconds. Return false (0) for the default behavior which is an indefinite wait with Alloy style or display of the "Page unresponsive" dialog with Chrome style. Return true (1) and don't execute the callback for an indefinite wait without display of the Chrome style dialog. Return true (1) and call ICefUnresponsiveProcessCallback.Wait either in this function or at a later time to reset the wait timer, potentially triggering another call to this function if the process remains unresponsive. Return true (1) and call ICefUnresponsiveProcessCallback.Terminate either in this function or at a later time to terminate the unresponsive process, resulting in a call to OnRenderProcessTerminated. OnRenderProcessResponsive will be called if the process becomes responsive after this function is called. This functionality depends on the hang monitor which can be disabled by passing the `–disable-hang-monitor` command-line flag.

    @@ -13224,150 +12799,6 @@ Custom

    - - - -
    Publishedproperty OnExtensionLoadFailed : TOnExtensionLoadFailedEvent read FOnExtensionLoadFailed write FOnExtensionLoadFailed;
    -

    - Called if the ICefRequestContext.LoadExtension request fails. |result| will be the error code.

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127. - -

    This event will be called on the browser process CEF UI thread. - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t))

    -
    - - - - - - -
    Publishedproperty OnExtensionLoaded : TOnExtensionLoadedEvent read FOnExtensionLoaded write FOnExtensionLoaded;
    -

    - Called if the ICefRequestContext.LoadExtension request succeeds. |extension| is the loaded extension.

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127. - -

    This event will be called on the browser process CEF UI thread. - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t))

    -
    - - - - - - -
    Publishedproperty OnExtensionUnloaded : TOnExtensionUnloadedEvent read FOnExtensionUnloaded write FOnExtensionUnloaded;
    -

    - Called after the ICefExtension.Unload request has completed.

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127. - -

    This event will be called on the browser process CEF UI thread. - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t))

    -
    - - - - - - -
    Publishedproperty OnExtensionBeforeBackgroundBrowser : TOnBeforeBackgroundBrowserEvent read FOnExtensionBeforeBackgroundBrowser write FOnExtensionBeforeBackgroundBrowser;
    -

    - Called when an extension needs a browser to host a background script specified via the "background" manifest key. The browser will have no visible window and cannot be displayed. |extension| is the extension that is loading the background script. |url| is an internally generated reference to an HTML page that will be used to load the background script via a "<script>" src attribute. To allow creation of the browser optionally modify |client| and |settings| and return false (0). To cancel creation of the browser (and consequently cancel load of the background script) return true (1). Successful creation will be indicated by a call to ICefLifeSpanHandler.OnAfterCreated, and ICefBrowserHost.IsBackgroundHost will return true (1) for the resulting browser. See https://developer.chrome.com/extensions/event_pages for more information about extension background script usage.

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127. - -

    This event will be called on the browser process CEF UI thread. - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t))

    -
    - - - - - - -
    Publishedproperty OnExtensionBeforeBrowser : TOnBeforeBrowserEvent read FOnExtensionBeforeBrowser write FOnExtensionBeforeBrowser;
    -

    - Called when an extension API (e.g. chrome.tabs.create) requests creation of a new browser. |extension| and |browser| are the source of the API call. |active_browser| may optionally be specified via the windowId property or returned via the get_active_browser() callback and provides the default |client| and |settings| values for the new browser. |index| is the position value optionally specified via the index property. |url| is the URL that will be loaded in the browser. |active| is true (1) if the new browser should be active when opened. To allow creation of the browser optionally modify |windowInfo|, |client| and |settings| and return false (0). To cancel creation of the browser return true (1). Successful creation will be indicated by a call to ICefLifeSpanHandler.OnAfterCreated. Any modifications to |windowInfo| will be ignored if |active_browser| is wrapped in a ICefBrowserView.

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127. - -

    This event will be called on the browser process CEF UI thread. - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t))

    -
    - - - - - - -
    Publishedproperty OnExtensionGetActiveBrowser : TOnGetActiveBrowserEvent read FOnExtensionGetActiveBrowser write FOnExtensionGetActiveBrowser;
    -

    - Called when no tabId is specified to an extension API call that accepts a tabId parameter (e.g. chrome.tabs.*). |extension| and |browser| are the source of the API call. Return the browser that will be acted on by the API call or return NULL to act on |browser|. The returned browser must share the same ICefRequestContext as |browser|. Incognito browsers should not be considered unless the source extension has incognito access enabled, in which case |include_incognito| will be true (1).

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127. - -

    This event will be called on the browser process CEF UI thread. - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t))

    -
    - - - - - - -
    Publishedproperty OnExtensionCanAccessBrowser : TOnCanAccessBrowserEvent read FOnExtensionCanAccessBrowser write FOnExtensionCanAccessBrowser;
    -

    - Called when the tabId associated with |target_browser| is specified to an extension API call that accepts a tabId parameter (e.g. chrome.tabs.*). |extension| and |browser| are the source of the API call. Return true (1) to allow access of false (0) to deny access. Access to incognito browsers should not be allowed unless the source extension has incognito access enabled, in which case |include_incognito| will be true (1).

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127. - -

    This event will be called on the browser process CEF UI thread. - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t))

    -
    - - - - - - -
    Publishedproperty OnExtensionGetExtensionResource : TOnGetExtensionResourceEvent read FOnExtensionGetExtensionResource write FOnExtensionGetExtensionResource;
    -

    - Called to retrieve an extension resource that would normally be loaded from disk (e.g. if a file parameter is specified to chrome.tabs.executeScript). |extension| and |browser| are the source of the resource request. |file| is the requested relative file path. To handle the resource request return true (1) and execute |callback| either synchronously or asynchronously. For the default behavior which reads the resource from the extension directory on disk return false (0). Localization substitutions will not be applied to resources handled via this function.

    -

    - - -

    WARNING: This function is deprecated and will be removed in ~M127. - -

    This event will be called on the browser process CEF UI thread. - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t))

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -1173,64 +1149,6 @@ ICefDevToolsMessageObserver

    Published property OnFrameCreated : TOnFrameCreated read FOnFrameCreated write FOnFrameCreated;
    @@ -13440,7 +12871,7 @@ Custom

    -

    Only used with the Chrome runtime. +

    Only used with Chrome style.

    This event will be called on the browser process CEF UI thread. @@ -13458,7 +12889,7 @@ Custom

    -

    Only used with the Chrome runtime. +

    Only used with Chrome style.

    This event will be called on the browser process CEF UI thread. @@ -13476,7 +12907,7 @@ Custom

    -

    Only used with the Chrome runtime. +

    Only used with Chrome style.

    This event will be called on the browser process CEF UI thread. @@ -13494,7 +12925,7 @@ Custom

    -

    Only used with the Chrome runtime. +

    Only used with Chrome style.

    This event will be called on the browser process CEF UI thread. @@ -13512,7 +12943,7 @@ Custom

    -

    Only used with the Chrome runtime. +

    Only used with Chrome style.

    This event will be called on the browser process CEF UI thread. @@ -13528,11 +12959,17 @@ Custom

    -

    Called when a page requests permission to access media. |requesting_origin| is the URL origin requesting permission. +

    Called when a page requests permission to access media. -

    |requested_permissions| is a combination of values from TCefMediaAccessPermissionTypes that represent the requested permissions. Return true (1) and call ICefMediaAccessCallback functions either in this function or at a later time to continue or cancel the request. Return false (0) to proceed with default handling. With the Chrome runtime, default handling will display the permission request UI. +

    |requesting_origin| is the URL origin requesting permission. -

    With the Alloy runtime, default handling will deny the request. This function will not be called if the "–enable-media-stream" command-line switch is used to grant all permissions. +

    |requested_permissions| is a combination of values from TCefMediaAccessPermissionTypes that represent the requested permissions. + +

    Return true (1) and call ICefMediaAccessCallback functions either in this function or at a later time to continue or cancel the request. + +

    Return false (0) to proceed with default handling. With Chrome style, default handling will display the permission request UI. + +

    With Alloy style, default handling will deny the request. This function will not be called if the "–enable-media-stream" command-line switch is used to grant all permissions.

    @@ -13556,7 +12993,7 @@ Custom

    Return true (1) and call ICefPermissionPromptCallback.Continue either in this function or at a later time to continue or cancel the request. -

    Return false (0) to proceed with default handling. With the Chrome runtime, default handling will display the permission prompt UI. With the Alloy runtime, default handling is CEF_PERMISSION_RESULT_IGNORE. +

    Return false (0) to proceed with default handling. With Chrome style, default handling will display the permission prompt UI. With Alloy style, default handling is CEF_PERMISSION_RESULT_IGNORE.

    diff --git a/docs/html/uCEFChromiumEvents.html b/docs/html/uCEFChromiumEvents.html index d2ae5423..74733675 100644 --- a/docs/html/uCEFChromiumEvents.html +++ b/docs/html/uCEFChromiumEvents.html @@ -313,30 +313,6 @@

    TOnDevToolsAgentDetachedEvent = procedure(Sender: TObject; const browser: ICefBrowser) of object;
    TOnExtensionLoadFailedEvent = procedure(Sender: TObject; result: TCefErrorcode) of object;
    TOnExtensionLoadedEvent = procedure(Sender: TObject; const extension: ICefExtension) of object;
    TOnExtensionUnloadedEvent = procedure(Sender: TObject; const extension: ICefExtension) of object;
    TOnBeforeBackgroundBrowserEvent = procedure(Sender: TObject; const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings; var aResult : boolean) of object;
    TOnBeforeBrowserEvent = procedure(Sender: TObject; const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings; var aResult : boolean) of object;
    TOnGetActiveBrowserEvent = procedure(Sender: TObject; const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser : ICefBrowser) of object;
    TOnCanAccessBrowserEvent = procedure(Sender: TObject; const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser; var aResult : boolean) of object;
    TOnGetExtensionResourceEvent = procedure(Sender: TObject; const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback; var aResult : boolean) of object;
    TOnPrintStartEvent = procedure(Sender: TObject; const browser: ICefBrowser) of object;
    - - - -
    TOnExtensionLoadFailedEvent = procedure(Sender: TObject; result: TCefErrorcode) of object;
    -

    -ICefExtensionHandler

    -
    - - - - - -
    TOnExtensionLoadedEvent = procedure(Sender: TObject; const extension: ICefExtension) of object;
    -

    This item has no description.

    - - - - - -
    TOnExtensionUnloadedEvent = procedure(Sender: TObject; const extension: ICefExtension) of object;
    -

    This item has no description.

    - - - - - -
    TOnBeforeBackgroundBrowserEvent = procedure(Sender: TObject; const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings; var aResult : boolean) of object;
    -

    This item has no description.

    - - - - - -
    TOnBeforeBrowserEvent = procedure(Sender: TObject; const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings; var aResult : boolean) of object;
    -

    This item has no description.

    - - - - - -
    TOnGetActiveBrowserEvent = procedure(Sender: TObject; const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser : ICefBrowser) of object;
    -

    This item has no description.

    - - - - - -
    TOnCanAccessBrowserEvent = procedure(Sender: TObject; const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser; var aResult : boolean) of object;
    -

    This item has no description.

    - - - - - -
    TOnGetExtensionResourceEvent = procedure(Sender: TObject; const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback; var aResult : boolean) of object;
    -

    This item has no description.

    - -
    TOnPrintStartEvent = procedure(Sender: TObject; const browser: ICefBrowser) of object;
    diff --git a/docs/html/uCEFChromiumOptions.TChromiumOptions.html b/docs/html/uCEFChromiumOptions.TChromiumOptions.html index f3dcf470..d95ee56a 100644 --- a/docs/html/uCEFChromiumOptions.TChromiumOptions.html +++ b/docs/html/uCEFChromiumOptions.TChromiumOptions.html @@ -434,7 +434,7 @@

    - Controls whether the Chrome status bubble will be used. Only supported with the Chrome runtime. For details about the status bubble see https://www.chromium.org/user-experience/status-bubble/

    + Controls whether the Chrome status bubble will be used. Only supported with Chrome style. For details about the status bubble see https://www.chromium.org/user-experience/status-bubble/

    @@ -444,7 +444,7 @@

    - Controls whether the Chrome zoom bubble will be shown when zooming. Only supported with the Chrome runtime.

    + Controls whether the Chrome zoom bubble will be shown when zooming. Only supported with Chrome style.


    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFCommandHandler.TCefCommandHandlerOwn.html b/docs/html/uCEFCommandHandler.TCefCommandHandlerOwn.html index 012a5154..a07e79f9 100644 --- a/docs/html/uCEFCommandHandler.TCefCommandHandlerOwn.html +++ b/docs/html/uCEFCommandHandler.TCefCommandHandlerOwn.html @@ -62,7 +62,7 @@

    This item has no description. Showing description inherited from ICefCommandHandler.OnChromeCommand.

    - Called to execute a Chrome command triggered via menu selection or keyboard shortcut. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Return true (1) if the command was handled or false (0) for the default implementation. For context menu commands this will be called after ICefContextMenuHandler.OnContextMenuCommand. Only used with the Chrome runtime.

    + Called to execute a Chrome command triggered via menu selection or keyboard shortcut. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Return true (1) if the command was handled or false (0) for the default implementation. For context menu commands this will be called after ICefContextMenuHandler.OnContextMenuCommand. Only used with Chrome style.

    @@ -72,7 +72,7 @@

    This item has no description. Showing description inherited from ICefCommandHandler.OnIsChromeAppMenuItemVisible.

    - Called to check if a Chrome app menu item should be visible. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be visible by default. Only used with the Chrome runtime.

    + Called to check if a Chrome app menu item should be visible. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be visible by default. Only used with Chrome style.

    @@ -82,7 +82,7 @@

    This item has no description. Showing description inherited from ICefCommandHandler.OnIsChromeAppMenuItemEnabled.

    - Called to check if a Chrome app menu item should be enabled. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be enabled by default. Only used with the Chrome runtime.

    + Called to check if a Chrome app menu item should be enabled. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be enabled by default. Only used with Chrome style.

    @@ -92,7 +92,7 @@

    This item has no description. Showing description inherited from ICefCommandHandler.OnIsChromePageActionIconVisible.

    - Called during browser creation to check if a Chrome page action icon should be visible. Only called for icons that would be visible by default. Only used with the Chrome runtime.

    + Called during browser creation to check if a Chrome page action icon should be visible. Only called for icons that would be visible by default. Only used with Chrome style.

    @@ -102,7 +102,7 @@

    This item has no description. Showing description inherited from ICefCommandHandler.OnIsChromeToolbarButtonVisible.

    - Called during browser creation to check if a Chrome toolbar button should be visible. Only called for buttons that would be visible by default. Only used with the Chrome runtime.

    + Called during browser creation to check if a Chrome toolbar button should be visible. Only called for buttons that would be visible by default. Only used with Chrome style.

    diff --git a/docs/html/uCEFCommandHandler.TCustomCommandHandler.html b/docs/html/uCEFCommandHandler.TCustomCommandHandler.html index ebbff1b8..fb794401 100644 --- a/docs/html/uCEFCommandHandler.TCustomCommandHandler.html +++ b/docs/html/uCEFCommandHandler.TCustomCommandHandler.html @@ -83,7 +83,7 @@

    This item has no description. Showing description inherited from ICefCommandHandler.OnChromeCommand.

    - Called to execute a Chrome command triggered via menu selection or keyboard shortcut. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Return true (1) if the command was handled or false (0) for the default implementation. For context menu commands this will be called after ICefContextMenuHandler.OnContextMenuCommand. Only used with the Chrome runtime.

    + Called to execute a Chrome command triggered via menu selection or keyboard shortcut. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Return true (1) if the command was handled or false (0) for the default implementation. For context menu commands this will be called after ICefContextMenuHandler.OnContextMenuCommand. Only used with Chrome style.

    @@ -93,7 +93,7 @@

    This item has no description. Showing description inherited from ICefCommandHandler.OnIsChromeAppMenuItemVisible.

    - Called to check if a Chrome app menu item should be visible. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be visible by default. Only used with the Chrome runtime.

    + Called to check if a Chrome app menu item should be visible. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be visible by default. Only used with Chrome style.

    @@ -103,7 +103,7 @@

    This item has no description. Showing description inherited from ICefCommandHandler.OnIsChromeAppMenuItemEnabled.

    - Called to check if a Chrome app menu item should be enabled. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be enabled by default. Only used with the Chrome runtime.

    + Called to check if a Chrome app menu item should be enabled. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be enabled by default. Only used with Chrome style.

    @@ -113,7 +113,7 @@

    This item has no description. Showing description inherited from ICefCommandHandler.OnIsChromePageActionIconVisible.

    - Called during browser creation to check if a Chrome page action icon should be visible. Only called for icons that would be visible by default. Only used with the Chrome runtime.

    + Called during browser creation to check if a Chrome page action icon should be visible. Only called for icons that would be visible by default. Only used with Chrome style.

    @@ -123,7 +123,7 @@

    This item has no description. Showing description inherited from ICefCommandHandler.OnIsChromeToolbarButtonVisible.

    - Called during browser creation to check if a Chrome toolbar button should be visible. Only called for buttons that would be visible by default. Only used with the Chrome runtime.

    + Called during browser creation to check if a Chrome toolbar button should be visible. Only called for buttons that would be visible by default. Only used with Chrome style.

    diff --git a/docs/html/uCEFConstants.html b/docs/html/uCEFConstants.html index 281caefc..c1939b68 100644 --- a/docs/html/uCEFConstants.html +++ b/docs/html/uCEFConstants.html @@ -3303,6 +3303,9 @@ + + +
    pfidLinux = pidLinux64;
    CEF_ONEDAYINMILLISECONDS = 86400000;

    Description

    Constants

    @@ -7992,7 +7995,7 @@ Not configurable

    - User got to this page through a suggestion in the UI (for example, via the destinations page). Chrome runtime only.

    + User got to this page through a suggestion in the UI (for example, via the destinations page). Chrome style only.

    @@ -8037,7 +8040,7 @@ Not configurable

    - User got to this page by typing in the URL bar and selecting an entry that did not look like a URL. For example, a match might have the URL of a Google search result page, but appear like "Search Google for ...". These are not quite the same as EXPLICIT navigations because the user didn't type or see the destination URL. Chrome runtime only. See also TT_KEYWORD.

    + User got to this page by typing in the URL bar and selecting an entry that did not look like a URL. For example, a match might have the URL of a Google search result page, but appear like "Search Google for ...". These are not quite the same as EXPLICIT navigations because the user didn't type or see the destination URL. Chrome style only. See also TT_KEYWORD.

    @@ -8052,7 +8055,7 @@ Not configurable

    - This is a toplevel navigation. This is any content that is automatically loaded in a toplevel frame. For example, opening a tab to show the ASH screen saver, opening the devtools window, opening the NTP after the safe browsing warning, opening web-based dialog boxes are examples of AUTO_TOPLEVEL navigations. Chrome runtime only.

    + This is a toplevel navigation. This is any content that is automatically loaded in a toplevel frame. For example, opening a tab to show the ASH screen saver, opening the devtools window, opening the NTP after the safe browsing warning, opening web-based dialog boxes are examples of AUTO_TOPLEVEL navigations. Chrome style only.

    @@ -8097,7 +8100,7 @@ Not configurable

    - The url was generated from a replaceable keyword other than the default search provider. If the user types a keyword (which also applies to tab-to-search) in the omnibox this qualifier is applied to the transition type of the generated url. TemplateURLModel then may generate an additional visit with a transition type of TT_KEYWORD_GENERATED against the url 'http://' + keyword. For example, if you do a tab-to-search against wikipedia the generated url has a transition qualifer of TT_KEYWORD, and TemplateURLModel generates a visit for 'wikipedia.org' with a transition type of TT_KEYWORD_GENERATED. Chrome runtime only.

    + The url was generated from a replaceable keyword other than the default search provider. If the user types a keyword (which also applies to tab-to-search) in the omnibox this qualifier is applied to the transition type of the generated url. TemplateURLModel then may generate an additional visit with a transition type of TT_KEYWORD_GENERATED against the url 'http://' + keyword. For example, if you do a tab-to-search against wikipedia the generated url has a transition qualifer of TT_KEYWORD, and TemplateURLModel generates a visit for 'wikipedia.org' with a transition type of TT_KEYWORD_GENERATED. Chrome style only.

    @@ -8112,7 +8115,7 @@ Not configurable

    - Corresponds to a visit generated for a keyword. See description of TT_KEYWORD for more details. Chrome runtime only.

    + Corresponds to a visit generated for a keyword. See description of TT_KEYWORD for more details. Chrome style only.

    @@ -8187,7 +8190,7 @@ Not configurable

    - User is navigating to the home page. Chrome runtime only.

    + User is navigating to the home page. Chrome style only.

    @@ -8202,7 +8205,7 @@ Not configurable

    - The transition originated from an external application; the exact definition of this is embedder dependent. Chrome runtime and extension system only.

    + The transition originated from an external application; the exact definition of this is embedder dependent. Chrome style only.

    @@ -10618,7 +10621,7 @@ Custom menu items originating from the renderer process.

    - Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with the Chrome runtime. Should be kept in sync with Chromium's permissions::RequestType type.

    + Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with Chrome style. Should be kept in sync with Chromium's permissions::RequestType type.

    @@ -13008,6 +13011,19 @@ If any of the platform IDs are not defined then we set them as 0 to avoid build

    This item has no description.

    + + + + + +
    CEF_ONEDAYINMILLISECONDS = 86400000;
    +

    + This value may be used with the mseconds_between_dumps parameter in GlobalCEFApp.DumpWithoutCrashing.

    +

    + + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/base/cef_dump_without_crashing.h">CEF source file: /include/base/cef_dump_without_crashing.h (kOneDayInMilliseconds))

    +

    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFDisplayHandler.TCefDisplayHandlerOwn.html b/docs/html/uCEFDisplayHandler.TCefDisplayHandlerOwn.html index 89a07eed..de954ab2 100644 --- a/docs/html/uCEFDisplayHandler.TCefDisplayHandlerOwn.html +++ b/docs/html/uCEFDisplayHandler.TCefDisplayHandlerOwn.html @@ -122,7 +122,7 @@

    - Called when web content in the page has toggled fullscreen mode. If |fullscreen| is true (1) the content will automatically be sized to fill the browser content area. If |fullscreen| is false (0) the content will automatically return to its original size and position. With the Alloy runtime the client is responsible for triggering the fullscreen transition (for example, by calling cef_window_t::SetFullscreen when using Views). With the Chrome runtime the fullscreen transition will be triggered automatically. The cef_window_delegate_t::OnWindowFullscreenTransition function will be called during the fullscreen transition for notification purposes.

    + Called when web content in the page has toggled fullscreen mode. If |fullscreen| is true (1) the content will automatically be sized to fill the browser content area. If |fullscreen| is false (0) the content will automatically return to its original size and position. With Alloy style the client is responsible for triggering the fullscreen transition (for example, by calling ICefWindow.SetFullscreen when using Views). With Chrome style the fullscreen transition will be triggered automatically. The ICefWindowDelegate.OnWindowFullscreenTransition function will be called during the fullscreen transition for notification purposes.

    diff --git a/docs/html/uCEFDisplayHandler.TCustomDisplayHandler.html b/docs/html/uCEFDisplayHandler.TCustomDisplayHandler.html index 4162c567..297598d2 100644 --- a/docs/html/uCEFDisplayHandler.TCustomDisplayHandler.html +++ b/docs/html/uCEFDisplayHandler.TCustomDisplayHandler.html @@ -141,7 +141,7 @@

    This item has no description. Showing description inherited from TCefDisplayHandlerOwn.OnFullScreenModeChange.

    - Called when web content in the page has toggled fullscreen mode. If |fullscreen| is true (1) the content will automatically be sized to fill the browser content area. If |fullscreen| is false (0) the content will automatically return to its original size and position. With the Alloy runtime the client is responsible for triggering the fullscreen transition (for example, by calling cef_window_t::SetFullscreen when using Views). With the Chrome runtime the fullscreen transition will be triggered automatically. The cef_window_delegate_t::OnWindowFullscreenTransition function will be called during the fullscreen transition for notification purposes.

    + Called when web content in the page has toggled fullscreen mode. If |fullscreen| is true (1) the content will automatically be sized to fill the browser content area. If |fullscreen| is false (0) the content will automatically return to its original size and position. With Alloy style the client is responsible for triggering the fullscreen transition (for example, by calling ICefWindow.SetFullscreen when using Views). With Chrome style the fullscreen transition will be triggered automatically. The ICefWindowDelegate.OnWindowFullscreenTransition function will be called during the fullscreen transition for notification purposes.

    diff --git a/docs/html/uCEFExtension.TCefExtensionRef.html b/docs/html/uCEFExtension.TCefExtensionRef.html deleted file mode 100644 index 90dd45bb..00000000 --- a/docs/html/uCEFExtension.TCefExtensionRef.html +++ /dev/null @@ -1,276 +0,0 @@ - - - -cef4delphi: uCEFExtension: Class TCefExtensionRef - - - - - - -

    Class TCefExtensionRef

    -
    -
    Fields
    Properties
    -

    Unit

    - -

    Declaration

    -

    -type TCefExtensionRef = class(TCefBaseRefCountedRef, ICefExtension)

    -

    Description

    -

    This item has no description.

    Hierarchy

    -

    Overview

    -

    Methods

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Protectedfunction GetIdentifier: ustring;
    Protectedfunction GetPath: ustring;
    Protectedfunction GetManifest: ICefDictionaryValue;
    Protectedfunction IsSame(const that : ICefExtension) : boolean;
    Protectedfunction GetHandler: ICefExtensionHandler;
    Protectedfunction GetLoaderContext: ICefRequestContext;
    Protectedfunction IsLoaded: boolean;
    Protectedprocedure unload;
    Protectedfunction GetPopup(const aParent : ustring) : ustring;
    Protectedfunction GetIcon(const aParent : ustring) : ustring;
    Protectedfunction GetBrowserActionPopup: ustring;
    Protectedfunction GetBrowserActionIcon: ustring;
    Protectedfunction GetPageActionPopup: ustring;
    Protectedfunction GetPageActionIcon: ustring;
    Protectedfunction GetOptionsPage: ustring;
    Protectedfunction GetOptionsUIPage: ustring;
    Protectedfunction GetBackgroundPage: ustring;
    Protectedfunction GetURL: ustring;
    Publicclass function UnWrap(data: Pointer): ICefExtension;
    -

    Description

    -

    Methods

    - - - - - - -
    Protectedfunction GetIdentifier: ustring;
    -

    This item has no description. Showing description inherited from ICefExtension.GetIdentifier.

    - Returns the unique extension identifier. This is calculated based on the extension public key, if available, or on the extension path. See https://developer.chrome.com/extensions/manifest/key for details.

    -
    - - - - - - -
    Protectedfunction GetPath: ustring;
    -

    This item has no description. Showing description inherited from ICefExtension.GetPath.

    - Returns the absolute path to the extension directory on disk. This value will be prefixed with PK_DIR_RESOURCES if a relative path was passed to ICefRequestContext.LoadExtension.

    -
    - - - - - - -
    Protectedfunction GetManifest: ICefDictionaryValue;
    -

    This item has no description. Showing description inherited from ICefExtension.GetManifest.

    - Returns the extension manifest contents as a ICefDictionaryValue object. See https://developer.chrome.com/extensions/manifest for details.

    -
    - - - - - - -
    Protectedfunction IsSame(const that : ICefExtension) : boolean;
    -

    This item has no description. Showing description inherited from ICefExtension.IsSame.

    - Returns true (1) if this object is the same extension as |that| object. Extensions are considered the same if identifier, path and loader context match.

    -
    - - - - - - -
    Protectedfunction GetHandler: ICefExtensionHandler;
    -

    This item has no description. Showing description inherited from ICefExtension.GetHandler.

    - Returns the handler for this extension. Will return NULL for internal extensions or if no handler was passed to ICefRequestContext.LoadExtension.

    -
    - - - - - - -
    Protectedfunction GetLoaderContext: ICefRequestContext;
    -

    This item has no description. Showing description inherited from ICefExtension.GetLoaderContext.

    - Returns the request context that loaded this extension. Will return NULL for internal extensions or if the extension has been unloaded. See the ICefRequestContext.LoadExtension documentation for more information about loader contexts. Must be called on the browser process UI thread.

    -
    - - - - - - -
    Protectedfunction IsLoaded: boolean;
    -

    This item has no description. Showing description inherited from ICefExtension.IsLoaded.

    - Returns true (1) if this extension is currently loaded. Must be called on the browser process UI thread.

    -
    - - - - - - -
    Protectedprocedure unload;
    -

    This item has no description. Showing description inherited from ICefExtension.unload.

    - Unload this extension if it is not an internal extension and is currently loaded. Will result in a call to ICefExtensionHandler.OnExtensionUnloaded on success.

    -
    - - - - - - -
    Protectedfunction GetPopup(const aParent : ustring) : ustring;
    -

    This item has no description.

    - - - - - - -
    Protectedfunction GetIcon(const aParent : ustring) : ustring;
    -

    This item has no description.

    - - - - - - -
    Protectedfunction GetBrowserActionPopup: ustring;
    -

    This item has no description.

    - - - - - - -
    Protectedfunction GetBrowserActionIcon: ustring;
    -

    This item has no description.

    - - - - - - -
    Protectedfunction GetPageActionPopup: ustring;
    -

    This item has no description.

    - - - - - - -
    Protectedfunction GetPageActionIcon: ustring;
    -

    This item has no description.

    - - - - - - -
    Protectedfunction GetOptionsPage: ustring;
    -

    This item has no description.

    - - - - - - -
    Protectedfunction GetOptionsUIPage: ustring;
    -

    This item has no description.

    - - - - - - -
    Protectedfunction GetBackgroundPage: ustring;
    -

    This item has no description.

    - - - - - - -
    Protectedfunction GetURL: ustring;
    -

    This item has no description.

    - - - - - - -
    Publicclass function UnWrap(data: Pointer): ICefExtension;
    -

    This item has no description.

    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFExtensionHandler.TCefExtensionHandlerOwn.html b/docs/html/uCEFExtensionHandler.TCefExtensionHandlerOwn.html deleted file mode 100644 index 78faf617..00000000 --- a/docs/html/uCEFExtensionHandler.TCefExtensionHandlerOwn.html +++ /dev/null @@ -1,170 +0,0 @@ - - - -cef4delphi: uCEFExtensionHandler: Class TCefExtensionHandlerOwn - - - - - - -

    Class TCefExtensionHandlerOwn

    -
    -
    Fields
    Properties
    -

    Unit

    - -

    Declaration

    -

    -type TCefExtensionHandlerOwn = class(TCefBaseRefCountedOwn, ICefExtensionHandler)

    -

    Description

    -

    This item has no description.

    Hierarchy

    -

    Overview

    -

    Methods

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Protectedprocedure OnExtensionLoadFailed(result: TCefErrorcode); virtual;
    Protectedprocedure OnExtensionLoaded(const extension: ICefExtension); virtual;
    Protectedprocedure OnExtensionUnloaded(const extension: ICefExtension); virtual;
    Protectedfunction OnBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean; virtual;
    Protectedfunction OnBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean; virtual;
    Protectedprocedure GetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser); virtual;
    Protectedfunction CanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean; virtual;
    Protectedfunction GetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean; virtual;
    Protectedprocedure RemoveReferences; virtual;
    Publicconstructor Create; virtual;
    -

    Description

    -

    Methods

    - - - - - - -
    Protectedprocedure OnExtensionLoadFailed(result: TCefErrorcode); virtual;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnExtensionLoadFailed.

    - Called if the ICefRequestContext.LoadExtension request fails. |result| will be the error code.

    -
    - - - - - - -
    Protectedprocedure OnExtensionLoaded(const extension: ICefExtension); virtual;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnExtensionLoaded.

    - Called if the ICefRequestContext.LoadExtension request succeeds. |extension| is the loaded extension.

    -
    - - - - - - -
    Protectedprocedure OnExtensionUnloaded(const extension: ICefExtension); virtual;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnExtensionUnloaded.

    - Called after the ICefExtension.Unload request has completed.

    -
    - - - - - - -
    Protectedfunction OnBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean; virtual;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnBeforeBackgroundBrowser.

    - Called when an extension needs a browser to host a background script specified via the "background" manifest key. The browser will have no visible window and cannot be displayed. |extension| is the extension that is loading the background script. |url| is an internally generated reference to an HTML page that will be used to load the background script via a "<script>" src attribute. To allow creation of the browser optionally modify |client| and |settings| and return false (0). To cancel creation of the browser (and consequently cancel load of the background script) return true (1). Successful creation will be indicated by a call to ICefLifeSpanHandler.OnAfterCreated, and ICefBrowserHost.IsBackgroundHost will return true (1) for the resulting browser. See https://developer.chrome.com/extensions/event_pages for more information about extension background script usage.

    -
    - - - - - - -
    Protectedfunction OnBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean; virtual;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnBeforeBrowser.

    - Called when an extension API (e.g. chrome.tabs.create) requests creation of a new browser. |extension| and |browser| are the source of the API call. |active_browser| may optionally be specified via the windowId property or returned via the get_active_browser() callback and provides the default |client| and |settings| values for the new browser. |index| is the position value optionally specified via the index property. |url| is the URL that will be loaded in the browser. |active| is true (1) if the new browser should be active when opened. To allow creation of the browser optionally modify |windowInfo|, |client| and |settings| and return false (0). To cancel creation of the browser return true (1). Successful creation will be indicated by a call to ICefLifeSpanHandler.OnAfterCreated. Any modifications to |windowInfo| will be ignored if |active_browser| is wrapped in a ICefBrowserView.

    -
    - - - - - - -
    Protectedprocedure GetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser); virtual;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.GetActiveBrowser.

    - Called when no tabId is specified to an extension API call that accepts a tabId parameter (e.g. chrome.tabs.*). |extension| and |browser| are the source of the API call. Return the browser that will be acted on by the API call or return NULL to act on |browser|. The returned browser must share the same ICefRequestContext as |browser|. Incognito browsers should not be considered unless the source extension has incognito access enabled, in which case |include_incognito| will be true (1).

    -
    - - - - - - -
    Protectedfunction CanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean; virtual;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.CanAccessBrowser.

    - Called when the tabId associated with |target_browser| is specified to an extension API call that accepts a tabId parameter (e.g. chrome.tabs.*). |extension| and |browser| are the source of the API call. Return true (1) to allow access of false (0) to deny access. Access to incognito browsers should not be allowed unless the source extension has incognito access enabled, in which case |include_incognito| will be true (1).

    -
    - - - - - - -
    Protectedfunction GetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean; virtual;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.GetExtensionResource.

    - Called to retrieve an extension resource that would normally be loaded from disk (e.g. if a file parameter is specified to chrome.tabs.executeScript). |extension| and |browser| are the source of the resource request. |file| is the requested relative file path. To handle the resource request return true (1) and execute |callback| either synchronously or asynchronously. For the default behavior which reads the resource from the extension directory on disk return false (0). Localization substitutions will not be applied to resources handled via this function.

    -
    - - - - - - -
    Protectedprocedure RemoveReferences; virtual;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.RemoveReferences.

    - Custom procedure to clear all references.

    -
    - - - - - - -
    Publicconstructor Create; virtual;
    -

    This item has no description.

    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFExtensionHandler.TCefExtensionHandlerRef.html b/docs/html/uCEFExtensionHandler.TCefExtensionHandlerRef.html deleted file mode 100644 index ae26f690..00000000 --- a/docs/html/uCEFExtensionHandler.TCefExtensionHandlerRef.html +++ /dev/null @@ -1,170 +0,0 @@ - - - -cef4delphi: uCEFExtensionHandler: Class TCefExtensionHandlerRef - - - - - - -

    Class TCefExtensionHandlerRef

    -
    -
    Fields
    Properties
    -

    Unit

    - -

    Declaration

    -

    -type TCefExtensionHandlerRef = class(TCefBaseRefCountedRef, ICefExtensionHandler)

    -

    Description

    -

    This item has no description.

    Hierarchy

    -

    Overview

    -

    Methods

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Protectedprocedure OnExtensionLoadFailed(result: TCefErrorcode);
    Protectedprocedure OnExtensionLoaded(const extension: ICefExtension);
    Protectedprocedure OnExtensionUnloaded(const extension: ICefExtension);
    Protectedfunction OnBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    Protectedfunction OnBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    Protectedprocedure GetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser);
    Protectedfunction CanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean;
    Protectedfunction GetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean;
    Protectedprocedure RemoveReferences;
    Publicclass function UnWrap(data: Pointer): ICefExtensionHandler;
    -

    Description

    -

    Methods

    - - - - - - -
    Protectedprocedure OnExtensionLoadFailed(result: TCefErrorcode);
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnExtensionLoadFailed.

    - Called if the ICefRequestContext.LoadExtension request fails. |result| will be the error code.

    -
    - - - - - - -
    Protectedprocedure OnExtensionLoaded(const extension: ICefExtension);
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnExtensionLoaded.

    - Called if the ICefRequestContext.LoadExtension request succeeds. |extension| is the loaded extension.

    -
    - - - - - - -
    Protectedprocedure OnExtensionUnloaded(const extension: ICefExtension);
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnExtensionUnloaded.

    - Called after the ICefExtension.Unload request has completed.

    -
    - - - - - - -
    Protectedfunction OnBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnBeforeBackgroundBrowser.

    - Called when an extension needs a browser to host a background script specified via the "background" manifest key. The browser will have no visible window and cannot be displayed. |extension| is the extension that is loading the background script. |url| is an internally generated reference to an HTML page that will be used to load the background script via a "<script>" src attribute. To allow creation of the browser optionally modify |client| and |settings| and return false (0). To cancel creation of the browser (and consequently cancel load of the background script) return true (1). Successful creation will be indicated by a call to ICefLifeSpanHandler.OnAfterCreated, and ICefBrowserHost.IsBackgroundHost will return true (1) for the resulting browser. See https://developer.chrome.com/extensions/event_pages for more information about extension background script usage.

    -
    - - - - - - -
    Protectedfunction OnBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnBeforeBrowser.

    - Called when an extension API (e.g. chrome.tabs.create) requests creation of a new browser. |extension| and |browser| are the source of the API call. |active_browser| may optionally be specified via the windowId property or returned via the get_active_browser() callback and provides the default |client| and |settings| values for the new browser. |index| is the position value optionally specified via the index property. |url| is the URL that will be loaded in the browser. |active| is true (1) if the new browser should be active when opened. To allow creation of the browser optionally modify |windowInfo|, |client| and |settings| and return false (0). To cancel creation of the browser return true (1). Successful creation will be indicated by a call to ICefLifeSpanHandler.OnAfterCreated. Any modifications to |windowInfo| will be ignored if |active_browser| is wrapped in a ICefBrowserView.

    -
    - - - - - - -
    Protectedprocedure GetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser);
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.GetActiveBrowser.

    - Called when no tabId is specified to an extension API call that accepts a tabId parameter (e.g. chrome.tabs.*). |extension| and |browser| are the source of the API call. Return the browser that will be acted on by the API call or return NULL to act on |browser|. The returned browser must share the same ICefRequestContext as |browser|. Incognito browsers should not be considered unless the source extension has incognito access enabled, in which case |include_incognito| will be true (1).

    -
    - - - - - - -
    Protectedfunction CanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.CanAccessBrowser.

    - Called when the tabId associated with |target_browser| is specified to an extension API call that accepts a tabId parameter (e.g. chrome.tabs.*). |extension| and |browser| are the source of the API call. Return true (1) to allow access of false (0) to deny access. Access to incognito browsers should not be allowed unless the source extension has incognito access enabled, in which case |include_incognito| will be true (1).

    -
    - - - - - - -
    Protectedfunction GetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.GetExtensionResource.

    - Called to retrieve an extension resource that would normally be loaded from disk (e.g. if a file parameter is specified to chrome.tabs.executeScript). |extension| and |browser| are the source of the resource request. |file| is the requested relative file path. To handle the resource request return true (1) and execute |callback| either synchronously or asynchronously. For the default behavior which reads the resource from the extension directory on disk return false (0). Localization substitutions will not be applied to resources handled via this function.

    -
    - - - - - - -
    Protectedprocedure RemoveReferences;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.RemoveReferences.

    - Custom procedure to clear all references.

    -
    - - - - - - -
    Publicclass function UnWrap(data: Pointer): ICefExtensionHandler;
    -

    This item has no description.

    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFExtensionHandler.TCustomExtensionHandler.html b/docs/html/uCEFExtensionHandler.TCustomExtensionHandler.html deleted file mode 100644 index 6c997f24..00000000 --- a/docs/html/uCEFExtensionHandler.TCustomExtensionHandler.html +++ /dev/null @@ -1,199 +0,0 @@ - - - -cef4delphi: uCEFExtensionHandler: Class TCustomExtensionHandler - - - - - - -

    Class TCustomExtensionHandler

    - -

    Unit

    - -

    Declaration

    -

    -type TCustomExtensionHandler = class(TCefExtensionHandlerOwn)

    -

    Description

    -

    This item has no description.

    Hierarchy

    -

    Overview

    -

    Fields

    - - - - - -
    ProtectedFEvents: Pointer;
    -

    Methods

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Protectedprocedure OnExtensionLoadFailed(result: TCefErrorcode); override;
    Protectedprocedure OnExtensionLoaded(const extension: ICefExtension); override;
    Protectedprocedure OnExtensionUnloaded(const extension: ICefExtension); override;
    Protectedfunction OnBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean; override;
    Protectedfunction OnBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean; override;
    Protectedprocedure GetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser); override;
    Protectedfunction CanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean; override;
    Protectedfunction GetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean; override;
    Protectedprocedure RemoveReferences; override;
    Publicconstructor Create(const events: IChromiumEvents); reintroduce;
    Publicdestructor Destroy; override;
    -

    Description

    -

    Fields

    - - - - - - -
    ProtectedFEvents: Pointer;
    -

    This item has no description.

    -

    Methods

    - - - - - - -
    Protectedprocedure OnExtensionLoadFailed(result: TCefErrorcode); override;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnExtensionLoadFailed.

    - Called if the ICefRequestContext.LoadExtension request fails. |result| will be the error code.

    -
    - - - - - - -
    Protectedprocedure OnExtensionLoaded(const extension: ICefExtension); override;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnExtensionLoaded.

    - Called if the ICefRequestContext.LoadExtension request succeeds. |extension| is the loaded extension.

    -
    - - - - - - -
    Protectedprocedure OnExtensionUnloaded(const extension: ICefExtension); override;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnExtensionUnloaded.

    - Called after the ICefExtension.Unload request has completed.

    -
    - - - - - - -
    Protectedfunction OnBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean; override;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnBeforeBackgroundBrowser.

    - Called when an extension needs a browser to host a background script specified via the "background" manifest key. The browser will have no visible window and cannot be displayed. |extension| is the extension that is loading the background script. |url| is an internally generated reference to an HTML page that will be used to load the background script via a "<script>" src attribute. To allow creation of the browser optionally modify |client| and |settings| and return false (0). To cancel creation of the browser (and consequently cancel load of the background script) return true (1). Successful creation will be indicated by a call to ICefLifeSpanHandler.OnAfterCreated, and ICefBrowserHost.IsBackgroundHost will return true (1) for the resulting browser. See https://developer.chrome.com/extensions/event_pages for more information about extension background script usage.

    -
    - - - - - - -
    Protectedfunction OnBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean; override;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.OnBeforeBrowser.

    - Called when an extension API (e.g. chrome.tabs.create) requests creation of a new browser. |extension| and |browser| are the source of the API call. |active_browser| may optionally be specified via the windowId property or returned via the get_active_browser() callback and provides the default |client| and |settings| values for the new browser. |index| is the position value optionally specified via the index property. |url| is the URL that will be loaded in the browser. |active| is true (1) if the new browser should be active when opened. To allow creation of the browser optionally modify |windowInfo|, |client| and |settings| and return false (0). To cancel creation of the browser return true (1). Successful creation will be indicated by a call to ICefLifeSpanHandler.OnAfterCreated. Any modifications to |windowInfo| will be ignored if |active_browser| is wrapped in a ICefBrowserView.

    -
    - - - - - - -
    Protectedprocedure GetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser); override;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.GetActiveBrowser.

    - Called when no tabId is specified to an extension API call that accepts a tabId parameter (e.g. chrome.tabs.*). |extension| and |browser| are the source of the API call. Return the browser that will be acted on by the API call or return NULL to act on |browser|. The returned browser must share the same ICefRequestContext as |browser|. Incognito browsers should not be considered unless the source extension has incognito access enabled, in which case |include_incognito| will be true (1).

    -
    - - - - - - -
    Protectedfunction CanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean; override;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.CanAccessBrowser.

    - Called when the tabId associated with |target_browser| is specified to an extension API call that accepts a tabId parameter (e.g. chrome.tabs.*). |extension| and |browser| are the source of the API call. Return true (1) to allow access of false (0) to deny access. Access to incognito browsers should not be allowed unless the source extension has incognito access enabled, in which case |include_incognito| will be true (1).

    -
    - - - - - - -
    Protectedfunction GetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean; override;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.GetExtensionResource.

    - Called to retrieve an extension resource that would normally be loaded from disk (e.g. if a file parameter is specified to chrome.tabs.executeScript). |extension| and |browser| are the source of the resource request. |file| is the requested relative file path. To handle the resource request return true (1) and execute |callback| either synchronously or asynchronously. For the default behavior which reads the resource from the extension directory on disk return false (0). Localization substitutions will not be applied to resources handled via this function.

    -
    - - - - - - -
    Protectedprocedure RemoveReferences; override;
    -

    This item has no description. Showing description inherited from ICefExtensionHandler.RemoveReferences.

    - Custom procedure to clear all references.

    -
    - - - - - - -
    Publicconstructor Create(const events: IChromiumEvents); reintroduce;
    -

    This item has no description.

    - - - - - - -
    Publicdestructor Destroy; override;
    -

    This item has no description.

    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFExtensionHandler.html b/docs/html/uCEFExtensionHandler.html deleted file mode 100644 index e7be74c6..00000000 --- a/docs/html/uCEFExtensionHandler.html +++ /dev/null @@ -1,37 +0,0 @@ - - - -cef4delphi: uCEFExtensionHandler - - - - - - -

    Unit uCEFExtensionHandler

    -
    -
    Uses
    Functions and Procedures
    Types
    Constants
    Variables
    -

    Description

    -

    This item has no description.

    Overview

    -

    Classes, Interfaces, Objects and Records

    - - - - - - - - - - - - - - - - - -
    NameDescription
    Class TCefExtensionHandlerRef 
    Class TCefExtensionHandlerOwn 
    Class TCustomExtensionHandler 
    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFGetExtensionResourceCallback.TCefGetExtensionResourceCallbackRef.html b/docs/html/uCEFGetExtensionResourceCallback.TCefGetExtensionResourceCallbackRef.html deleted file mode 100644 index fffb0c78..00000000 --- a/docs/html/uCEFGetExtensionResourceCallback.TCefGetExtensionResourceCallbackRef.html +++ /dev/null @@ -1,72 +0,0 @@ - - - -cef4delphi: uCEFGetExtensionResourceCallback: Class TCefGetExtensionResourceCallbackRef - - - - - - -

    Class TCefGetExtensionResourceCallbackRef

    -
    -
    Fields
    Properties
    -

    Unit

    - -

    Declaration

    -

    -type TCefGetExtensionResourceCallbackRef = class(TCefBaseRefCountedRef, ICefGetExtensionResourceCallback)

    -

    Description

    -

    This item has no description.

    Hierarchy

    -

    Overview

    -

    Methods

    - - - - - - - - - - - - - -
    Protectedprocedure Cont(const stream: ICefStreamReader);
    Protectedprocedure Cancel;
    Publicclass function UnWrap(data: Pointer): ICefGetExtensionResourceCallback;
    -

    Description

    -

    Methods

    - - - - - - -
    Protectedprocedure Cont(const stream: ICefStreamReader);
    -

    This item has no description. Showing description inherited from ICefGetExtensionResourceCallback.cont.

    - Continue the request. Read the resource contents from |stream|.

    -
    - - - - - - -
    Protectedprocedure Cancel;
    -

    This item has no description. Showing description inherited from ICefGetExtensionResourceCallback.cancel.

    - Cancel the request.

    -
    - - - - - - -
    Publicclass function UnWrap(data: Pointer): ICefGetExtensionResourceCallback;
    -

    This item has no description.

    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFGetExtensionResourceCallback.html b/docs/html/uCEFGetExtensionResourceCallback.html deleted file mode 100644 index f2d1d5f7..00000000 --- a/docs/html/uCEFGetExtensionResourceCallback.html +++ /dev/null @@ -1,29 +0,0 @@ - - - -cef4delphi: uCEFGetExtensionResourceCallback - - - - - - -

    Unit uCEFGetExtensionResourceCallback

    -
    -
    Uses
    Functions and Procedures
    Types
    Constants
    Variables
    -

    Description

    -

    This item has no description.

    Overview

    -

    Classes, Interfaces, Objects and Records

    - - - - - - - - - -
    NameDescription
    Class TCefGetExtensionResourceCallbackRef 
    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFInterfaces.ICefApp.html b/docs/html/uCEFInterfaces.ICefApp.html index 1367d6a4..97109b3f 100644 --- a/docs/html/uCEFInterfaces.ICefApp.html +++ b/docs/html/uCEFInterfaces.ICefApp.html @@ -91,7 +91,7 @@

    - Return the handler for resource bundle events. If TCefSettings.pack_loading_disabled is true (1) a handler must be returned. If no handler is returned resources will be loaded from pack files. This function is called by the browser and render processes on multiple threads.

    + Return the handler for resource bundle events. If no handler is returned resources will be loaded from pack files. This function is called by the browser and render processes on multiple threads.

    diff --git a/docs/html/uCEFInterfaces.ICefBrowserHost.html b/docs/html/uCEFInterfaces.ICefBrowserHost.html index 3967ee68..38e9a300 100644 --- a/docs/html/uCEFInterfaces.ICefBrowserHost.html +++ b/docs/html/uCEFInterfaces.ICefBrowserHost.html @@ -278,14 +278,6 @@ - - - - - - - - @@ -476,7 +468,7 @@
    Publicfunction GetExtension: ICefExtension;
    Publicfunction IsBackgroundHost: boolean;
    Public procedure SetAudioMuted(mute: boolean);

    - Get the default zoom level. This value will be 0.0 by default but can be configured with the Chrome runtime. This function can only be called on the UI thread.

    + Get the default zoom level. This value will be 0.0 by default but can be configured. This function can only be called on the UI thread.

    @@ -988,34 +980,6 @@
    - - - -
    Publicfunction GetExtension: ICefExtension;
    -

    - Returns the extension hosted in this browser or NULL if no extension is hosted. See ICefRequestContext.LoadExtension for details.

    -

    - - -

    WARNING: This API is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Publicfunction IsBackgroundHost: boolean;
    -

    - Returns true (1) if this browser is hosting an extension background script. Background hosts do not have a window and are not displayable. See ICefRequestContext.LoadExtension for details.

    -

    - - -

    WARNING: This API is deprecated and will be removed in ~M127.

    -
    - - -
    Public procedure SetAudioMuted(mute: boolean);
    @@ -1050,7 +1014,7 @@

    - Requests the renderer to exit browser fullscreen. In most cases exiting window fullscreen should also exit browser fullscreen. With the Alloy runtime this function should be called in response to a user action such as clicking the green traffic light button on MacOS (ICefWindowDelegate.OnWindowFullscreenTransition callback) or pressing the "ESC" key (ICefKeyboardHandler.OnPreKeyEvent callback). With the Chrome runtime these standard exit actions are handled internally but new/additional user actions can use this function. Set |will_cause_resize| to true (1) if exiting browser fullscreen will cause a view resize.

    + Requests the renderer to exit browser fullscreen. In most cases exiting window fullscreen should also exit browser fullscreen. With Alloy style this function should be called in response to a user action such as clicking the green traffic light button on MacOS (ICefWindowDelegate.OnWindowFullscreenTransition callback) or pressing the "ESC" key (ICefKeyboardHandler.OnPreKeyEvent callback). With Chrome style these standard exit actions are handled internally but new/additional user actions can use this function. Set |will_cause_resize| to true (1) if exiting browser fullscreen will cause a view resize.

    @@ -1060,7 +1024,7 @@

    - Returns true (1) if a Chrome command is supported and enabled. Values for |command_id| can be found in the cef_command_ids.h file. This function can only be called on the UI thread. Only used with the Chrome runtime.

    + Returns true (1) if a Chrome command is supported and enabled. Values for |command_id| can be found in the cef_command_ids.h file. This function can only be called on the UI thread. Only used with Chrome style.

    @@ -1076,7 +1040,7 @@

    - Execute a Chrome command. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Only used with the Chrome runtime.

    + Execute a Chrome command. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Only used with Chrome style.

    diff --git a/docs/html/uCEFInterfaces.ICefBrowserProcessHandler.html b/docs/html/uCEFInterfaces.ICefBrowserProcessHandler.html index fc979709..7426ce53 100644 --- a/docs/html/uCEFInterfaces.ICefBrowserProcessHandler.html +++ b/docs/html/uCEFInterfaces.ICefBrowserProcessHandler.html @@ -78,9 +78,9 @@

    Provides an opportunity to register custom preferences prior to global and request context initialization. -

    If |type| is CEF_PREFERENCES_TYPE_GLOBAL the registered preferences can be accessed via ICefPreferenceManager.GetGlobalPreferences after OnContextInitialized is called. Global preferences are registered a single time at application startup. See related TCefSettings.cache_path and TCefSettings.persist_user_preferences configuration. +

    If |type| is CEF_PREFERENCES_TYPE_GLOBAL the registered preferences can be accessed via ICefPreferenceManager.GetGlobalPreferences after OnContextInitialized is called. Global preferences are registered a single time at application startup. See related TCefSettings.cache_path configuration. -

    If |type| is CEF_PREFERENCES_TYPE_REQUEST_CONTEXT the preferences can be accessed via the ICefRequestContext after ICefRequestContextHandler.OnRequestContextInitialized is called. Request context preferences are registered each time a new ICefRequestContext is created. It is intended but not required that all request contexts have the same registered preferences. See related TCefRequestContextSettings.cache_path and TCefRequestContextSettings.persist_user_preferences configuration. +

    If |type| is CEF_PREFERENCES_TYPE_REQUEST_CONTEXT the preferences can be accessed via the ICefRequestContext after ICefRequestContextHandler.OnRequestContextInitialized is called. Request context preferences are registered each time a new ICefRequestContext is created. It is intended but not required that all request contexts have the same registered preferences. See related TCefRequestContextSettings.cache_path configuration.

    Do not keep a reference to the |registrar| object. This function is called on the browser process UI thread. @@ -147,7 +147,7 @@

    - Return the default client for use with a newly created browser window (TCefBrowser object). If null is returned the TCefBrowser will be unmanaged (no callbacks will be executed for that TCefBrowser) and application shutdown will be blocked until the browser window is closed manually. This function is currently only used with the Chrome runtime when creating new browser windows via Chrome UI.

    + Return the default client for use with a newly created browser window (TCefBrowser object). If null is returned the TCefBrowser will be unmanaged (no callbacks will be executed for that TCefBrowser) and application shutdown will be blocked until the browser window is closed manually. This function is currently only used with Chrome style when creating new browser windows via Chrome UI.

    @@ -157,7 +157,7 @@

    - Return the default handler for use with a new user or incognito profile (TCefRequestContext object). If null is returned the TCefRequestContext will be unmanaged (no callbacks will be executed for that TCefRequestContext). This function is currently only used with the Chrome runtime when creating new browser windows via Chrome UI.

    + Return the default handler for use with a new user or incognito profile (TCefRequestContext object). If null is returned the TCefRequestContext will be unmanaged (no callbacks will be executed for that TCefRequestContext). This function is currently only used with Chrome style when creating new browser windows via Chrome UI.

    diff --git a/docs/html/uCEFInterfaces.ICefBrowserView.html b/docs/html/uCEFInterfaces.ICefBrowserView.html index 77735cec..1239739e 100644 --- a/docs/html/uCEFInterfaces.ICefBrowserView.html +++ b/docs/html/uCEFInterfaces.ICefBrowserView.html @@ -81,7 +81,7 @@

    - Returns the Chrome toolbar associated with this BrowserView. Only supported when using the Chrome runtime. The ICefBrowserViewDelegate.GetChromeToolbarType function must return a value other than CEF_CTT_NONE and the toolbar will not be available until after this BrowserView is added to a ICefWindow and ICefViewDelegate.OnWindowChanged() has been called.

    + Returns the Chrome toolbar associated with this BrowserView. Only supported when using Chrome style. The ICefBrowserViewDelegate.GetChromeToolbarType function must return a value other than CEF_CTT_NONE and the toolbar will not be available until after this BrowserView is added to a ICefWindow and ICefViewDelegate.OnWindowChanged() has been called.

    @@ -91,7 +91,7 @@

    - Sets whether normal priority accelerators are first forwarded to the web content (`keydown` event handler) or ICefKeyboardHandler. Normal priority accelerators can be registered via ICefWindow.SetAccelerator (with |high_priority|=false) or internally for standard accelerators supported by the Chrome runtime. If |prefer_accelerators| is true then the matching accelerator will be triggered immediately (calling ICefWindowDelegate.OnAccelerator or ICefCommandHandler.OnChromeCommand respectively) and the event will not be forwarded to the web content or ICefKeyboardHandler first. If |prefer_accelerators| is false then the matching accelerator will only be triggered if the event is not handled by web content (`keydown` event handler that calls `event.preventDefault()`) or by ICefKeyboardHandler. The default value is false.

    + Sets whether normal priority accelerators are first forwarded to the web content (`keydown` event handler) or ICefKeyboardHandler. Normal priority accelerators can be registered via ICefWindow.SetAccelerator (with |high_priority|=false) or internally for standard accelerators supported by Chrome style. If |prefer_accelerators| is true then the matching accelerator will be triggered immediately (calling ICefWindowDelegate.OnAccelerator or ICefCommandHandler.OnChromeCommand respectively) and the event will not be forwarded to the web content or ICefKeyboardHandler first. If |prefer_accelerators| is false then the matching accelerator will only be triggered if the event is not handled by web content (`keydown` event handler that calls `event.preventDefault()`) or by ICefKeyboardHandler. The default value is false.

    diff --git a/docs/html/uCEFInterfaces.ICefBrowserViewDelegate.html b/docs/html/uCEFInterfaces.ICefBrowserViewDelegate.html index 3eb68a50..7d6301de 100644 --- a/docs/html/uCEFInterfaces.ICefBrowserViewDelegate.html +++ b/docs/html/uCEFInterfaces.ICefBrowserViewDelegate.html @@ -140,7 +140,7 @@

    - Called when |browser_view| receives a gesture command. Return true (1) to handle (or disable) a |gesture_command| or false (0) to propagate the gesture to the browser for default handling. With the Chrome runtime these commands can also be handled via cef_command_handler_t::OnChromeCommand.

    + Called when |browser_view| receives a gesture command. Return true (1) to handle (or disable) a |gesture_command| or false (0) to propagate the gesture to the browser for default handling. With Chrome style these commands can also be handled via ICefCommandHandler.OnChromeCommand.

    diff --git a/docs/html/uCEFInterfaces.ICefCommandHandler.html b/docs/html/uCEFInterfaces.ICefCommandHandler.html index e693c8ac..fa57986a 100644 --- a/docs/html/uCEFInterfaces.ICefCommandHandler.html +++ b/docs/html/uCEFInterfaces.ICefCommandHandler.html @@ -66,7 +66,7 @@

    - Called to execute a Chrome command triggered via menu selection or keyboard shortcut. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Return true (1) if the command was handled or false (0) for the default implementation. For context menu commands this will be called after ICefContextMenuHandler.OnContextMenuCommand. Only used with the Chrome runtime.

    + Called to execute a Chrome command triggered via menu selection or keyboard shortcut. Values for |command_id| can be found in the cef_command_ids.h file. |disposition| provides information about the intended command target. Return true (1) if the command was handled or false (0) for the default implementation. For context menu commands this will be called after ICefContextMenuHandler.OnContextMenuCommand. Only used with Chrome style.

    Attributes
    GUID['{7C931B93-53DC-4607-AABB-2CB4AEF7FB96}']
    @@ -81,7 +81,7 @@

    - Called to check if a Chrome app menu item should be visible. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be visible by default. Only used with the Chrome runtime.

    + Called to check if a Chrome app menu item should be visible. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be visible by default. Only used with Chrome style.

    @@ -91,7 +91,7 @@

    - Called to check if a Chrome app menu item should be enabled. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be enabled by default. Only used with the Chrome runtime.

    + Called to check if a Chrome app menu item should be enabled. Values for |command_id| can be found in the cef_command_ids.h file. Only called for menu items that would be enabled by default. Only used with Chrome style.

    @@ -101,7 +101,7 @@

    - Called during browser creation to check if a Chrome page action icon should be visible. Only called for icons that would be visible by default. Only used with the Chrome runtime.

    + Called during browser creation to check if a Chrome page action icon should be visible. Only called for icons that would be visible by default. Only used with Chrome style.

    @@ -111,7 +111,7 @@

    - Called during browser creation to check if a Chrome toolbar button should be visible. Only called for buttons that would be visible by default. Only used with the Chrome runtime.

    + Called during browser creation to check if a Chrome toolbar button should be visible. Only called for buttons that would be visible by default. Only used with Chrome style.

    diff --git a/docs/html/uCEFInterfaces.ICefDisplayHandler.html b/docs/html/uCEFInterfaces.ICefDisplayHandler.html index 0ed84e17..06c492af 100644 --- a/docs/html/uCEFInterfaces.ICefDisplayHandler.html +++ b/docs/html/uCEFInterfaces.ICefDisplayHandler.html @@ -125,7 +125,7 @@

    - Called when web content in the page has toggled fullscreen mode. If |fullscreen| is true (1) the content will automatically be sized to fill the browser content area. If |fullscreen| is false (0) the content will automatically return to its original size and position. With the Alloy runtime the client is responsible for triggering the fullscreen transition (for example, by calling ICefWindow.SetFullscreen when using Views). With the Chrome runtime the fullscreen transition will be triggered automatically. The ICefWindowDelegate.OnWindowFullscreenTransition function will be called during the fullscreen transition for notification purposes.

    + Called when web content in the page has toggled fullscreen mode. If |fullscreen| is true (1) the content will automatically be sized to fill the browser content area. If |fullscreen| is false (0) the content will automatically return to its original size and position. With Alloy style the client is responsible for triggering the fullscreen transition (for example, by calling ICefWindow.SetFullscreen when using Views). With Chrome style the fullscreen transition will be triggered automatically. The ICefWindowDelegate.OnWindowFullscreenTransition function will be called during the fullscreen transition for notification purposes.

    diff --git a/docs/html/uCEFInterfaces.ICefExtension.html b/docs/html/uCEFInterfaces.ICefExtension.html deleted file mode 100644 index 953e477a..00000000 --- a/docs/html/uCEFInterfaces.ICefExtension.html +++ /dev/null @@ -1,425 +0,0 @@ - - - -cef4delphi: uCEFInterfaces: Interface ICefExtension - - - - - - -

    Interface ICefExtension

    - -

    Unit

    - -

    Declaration

    -

    -type ICefExtension = interface(ICefBaseRefCounted)

    -

    Description

    -

    - Object representing an extension. Methods may be called on any thread unless otherwise indicated.

    -

    - - -

    WARNING: This API is deprecated and will be removed in ~M127. - -

    UNKNOWN - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_capi.h">CEF source file: /include/capi/cef_extension_capi.h (cef_extension_t))

    -

    Hierarchy

    -

    Overview

    -

    Methods

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Publicfunction GetIdentifier: ustring;
    Publicfunction GetPath: ustring;
    Publicfunction GetManifest: ICefDictionaryValue;
    Publicfunction IsSame(const that : ICefExtension) : boolean;
    Publicfunction GetHandler: ICefExtensionHandler;
    Publicfunction GetLoaderContext: ICefRequestContext;
    Publicfunction IsLoaded: boolean;
    Publicprocedure unload;
    Publicfunction GetBrowserActionPopup: ustring;
    Publicfunction GetBrowserActionIcon: ustring;
    Publicfunction GetPageActionPopup: ustring;
    Publicfunction GetPageActionIcon: ustring;
    Publicfunction GetOptionsPage: ustring;
    Publicfunction GetOptionsUIPage: ustring;
    Publicfunction GetBackgroundPage: ustring;
    Publicfunction GetURL: ustring;
    -

    Properties

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Publicproperty Identifier : ustring read GetIdentifier;
    Publicproperty Path : ustring read GetPath;
    Publicproperty Manifest : ICefDictionaryValue read GetManifest;
    Publicproperty Handler : ICefExtensionHandler read GetHandler;
    Publicproperty LoaderContext : ICefRequestContext read GetLoaderContext;
    Publicproperty BrowserActionPopup : ustring read GetBrowserActionPopup;
    Publicproperty BrowserActionIcon : ustring read GetBrowserActionIcon;
    Publicproperty PageActionPopup : ustring read GetPageActionPopup;
    Publicproperty PageActionIcon : ustring read GetPageActionIcon;
    Publicproperty OptionsPage : ustring read GetOptionsPage;
    Publicproperty OptionsUIPage : ustring read GetOptionsUIPage;
    Publicproperty BackgroundPage : ustring read GetBackgroundPage;
    Publicproperty URL : ustring read GetURL;
    -

    Description

    -

    Methods

    - - - - - - -
    Publicfunction GetIdentifier: ustring;
    -

    - Returns the unique extension identifier. This is calculated based on the extension public key, if available, or on the extension path. See https://developer.chrome.com/extensions/manifest/key for details.

    -
    Attributes
    -
    -
    GUID['{D30D1C64-A26F-49C0-AEB7-C55EC68951CA}']
    -
    -
    -
    - - - - - - -
    Publicfunction GetPath: ustring;
    -

    - Returns the absolute path to the extension directory on disk. This value will be prefixed with PK_DIR_RESOURCES if a relative path was passed to ICefRequestContext.LoadExtension.

    -
    - - - - - - -
    Publicfunction GetManifest: ICefDictionaryValue;
    -

    - Returns the extension manifest contents as a ICefDictionaryValue object. See https://developer.chrome.com/extensions/manifest for details.

    -
    - - - - - - -
    Publicfunction IsSame(const that : ICefExtension) : boolean;
    -

    - Returns true (1) if this object is the same extension as |that| object. Extensions are considered the same if identifier, path and loader context match.

    -
    - - - - - - -
    Publicfunction GetHandler: ICefExtensionHandler;
    -

    - Returns the handler for this extension. Will return NULL for internal extensions or if no handler was passed to ICefRequestContext.LoadExtension.

    -
    - - - - - - -
    Publicfunction GetLoaderContext: ICefRequestContext;
    -

    - Returns the request context that loaded this extension. Will return NULL for internal extensions or if the extension has been unloaded. See the ICefRequestContext.LoadExtension documentation for more information about loader contexts. Must be called on the browser process UI thread.

    -
    - - - - - - -
    Publicfunction IsLoaded: boolean;
    -

    - Returns true (1) if this extension is currently loaded. Must be called on the browser process UI thread.

    -
    - - - - - - -
    Publicprocedure unload;
    -

    - Unload this extension if it is not an internal extension and is currently loaded. Will result in a call to ICefExtensionHandler.OnExtensionUnloaded on success.

    -
    - - - - - - -
    Publicfunction GetBrowserActionPopup: ustring;
    -

    This item has no description.

    - - - - - - -
    Publicfunction GetBrowserActionIcon: ustring;
    -

    This item has no description.

    - - - - - - -
    Publicfunction GetPageActionPopup: ustring;
    -

    This item has no description.

    - - - - - - -
    Publicfunction GetPageActionIcon: ustring;
    -

    This item has no description.

    - - - - - - -
    Publicfunction GetOptionsPage: ustring;
    -

    This item has no description.

    - - - - - - -
    Publicfunction GetOptionsUIPage: ustring;
    -

    This item has no description.

    - - - - - - -
    Publicfunction GetBackgroundPage: ustring;
    -

    This item has no description.

    - - - - - - -
    Publicfunction GetURL: ustring;
    -

    This item has no description.

    -

    Properties

    - - - - - - -
    Publicproperty Identifier : ustring read GetIdentifier;
    -

    - Returns the unique extension identifier. This is calculated based on the extension public key, if available, or on the extension path. See https://developer.chrome.com/extensions/manifest/key for details.

    -
    - - - - - - -
    Publicproperty Path : ustring read GetPath;
    -

    - Returns the absolute path to the extension directory on disk. This value will be prefixed with PK_DIR_RESOURCES if a relative path was passed to ICefRequestContext.LoadExtension.

    -
    - - - - - - -
    Publicproperty Manifest : ICefDictionaryValue read GetManifest;
    -

    - Returns the extension manifest contents as a ICefDictionaryValue object. See https://developer.chrome.com/extensions/manifest for details.

    -
    - - - - - - -
    Publicproperty Handler : ICefExtensionHandler read GetHandler;
    -

    - Returns the handler for this extension. Will return NULL for internal extensions or if no handler was passed to ICefRequestContext.LoadExtension.

    -
    - - - - - - -
    Publicproperty LoaderContext : ICefRequestContext read GetLoaderContext;
    -

    - Returns the request context that loaded this extension. Will return NULL for internal extensions or if the extension has been unloaded. See the ICefRequestContext.LoadExtension documentation for more information about loader contexts. Must be called on the browser process UI thread.

    -
    - - - - - - -
    Publicproperty BrowserActionPopup : ustring read GetBrowserActionPopup;
    -

    This item has no description.

    - - - - - - -
    Publicproperty BrowserActionIcon : ustring read GetBrowserActionIcon;
    -

    This item has no description.

    - - - - - - -
    Publicproperty PageActionPopup : ustring read GetPageActionPopup;
    -

    This item has no description.

    - - - - - - -
    Publicproperty PageActionIcon : ustring read GetPageActionIcon;
    -

    This item has no description.

    - - - - - - -
    Publicproperty OptionsPage : ustring read GetOptionsPage;
    -

    This item has no description.

    - - - - - - -
    Publicproperty OptionsUIPage : ustring read GetOptionsUIPage;
    -

    This item has no description.

    - - - - - - -
    Publicproperty BackgroundPage : ustring read GetBackgroundPage;
    -

    This item has no description.

    - - - - - - -
    Publicproperty URL : ustring read GetURL;
    -

    This item has no description.

    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFInterfaces.ICefExtensionHandler.html b/docs/html/uCEFInterfaces.ICefExtensionHandler.html deleted file mode 100644 index 4b0198e2..00000000 --- a/docs/html/uCEFInterfaces.ICefExtensionHandler.html +++ /dev/null @@ -1,173 +0,0 @@ - - - -cef4delphi: uCEFInterfaces: Interface ICefExtensionHandler - - - - - - -

    Interface ICefExtensionHandler

    -
    -
    Fields
    Properties
    -

    Unit

    - -

    Declaration

    -

    -type ICefExtensionHandler = interface(ICefBaseRefCounted)

    -

    Description

    -

    - Implement this interface to handle events related to browser extensions. The functions of this interface will be called on the UI thread. See ICefRequestContext.LoadExtension for information about extension loading.

    -

    - - -

    WARNING: This API is deprecated and will be removed in ~M127. - -

    UNKNOWN - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t))

    -

    Hierarchy

    -

    Overview

    -

    Methods

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Publicprocedure OnExtensionLoadFailed(result: TCefErrorcode);
    Publicprocedure OnExtensionLoaded(const extension: ICefExtension);
    Publicprocedure OnExtensionUnloaded(const extension: ICefExtension);
    Publicfunction OnBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    Publicfunction OnBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    Publicprocedure GetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser);
    Publicfunction CanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean;
    Publicfunction GetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean;
    Publicprocedure RemoveReferences;
    -

    Description

    -

    Methods

    - - - - - - -
    Publicprocedure OnExtensionLoadFailed(result: TCefErrorcode);
    -

    - Called if the ICefRequestContext.LoadExtension request fails. |result| will be the error code.

    -
    Attributes
    -
    -
    GUID['{3234008F-D809-459D-963D-23BA50219648}']
    -
    -
    -
    - - - - - - -
    Publicprocedure OnExtensionLoaded(const extension: ICefExtension);
    -

    - Called if the ICefRequestContext.LoadExtension request succeeds. |extension| is the loaded extension.

    -
    - - - - - - -
    Publicprocedure OnExtensionUnloaded(const extension: ICefExtension);
    -

    - Called after the ICefExtension.Unload request has completed.

    -
    - - - - - - -
    Publicfunction OnBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    -

    - Called when an extension needs a browser to host a background script specified via the "background" manifest key. The browser will have no visible window and cannot be displayed. |extension| is the extension that is loading the background script. |url| is an internally generated reference to an HTML page that will be used to load the background script via a "<script>" src attribute. To allow creation of the browser optionally modify |client| and |settings| and return false (0). To cancel creation of the browser (and consequently cancel load of the background script) return true (1). Successful creation will be indicated by a call to ICefLifeSpanHandler.OnAfterCreated, and ICefBrowserHost.IsBackgroundHost will return true (1) for the resulting browser. See https://developer.chrome.com/extensions/event_pages for more information about extension background script usage.

    -
    - - - - - - -
    Publicfunction OnBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    -

    - Called when an extension API (e.g. chrome.tabs.create) requests creation of a new browser. |extension| and |browser| are the source of the API call. |active_browser| may optionally be specified via the windowId property or returned via the get_active_browser() callback and provides the default |client| and |settings| values for the new browser. |index| is the position value optionally specified via the index property. |url| is the URL that will be loaded in the browser. |active| is true (1) if the new browser should be active when opened. To allow creation of the browser optionally modify |windowInfo|, |client| and |settings| and return false (0). To cancel creation of the browser return true (1). Successful creation will be indicated by a call to ICefLifeSpanHandler.OnAfterCreated. Any modifications to |windowInfo| will be ignored if |active_browser| is wrapped in a ICefBrowserView.

    -
    - - - - - - -
    Publicprocedure GetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser);
    -

    - Called when no tabId is specified to an extension API call that accepts a tabId parameter (e.g. chrome.tabs.*). |extension| and |browser| are the source of the API call. Return the browser that will be acted on by the API call or return NULL to act on |browser|. The returned browser must share the same ICefRequestContext as |browser|. Incognito browsers should not be considered unless the source extension has incognito access enabled, in which case |include_incognito| will be true (1).

    -
    - - - - - - -
    Publicfunction CanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean;
    -

    - Called when the tabId associated with |target_browser| is specified to an extension API call that accepts a tabId parameter (e.g. chrome.tabs.*). |extension| and |browser| are the source of the API call. Return true (1) to allow access of false (0) to deny access. Access to incognito browsers should not be allowed unless the source extension has incognito access enabled, in which case |include_incognito| will be true (1).

    -
    - - - - - - -
    Publicfunction GetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean;
    -

    - Called to retrieve an extension resource that would normally be loaded from disk (e.g. if a file parameter is specified to chrome.tabs.executeScript). |extension| and |browser| are the source of the resource request. |file| is the requested relative file path. To handle the resource request return true (1) and execute |callback| either synchronously or asynchronously. For the default behavior which reads the resource from the extension directory on disk return false (0). Localization substitutions will not be applied to resources handled via this function.

    -
    - - - - - - -
    Publicprocedure RemoveReferences;
    -

    - Custom procedure to clear all references.

    -
    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFInterfaces.ICefGetExtensionResourceCallback.html b/docs/html/uCEFInterfaces.ICefGetExtensionResourceCallback.html deleted file mode 100644 index 8298a870..00000000 --- a/docs/html/uCEFInterfaces.ICefGetExtensionResourceCallback.html +++ /dev/null @@ -1,73 +0,0 @@ - - - -cef4delphi: uCEFInterfaces: Interface ICefGetExtensionResourceCallback - - - - - - -

    Interface ICefGetExtensionResourceCallback

    -
    -
    Fields
    Properties
    -

    Unit

    - -

    Declaration

    -

    -type ICefGetExtensionResourceCallback = interface(ICefBaseRefCounted)

    -

    Description

    -

    - Callback interface used for asynchronous continuation of ICefExtensionHandler.GetExtensionResource.

    -

    - - -

    UNKNOWN - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_get_extension_resource_callback_t))

    -

    Hierarchy

    -

    Overview

    -

    Methods

    - - - - - - - - - -
    Publicprocedure cont(const stream: ICefStreamReader);
    Publicprocedure cancel;
    -

    Description

    -

    Methods

    - - - - - - -
    Publicprocedure cont(const stream: ICefStreamReader);
    -

    - Continue the request. Read the resource contents from |stream|.

    -
    Attributes
    -
    -
    GUID['{579C8602-8252-40D0-9E0A-501F32C36C42}']
    -
    -
    -
    - - - - - - -
    Publicprocedure cancel;
    -

    - Cancel the request.

    -
    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFInterfaces.ICefLifeSpanHandler.html b/docs/html/uCEFInterfaces.ICefLifeSpanHandler.html index 398bb7a2..399bb4ca 100644 --- a/docs/html/uCEFInterfaces.ICefLifeSpanHandler.html +++ b/docs/html/uCEFInterfaces.ICefLifeSpanHandler.html @@ -87,7 +87,7 @@

    The |extra_info| parameter provides an opportunity to specify extra information specific to the created popup browser that will be passed to ICefRenderProcessHandler.OnBrowserCreated() in the render process. The existing |extra_info| object, if any, will be read-only but may be replaced with a new object. -

    Views-hosted source browsers will create Views-hosted DevTools popups unless |use_default_window| is set to to true (1). DevTools popups can be blocked by returning true (1) from ICefCommandHandler.OnChromeCommand for IDC_DEV_TOOLS. Only used with the Chrome runtime. +

    Views-hosted source browsers will create Views-hosted DevTools popups unless |use_default_window| is set to to true (1). DevTools popups can be blocked by returning true (1) from ICefCommandHandler.OnChromeCommand for IDC_DEV_TOOLS. Only used with Chrome style.

    - Called when a page requests permission to access media. |requesting_origin| is the URL origin requesting permission. |requested_permissions| is a combination of values from TCefMediaAccessPermissionTypes that represent the requested permissions. Return true (1) and call ICefMediaAccessCallback functions either in this function or at a later time to continue or cancel the request. Return false (0) to proceed with default handling. With the Chrome runtime, default handling will display the permission request UI. With the Alloy runtime, default handling will deny the request. This function will not be called if the "–enable-media-stream" command-line switch is used to grant all permissions.

    + + +

    Called when a page requests permission to access media. + +

    |requesting_origin| is the URL origin requesting permission. + +

    |requested_permissions| is a combination of values from TCefMediaAccessPermissionTypes that represent the requested permissions. + +

    Return true (1) and call ICefMediaAccessCallback functions either in this function or at a later time to continue or cancel the request. + +

    Return false (0) to proceed with default handling. With Chrome style, default handling will display the permission request UI. + +

    With Alloy style, default handling will deny the request. This function will not be called if the "–enable-media-stream" command-line switch is used to grant all permissions. + +

    Attributes
    GUID['{DC079268-FB08-44DA-B216-35C5C339B341}']
    @@ -73,7 +87,7 @@

    - Called when a page should show a permission prompt. |prompt_id| uniquely identifies the prompt. |requesting_origin| is the URL origin requesting permission. |requested_permissions| is a combination of values from TCefPermissionRequestTypes that represent the requested permissions. Return true (1) and call ICefPermissionPromptCallback.Continue either in this function or at a later time to continue or cancel the request. Return false (0) to proceed with default handling. With the Chrome runtime, default handling will display the permission prompt UI. With the Alloy runtime, default handling is CEF_PERMISSION_RESULT_IGNORE.

    + Called when a page should show a permission prompt. |prompt_id| uniquely identifies the prompt. |requesting_origin| is the URL origin requesting permission. |requested_permissions| is a combination of values from TCefPermissionRequestTypes that represent the requested permissions. Return true (1) and call ICefPermissionPromptCallback.Continue either in this function or at a later time to continue or cancel the request. Return false (0) to proceed with default handling. With Chrome style, default handling will display the permission prompt UI. With Alloy style, default handling is CEF_PERMISSION_RESULT_IGNORE.

    diff --git a/docs/html/uCEFInterfaces.ICefRequestContext.html b/docs/html/uCEFInterfaces.ICefRequestContext.html index 8c980b79..80df2ae3 100644 --- a/docs/html/uCEFInterfaces.ICefRequestContext.html +++ b/docs/html/uCEFInterfaces.ICefRequestContext.html @@ -87,57 +87,37 @@ - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + @@ -305,80 +285,6 @@
    Publicprocedure LoadExtension(const root_directory: ustring; const manifest: ICefDictionaryValue; const handler: ICefExtensionHandler);
    Publicfunction DidLoadExtension(const extension_id: ustring): boolean;
    Publicfunction HasExtension(const extension_id: ustring): boolean;
    Publicfunction GetExtensions(const extension_ids: TStringList): boolean;
    Publicfunction GetExtension(const extension_id: ustring): ICefExtension;
    Public function GetMediaRouter(const callback: ICefCompletionCallback): ICefMediaRouter;
    Public function GetWebsiteSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes): ICefValue;
    Public procedure SetWebsiteSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes; const value: ICefValue);
    Public function GetContentSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes): TCefContentSettingValues;
    Public procedure SetContentSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes; value: TCefContentSettingValues);
    Public procedure SetChromeColorScheme(variant: TCefColorVariant; user_color: TCefColor);
    Public function GetChromeColorSchemeMode: TCefColorVariant;
    Public function GetChromeColorSchemeColor: TCefColor;
    Public function GetChromeColorSchemeVariant: TCefColorVariant;
    - - - -
    Publicprocedure LoadExtension(const root_directory: ustring; const manifest: ICefDictionaryValue; const handler: ICefExtensionHandler);
    -

    - Load an extension. - -

    If extension resources will be read from disk using the default load implementation then |root_directory| should be the absolute path to the extension resources directory and |manifest| should be NULL. If extension resources will be provided by the client (e.g. via ICefRequestHandler and/or ICefExtensionHandler) then |root_directory| should be a path component unique to the extension (if not absolute this will be internally prefixed with the PK_DIR_RESOURCES path) and |manifest| should contain the contents that would otherwise be read from the "manifest.json" file on disk. - -

    The loaded extension will be accessible in all contexts sharing the same storage (HasExtension returns true (1)). However, only the context on which this function was called is considered the loader (DidLoadExtension returns true (1)) and only the loader will receive ICefRequestContextHandler callbacks for the extension. - -

    ICefExtensionHandler.OnExtensionLoaded will be called on load success or ICefExtensionHandler.OnExtensionLoadFailed will be called on load failure. - -

    If the extension specifies a background script via the "background" manifest key then ICefExtensionHandler.OnBeforeBackgroundBrowser will be called to create the background browser. See that function for additional information about background scripts. - -

    For visible extension views the client application should evaluate the manifest to determine the correct extension URL to load and then pass that URL to the ICefBrowserHost.CreateBrowser* function after the extension has loaded. For example, the client can look for the "browser_action" manifest key as documented at https://developer.chrome.com/extensions/browserAction. Extension URLs take the form "chrome-extension://<extension_id>/<path>". - -

    Browsers that host extensions differ from normal browsers as follows: - Can access chrome.* JavaScript APIs if allowed by the manifest. Visit chrome://extensions-support for the list of extension APIs currently supported by CEF. - Main frame navigation to non-extension content is blocked. - Pinch-zooming is disabled. - CefBrowserHost::GetExtension returns the hosted extension. - CefBrowserHost::IsBackgroundHost returns true for background hosts. - -

    See https://developer.chrome.com/extensions for extension implementation and usage documentation. - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Publicfunction DidLoadExtension(const extension_id: ustring): boolean;
    -

    - Returns true (1) if this context was used to load the extension identified by |extension_id|. Other contexts sharing the same storage will also have access to the extension (see HasExtension). This function must be called on the browser process UI thread. - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Publicfunction HasExtension(const extension_id: ustring): boolean;
    -

    - Returns true (1) if this context has access to the extension identified by |extension_id|. This may not be the context that was used to load the extension (see DidLoadExtension). This function must be called on the browser process UI thread. - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Publicfunction GetExtensions(const extension_ids: TStringList): boolean;
    -

    - Retrieve the list of all extensions that this context has access to (see HasExtension). |extension_ids| will be populated with the list of extension ID values. Returns true (1) on success. This function must be called on the browser process UI thread. - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Publicfunction GetExtension(const extension_id: ustring): ICefExtension;
    -

    - Returns the extension matching |extension_id| or NULL if no matching extension is accessible in this context (see HasExtension). This function must be called on the browser process UI thread. - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - -
    Public function GetMediaRouter(const callback: ICefCompletionCallback): ICefMediaRouter;
    diff --git a/docs/html/uCEFInterfaces.ICefRequestHandler.html b/docs/html/uCEFInterfaces.ICefRequestHandler.html index 664d0278..326401fe 100644 --- a/docs/html/uCEFInterfaces.ICefRequestHandler.html +++ b/docs/html/uCEFInterfaces.ICefRequestHandler.html @@ -165,7 +165,7 @@

    - Called on the browser process UI thread when the render process is unresponsive as indicated by a lack of input event processing for at least 15 seconds. Return false (0) for the default behavior which is an indefinite wait with the Alloy runtime or display of the "Page unresponsive" dialog with the Chrome runtime. Return true (1) and don't execute the callback for an indefinite wait without display of the Chrome runtime dialog. Return true (1) and call ICefUnresponsiveProcessCallback.Wait either in this function or at a later time to reset the wait timer, potentially triggering another call to this function if the process remains unresponsive. Return true (1) and call ICefUnresponsiveProcessCallback.Terminate either in this function or at a later time to terminate the unresponsive process, resulting in a call to OnRenderProcessTerminated. OnRenderProcessResponsive will be called if the process becomes responsive after this function is called. This functionality depends on the hang monitor which can be disabled by passing the `–disable-hang-monitor` command-line flag or setting GlobalCEFApp.DisableHangMonitor to True.

    + Called on the browser process UI thread when the render process is unresponsive as indicated by a lack of input event processing for at least 15 seconds. Return false (0) for the default behavior which is an indefinite wait with Alloy style or display of the "Page unresponsive" dialog with Chrome style. Return true (1) and don't execute the callback for an indefinite wait without display of the Chrome style dialog. Return true (1) and call ICefUnresponsiveProcessCallback.Wait either in this function or at a later time to reset the wait timer, potentially triggering another call to this function if the process remains unresponsive. Return true (1) and call ICefUnresponsiveProcessCallback.Terminate either in this function or at a later time to terminate the unresponsive process, resulting in a call to OnRenderProcessTerminated. OnRenderProcessResponsive will be called if the process becomes responsive after this function is called. This functionality depends on the hang monitor which can be disabled by passing the `–disable-hang-monitor` command-line flag.

    diff --git a/docs/html/uCEFInterfaces.ICefTaskManager.html b/docs/html/uCEFInterfaces.ICefTaskManager.html new file mode 100644 index 00000000..3d30d7e7 --- /dev/null +++ b/docs/html/uCEFInterfaces.ICefTaskManager.html @@ -0,0 +1,113 @@ + + + +cef4delphi: uCEFInterfaces: Interface ICefTaskManager + + + + + + +

    Interface ICefTaskManager

    +
    +
    Fields
    Properties
    +

    Unit

    + +

    Declaration

    +

    +type ICefTaskManager = interface(ICefBaseRefCounted)

    +

    Description

    +

    + Interface that facilitates managing the browser-related tasks. The functions of this structure may only be called on the UI thread.

    +

    + + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_task_manager_capi.h">CEF source file: /include/capi/cef_task_manager_capi.h (cef_task_manager_t))

    +

    Hierarchy

    +

    Overview

    +

    Methods

    +
    + + + + + + + + + + + + + + + + + + + + +
    Publicfunction GetTasksCount: NativeUInt;
    Publicfunction GetTaskIdsList(var task_ids: TCefCustomInt64Array): boolean;
    Publicfunction GetTaskInfo(const task_id: int64; var info: TCustomTaskInfo): boolean;
    Publicfunction KillTask(task_id: int64): boolean;
    Publicfunction GetTaskIdForBrowserId(browser_id: Integer): int64;
    +

    Description

    +

    Methods

    + + + + + + +
    Publicfunction GetTasksCount: NativeUInt;
    +

    + Returns the number of tasks currently tracked by the task manager. Returns 0 if the function was called from the incorrect thread.

    +
    Attributes
    +
    +
    GUID['{913B6FE7-1543-407D-9A23-8C232103965B}']
    +
    +
    +
    + + + + + + +
    Publicfunction GetTaskIdsList(var task_ids: TCefCustomInt64Array): boolean;
    +

    + Gets the list of task IDs currently tracked by the task manager. Tasks that share the same process id will always be consecutive. The list will be sorted in a way that reflects the process tree: the browser process will be first, followed by the gpu process if it exists. Related processes (e.g., a subframe process and its parent) will be kept together if possible. Callers can expect this ordering to be stable when a process is added or removed. The task IDs are unique within the application lifespan. Returns false (0) if the function was called from the incorrect thread.

    +
    + + + + + + +
    Publicfunction GetTaskInfo(const task_id: int64; var info: TCustomTaskInfo): boolean;
    +

    + Gets information about the task with |task_id|. Returns true (1) if the information about the task was successfully retrieved and false (0) if the |task_id| is invalid or the function was called from the incorrect thread.

    +
    + + + + + + +
    Publicfunction KillTask(task_id: int64): boolean;
    +

    + Attempts to terminate a task with |task_id|. Returns false (0) if the |task_id| is invalid, the call is made from an incorrect thread, or if the task cannot be terminated.

    +
    + + + + + + +
    Publicfunction GetTaskIdForBrowserId(browser_id: Integer): int64;
    +

    + Returns the task ID associated with the main task for |browser_id| (value from cef_browser_t::GetIdentifier). Returns -1 if |browser_id| is invalid, does not currently have an associated task, or the function was called from the incorrect thread.

    +
    +
    Generated by PasDoc 0.16.0-snapshot. + + diff --git a/docs/html/uCEFInterfaces.ICefWindowDelegate.html b/docs/html/uCEFInterfaces.ICefWindowDelegate.html index bd2ab700..6c56025f 100644 --- a/docs/html/uCEFInterfaces.ICefWindowDelegate.html +++ b/docs/html/uCEFInterfaces.ICefWindowDelegate.html @@ -122,6 +122,10 @@
    Public procedure OnGetWindowRuntimeStyle(var aResult: TCefRuntimeStyle);
    Publicprocedure OnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean);

    Description

    Methods

    @@ -187,7 +191,7 @@

    - Called when |window| is transitioning to or from fullscreen mode. On MacOS the transition occurs asynchronously with |is_competed| set to false (0) when the transition starts and true (1) after the transition completes. On other platforms the transition occurs synchronously with |is_completed| set to true (1) after the transition completes. With the Alloy runtime you must also implement ICefDisplayHandler.OnFullscreenModeChange to handle fullscreen transitions initiated by browser content.

    + Called when |window| is transitioning to or from fullscreen mode. On MacOS the transition occurs asynchronously with |is_competed| set to false (0) when the transition starts and true (1) after the transition completes. On other platforms the transition occurs synchronously with |is_completed| set to true (1) after the transition completes. With Alloy style you must also implement ICefDisplayHandler.OnFullscreenModeChange to handle fullscreen transitions initiated by browser content.

    @@ -349,7 +353,7 @@

    Native/OS theme colors are configured globally and do not need to be customized for each Window individually. An example of a native/OS theme change that triggers this callback is when the user switches between dark and light mode during application lifespan. Native/OS theme changes can be disabled by passing the `–force-dark-mode` or `–force-light-mode` command-line flag. -

    Chrome theme colors will be applied and this callback will be triggered if/when a BrowserView is added to the Window's component hierarchy. Chrome theme colors can be configured on a per-RequestContext basis using ICefRequestContext.SetChromeColorScheme or (Chrome runtime only) by visiting chrome://settings/manageProfile. Any theme changes using those mechanisms will also trigger this callback. Chrome theme colors will be persisted and restored from disk cache with the Chrome runtime, and with the Alloy runtime if persist_user_preferences is set to true (1) via CefSettings or ICefRequestContext Settings. +

    Chrome theme colors will be applied and this callback will be triggered if/when a BrowserView is added to the Window's component hierarchy. Chrome theme colors can be configured on a per-RequestContext basis using ICefRequestContext.SetChromeColorScheme or (Chrome style only) by visiting chrome://settings/manageProfile. Any theme changes using those mechanisms will also trigger this callback. Chrome theme colors will be persisted and restored from disk cache.

    This callback is not triggered on Window creation so clients that wish to customize the initial native/OS theme must call ICefWindow.SetThemeColor and ICefWindow.ThemeChanged before showing the first Window. @@ -368,6 +372,16 @@ Optionally change the runtime style for this Window. See TCefRuntimeStyle documentation for details.

    + + + + + + +
    Publicprocedure OnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean);
    +

    + Return Linux-specific window properties for correctly handling by window managers.

    +

    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFInterfaces.ICefWindowDelegateEvents.html b/docs/html/uCEFInterfaces.ICefWindowDelegateEvents.html index 74585249..764109d2 100644 --- a/docs/html/uCEFInterfaces.ICefWindowDelegateEvents.html +++ b/docs/html/uCEFInterfaces.ICefWindowDelegateEvents.html @@ -115,6 +115,10 @@
    Public procedure doOnGetWindowRuntimeStyle(var aResult: TCefRuntimeStyle);
    Publicprocedure doOnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean);

    Description

    Methods

    @@ -299,6 +303,14 @@

    This item has no description.

    + + + + + + +
    Publicprocedure doOnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean);
    +

    This item has no description.


    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFInterfaces.IChromiumEvents.html b/docs/html/uCEFInterfaces.IChromiumEvents.html index 9394feff..24bd5ee8 100644 --- a/docs/html/uCEFInterfaces.IChromiumEvents.html +++ b/docs/html/uCEFInterfaces.IChromiumEvents.html @@ -424,38 +424,6 @@
    Publicprocedure doOnExtensionLoadFailed(result: TCefErrorcode);
    Publicprocedure doOnExtensionLoaded(const extension: ICefExtension);
    Publicprocedure doOnExtensionUnloaded(const extension: ICefExtension);
    Publicfunction doOnExtensionBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    Publicfunction doOnExtensionBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    Publicprocedure doOnExtensionGetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser);
    Publicfunction doOnExtensionCanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean;
    Publicfunction doOnExtensionGetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean;
    Public procedure doOnPrintStart(const browser: ICefBrowser);
    - - - -
    Publicprocedure doOnExtensionLoadFailed(result: TCefErrorcode);
    -

    -ICefExtensionHandler

    -
    - - - - - - -
    Publicprocedure doOnExtensionLoaded(const extension: ICefExtension);
    -

    This item has no description.

    - - - - - - -
    Publicprocedure doOnExtensionUnloaded(const extension: ICefExtension);
    -

    This item has no description.

    - - - - - - -
    Publicfunction doOnExtensionBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    -

    This item has no description.

    - - - - - - -
    Publicfunction doOnExtensionBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean;
    -

    This item has no description.

    - - - - - - -
    Publicprocedure doOnExtensionGetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser);
    -

    This item has no description.

    - - - - - - -
    Publicfunction doOnExtensionCanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean;
    -

    This item has no description.

    - - - - - - -
    Publicfunction doOnExtensionGetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean;
    -

    This item has no description.

    - - - + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - diff --git a/docs/html/uCEFLibFunctions.html b/docs/html/uCEFLibFunctions.html index 44cdfbdb..a45dccfd 100644 --- a/docs/html/uCEFLibFunctions.html +++ b/docs/html/uCEFLibFunctions.html @@ -235,62 +235,68 @@ + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + @@ -379,6 +385,12 @@ + + + + + + @@ -1168,6 +1180,15 @@
    Public procedure doOnPrintStart(const browser: ICefBrowser);
    diff --git a/docs/html/uCEFInterfaces.html b/docs/html/uCEFInterfaces.html index d768249b..2f6d6839 100644 --- a/docs/html/uCEFInterfaces.html +++ b/docs/html/uCEFInterfaces.html @@ -230,199 +230,191 @@ Implement this interface for asynchronous task execution. If the task is posted successfully and if the associated message loop is still running then the execute() function will be called on the target thread. If the task fails to post then the task object may be destroyed on the source thread instead of the target thread. For this reason be cautious when performing work in the task object destructor.
    Interface ICefTaskManager Interface that facilitates managing the browser-related tasks. The functions of this structure may only be called on the UI thread.
    Interface ICefTaskRunner Interface that asynchronously executes tasks on the associated thread. It is safe to call the functions of this interface on any thread.

    CEF maintains multiple internal threads that are used for handling different types of tasks in different processes. The TCefThreadId definitions in cef_types.h list the common CEF threads. Task runners are also available for other CEF threads as appropriate (for example, V8 WebWorker threads).

    Interface ICefThread A simple thread abstraction that establishes a message loop on a new thread. The consumer uses ICefTaskRunner to execute code on the thread's message loop. The thread is terminated when the ICefThread object is destroyed or stop() is called. All pending tasks queued on the thread's message loop will run to completion before the thread is terminated. cef_thread_create() can be called on any valid CEF thread in either the browser or render process. This interface should only be used for tasks that require a dedicated thread. In most cases you can post tasks to an existing CEF thread instead of creating a new one; see cef_task.h for details.
    Interface ICefWaitableEvent WaitableEvent is a thread synchronization tool that allows one thread to wait for another thread to finish some work. This is equivalent to using a Lock+ConditionVariable to protect a simple boolean value. However, using WaitableEvent in conjunction with a Lock to wait for a more complex state change (e.g., for an item to be added to a queue) is not recommended. In that case consider using a ConditionVariable instead of a WaitableEvent. It is safe to create and/or signal a WaitableEvent from any thread. Blocking on a WaitableEvent by calling the *wait() functions is not allowed on the browser process UI or IO threads.
    Interface ICefv8Value Interface representing a V8 value handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.
    Interface ICefV8StackFrame Interface representing a V8 stack frame handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.
    Interface ICefV8StackTrace Interface representing a V8 stack trace handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.
    Interface ICefXmlReader Interface that supports the reading of XML data via the libxml streaming API. The functions of this interface should only be called on the thread that creates the object.
    Interface ICefZipReader Interface that supports the reading of zip archives via the zlib unzip API. The functions of this interface should only be called on the thread that creates the object.
    Interface ICefDomNode Interface used to represent a DOM node. The functions of this interface should only be called on the render process main thread.
    Interface ICefDomDocument Interface used to represent a DOM document. The functions of this interface should only be called on the render process main thread thread.
    Interface ICefDomVisitor Interface to implement for visiting the DOM. The functions of this interface will be called on the render process main thread.
    Interface ICefCookieVisitor Interface to implement for visiting cookie values. The functions of this interface will always be called on the UI thread.
    Interface ICefCommandLine Interface used to create and/or parse command line arguments. Arguments with "–", "-" and, on Windows, "/" prefixes are considered switches. Switches will always precede any arguments without switch prefixes. Switches can optionally have a value specified using the "=" delimiter (e.g. "-switch=value"). An argument of "–" will terminate switch parsing with all subsequent tokens, regardless of prefix, being interpreted as non-switch arguments. Switch names should be lowercase ASCII and will be converted to such if necessary. Switch values will retain the original case and UTF8 encoding. This interface can be used before cef_initialize() is called.
    Interface ICefRegistration Generic callback interface used for managing the lifespan of a registration.
    Interface ICefDevToolsMessageObserver Callback interface for ICefBrowserHost.AddDevToolsMessageObserver. The functions of this interface will be called on the browser process UI thread.
    Interface ICefMediaRouter Supports discovery of and communication with media devices on the local network via the Cast and DIAL protocols. The functions of this interface may be called on any browser process thread unless otherwise indicated.
    Interface ICefMediaObserver Implemented by the client to observe MediaRouter events and registered via ICefMediaRouter.AddObserver. The functions of this interface will be called on the browser process UI thread.
    Interface ICefMediaRoute Represents the route between a media source and sink. Instances of this object are created via ICefMediaRouter.CreateRoute and retrieved via ICefMediaObserver.OnRoutes. Contains the status and metadata of a routing operation. The functions of this interface may be called on any browser process thread unless otherwise indicated.
    Interface ICefMediaRouteCreateCallback Callback interface for ICefMediaRouter.CreateRoute. The functions of this interface will be called on the browser process UI thread.
    Interface ICefMediaSinkDeviceInfoCallback Callback interface for ICefMediaSink.GetDeviceInfo. The functions of this interface will be called on the browser process UI thread.
    Interface ICefMediaSink Represents a sink to which media can be routed. Instances of this object are retrieved via ICefMediaObserver.OnSinks. The functions of this interface may be called on any browser process thread unless otherwise indicated.
    Interface ICefMediaSource Represents a source from which media can be routed. Instances of this object are retrieved via ICefMediaRouter.GetSource. The functions of this interface may be called on any browser process thread unless otherwise indicated.
    Interface ICefResourceBundleHandler Interface used to implement a custom resource bundle interface. See TCefSettings for additional options related to resource bundle loading. The functions of this interface may be called on multiple threads.
    Interface ICefBrowserProcessHandler Interface used to implement browser process callbacks. The functions of this interface will be called on the browser process main thread unless otherwise indicated.
    Interface ICefRenderProcessHandler Interface used to implement render process callbacks. The functions of this interface will be called on the render process main thread (TID_RENDERER) unless otherwise indicated.
    Interface ICefApp Implement this interface to provide handler implementations. Methods will be called by the process and/or thread indicated.
    Interface ICefCompletionCallback Generic callback interface used for asynchronous completion.
    Interface ICefSetCookieCallback Interface to implement to be notified of asynchronous completion via ICefCookieManager.SetCookie.
    Interface ICefDeleteCookiesCallback Interface to implement to be notified of asynchronous completion via ICefCookieManager.DeleteCookies.
    Interface ICefCookieManager Interface used for managing cookies. The functions of this interface may be called on any thread unless otherwise indicated.
    Interface ICefCallback Generic callback interface used for asynchronous continuation.
    Interface ICefResourceSkipCallback Callback for asynchronous continuation of ICefResourceHandler.skip.
    Interface ICefResourceReadCallback Callback for asynchronous continuation of ICefResourceHandler.read.
    Interface ICefResourceHandler Interface used to implement a custom request handler interface. The functions of this interface will be called on the IO thread unless otherwise indicated.
    Interface ICefSchemeHandlerFactory Interface that creates ICefResourceHandler instances for handling scheme requests. The functions of this interface will always be called on the IO thread.
    Interface ICefAuthCallback Callback interface used for asynchronous continuation of authentication requests.
    Interface ICefJsDialogCallback Callback interface used for asynchronous continuation of JavaScript dialog requests.
    Interface ICefContextMenuParams Provides information about the context menu state. The functions of this interface can only be accessed on browser process the UI thread.
    Interface ICefMenuModel Supports creation and modification of menus. See TCefMenuId for the command ids that have default implementations. All user-defined command ids should be between MENU_ID_USER_FIRST and MENU_ID_USER_LAST. The functions of this interface can only be accessed on the browser process the UI thread.
    Interface ICefValue Interface that wraps other data value types. Complex types (binary, dictionary and list) will be referenced but not owned by this object. Can be used on any process and thread.
    Interface ICefBinaryValue Interface representing a binary value. Can be used on any process and thread.
    Interface ICefDictionaryValue Interface representing a dictionary value. Can be used on any process and thread.
    Interface ICefListValue Interface representing a list value. Can be used on any process and thread.
    Interface ICefLifeSpanHandler Implement this interface to handle events related to browser life span. The functions of this interface will be called on the UI thread unless otherwise indicated.
    Interface ICefCommandHandler Implement this interface to handle events related to commands. The functions of this interface will be called on the UI thread.
    Interface ICefGetExtensionResourceCallback Callback interface used for asynchronous continuation of ICefExtensionHandler.GetExtensionResource.
    Interface ICefExtensionHandler Implement this interface to handle events related to browser extensions. The functions of this interface will be called on the UI thread. See ICefRequestContext.LoadExtension for information about extension loading.
    Interface ICefExtension Object representing an extension. Methods may be called on any thread unless otherwise indicated.
    Interface ICefLoadHandler Implement this interface to handle events related to browser load status. The functions of this interface will be called on the browser process UI thread or render process main thread (TID_RENDERER). cef_post_delayed_task: function(threadId: TCefThreadId; task: PCefTask; delay_ms: Int64): Integer; cdecl;
    cef_task_manager_get: function: PCefTaskManager;
    cef_thread_create: function(const display_name: PCefString; priority: TCefThreadPriority; message_loop_type: TCefMessageLoopType; stoppable: integer; com_init_mode: TCefCOMInitMode): PCefThread; cdecl;
    cef_begin_tracing: function(const categories: PCefString; callback: PCefCompletionCallback): Integer; cdecl;
    cef_end_tracing: function(const tracing_file: PCefString; callback: PCefEndTracingCallback): Integer; cdecl;
    cef_now_from_system_trace_time: function: int64; cdecl;
    cef_urlrequest_create: function(request: PCefRequest; client: PCefUrlRequestClient; request_context: PCefRequestContext): PCefUrlRequest; cdecl;
    cef_v8context_get_current_context: function: PCefv8Context; cdecl;
    cef_v8context_get_entered_context: function: PCefv8Context; cdecl;
    cef_v8context_in_context: function: Integer; cdecl;
    cef_v8value_create_undefined: function: PCefv8Value; cdecl;
    cef_v8value_create_null: function: PCefv8Value; cdecl;
    cef_v8value_create_bool: function(value: Integer): PCefv8Value; cdecl;
    cef_v8value_create_int: function(value: Integer): PCefv8Value; cdecl;
    cef_v8value_create_uint: function(value: Cardinal): PCefv8Value; cdecl;
    cef_v8value_create_double: function(value: Double): PCefv8Value; cdecl;
    cef_v8value_create_date: function(value: TCefBaseTime): PCefv8Value; cdecl;
    cef_v8value_create_string: function(const value: PCefString): PCefv8Value; cdecl;
    cef_v8value_create_object: function(accessor: PCefV8Accessor; interceptor: PCefV8Interceptor): PCefv8Value; cdecl;
    cef_v8value_create_array: function(length: Integer): PCefv8Value; cdecl;
    cef_v8value_create_array_buffer: function(buffer : Pointer; length: NativeUInt; release_callback : PCefv8ArrayBufferReleaseCallback): PCefv8Value; cdecl;
    cef_v8value_create_array_buffer_with_copy: function(buffer : Pointer; length: NativeUInt): PCefv8Value; cdecl;
    cef_v8value_create_function: function(const name: PCefString; handler: PCefv8Handler): PCefv8Value; cdecl;
    cef_set_osmodal_loop: procedure(osModalLoop: Integer); cdecl;
    cef_dump_without_crashing: function(mseconds_between_dumps: int64; const function_name, file_name: PAnsiChar; line_number: integer): Integer; cdecl;
    cef_dump_without_crashing_unthrottled: function: Integer; cdecl;
    cef_get_min_log_level: function: Integer; cdecl;
    + + + +
    cef_task_manager_get: function: PCefTaskManager;
    +

    +/include/capi/cef_task_manager_capi.h

    +
    + +
    cef_thread_create: function(const display_name: PCefString; priority: TCefThreadPriority; message_loop_type: TCefMessageLoopType; stoppable: integer; com_init_mode: TCefCOMInitMode): PCefThread; cdecl;
    @@ -1309,6 +1330,13 @@
    + + + +
    cef_v8value_create_array_buffer_with_copy: function(buffer : Pointer; length: NativeUInt): PCefv8Value; cdecl;
    +

    This item has no description.

    + +
    cef_v8value_create_function: function(const name: PCefString; handler: PCefv8Handler): PCefv8Value; cdecl;
    @@ -1538,6 +1566,22 @@
    + + + +
    cef_dump_without_crashing: function(mseconds_between_dumps: int64; const function_name, file_name: PAnsiChar; line_number: integer): Integer; cdecl;
    +

    +/include/internal/cef_dump_without_crashing_internal.h

    +
    + + + + + +
    cef_dump_without_crashing_unthrottled: function: Integer; cdecl;
    +

    This item has no description.

    + + diff --git a/docs/html/uCEFLifeSpanHandler.TCustomLifeSpanHandler.html b/docs/html/uCEFLifeSpanHandler.TCustomLifeSpanHandler.html index 0d4874f5..70dad428 100644 --- a/docs/html/uCEFLifeSpanHandler.TCustomLifeSpanHandler.html +++ b/docs/html/uCEFLifeSpanHandler.TCustomLifeSpanHandler.html @@ -99,7 +99,7 @@

    The |extra_info| parameter provides an opportunity to specify extra information specific to the created popup browser that will be passed to ICefRenderProcessHandler.OnBrowserCreated() in the render process. The existing |extra_info| object, if any, will be read-only but may be replaced with a new object. -

    Views-hosted source browsers will create Views-hosted DevTools popups unless |use_default_window| is set to to true (1). DevTools popups can be blocked by returning true (1) from ICefCommandHandler.OnChromeCommand for IDC_DEV_TOOLS. Only used with the Chrome runtime. +

    Views-hosted source browsers will create Views-hosted DevTools popups unless |use_default_window| is set to to true (1). DevTools popups can be blocked by returning true (1) from ICefCommandHandler.OnChromeCommand for IDC_DEV_TOOLS. Only used with Chrome style.

    diff --git a/docs/html/uCEFPermissionHandler.TCefPermissionHandlerOwn.html b/docs/html/uCEFPermissionHandler.TCefPermissionHandlerOwn.html index 3fd90f66..d3d9a34a 100644 --- a/docs/html/uCEFPermissionHandler.TCefPermissionHandlerOwn.html +++ b/docs/html/uCEFPermissionHandler.TCefPermissionHandlerOwn.html @@ -54,7 +54,21 @@
    cef_get_min_log_level: function: Integer; cdecl;
    diff --git a/docs/html/uCEFLifeSpanHandler.TCefLifeSpanHandlerOwn.html b/docs/html/uCEFLifeSpanHandler.TCefLifeSpanHandlerOwn.html index 6e4c8e9a..d526c445 100644 --- a/docs/html/uCEFLifeSpanHandler.TCefLifeSpanHandlerOwn.html +++ b/docs/html/uCEFLifeSpanHandler.TCefLifeSpanHandlerOwn.html @@ -78,7 +78,7 @@

    The |extra_info| parameter provides an opportunity to specify extra information specific to the created popup browser that will be passed to ICefRenderProcessHandler.OnBrowserCreated() in the render process. The existing |extra_info| object, if any, will be read-only but may be replaced with a new object. -

    Views-hosted source browsers will create Views-hosted DevTools popups unless |use_default_window| is set to to true (1). DevTools popups can be blocked by returning true (1) from ICefCommandHandler.OnChromeCommand for IDC_DEV_TOOLS. Only used with the Chrome runtime. +

    Views-hosted source browsers will create Views-hosted DevTools popups unless |use_default_window| is set to to true (1). DevTools popups can be blocked by returning true (1) from ICefCommandHandler.OnChromeCommand for IDC_DEV_TOOLS. Only used with Chrome style.

    This item has no description. Showing description inherited from ICefPermissionHandler.OnRequestMediaAccessPermission.

    - Called when a page requests permission to access media. |requesting_origin| is the URL origin requesting permission. |requested_permissions| is a combination of values from TCefMediaAccessPermissionTypes that represent the requested permissions. Return true (1) and call ICefMediaAccessCallback functions either in this function or at a later time to continue or cancel the request. Return false (0) to proceed with default handling. With the Chrome runtime, default handling will display the permission request UI. With the Alloy runtime, default handling will deny the request. This function will not be called if the "–enable-media-stream" command-line switch is used to grant all permissions.

    + + +

    Called when a page requests permission to access media. + +

    |requesting_origin| is the URL origin requesting permission. + +

    |requested_permissions| is a combination of values from TCefMediaAccessPermissionTypes that represent the requested permissions. + +

    Return true (1) and call ICefMediaAccessCallback functions either in this function or at a later time to continue or cancel the request. + +

    Return false (0) to proceed with default handling. With Chrome style, default handling will display the permission request UI. + +

    With Alloy style, default handling will deny the request. This function will not be called if the "–enable-media-stream" command-line switch is used to grant all permissions. + +

    @@ -64,7 +78,7 @@

    This item has no description. Showing description inherited from ICefPermissionHandler.OnShowPermissionPrompt.

    - Called when a page should show a permission prompt. |prompt_id| uniquely identifies the prompt. |requesting_origin| is the URL origin requesting permission. |requested_permissions| is a combination of values from TCefPermissionRequestTypes that represent the requested permissions. Return true (1) and call ICefPermissionPromptCallback.Continue either in this function or at a later time to continue or cancel the request. Return false (0) to proceed with default handling. With the Chrome runtime, default handling will display the permission prompt UI. With the Alloy runtime, default handling is CEF_PERMISSION_RESULT_IGNORE.

    + Called when a page should show a permission prompt. |prompt_id| uniquely identifies the prompt. |requesting_origin| is the URL origin requesting permission. |requested_permissions| is a combination of values from TCefPermissionRequestTypes that represent the requested permissions. Return true (1) and call ICefPermissionPromptCallback.Continue either in this function or at a later time to continue or cancel the request. Return false (0) to proceed with default handling. With Chrome style, default handling will display the permission prompt UI. With Alloy style, default handling is CEF_PERMISSION_RESULT_IGNORE.

    diff --git a/docs/html/uCEFPermissionHandler.TCustomPermissionHandler.html b/docs/html/uCEFPermissionHandler.TCustomPermissionHandler.html index 9429d9da..e4733414 100644 --- a/docs/html/uCEFPermissionHandler.TCustomPermissionHandler.html +++ b/docs/html/uCEFPermissionHandler.TCustomPermissionHandler.html @@ -75,7 +75,21 @@

    This item has no description. Showing description inherited from ICefPermissionHandler.OnRequestMediaAccessPermission.

    - Called when a page requests permission to access media. |requesting_origin| is the URL origin requesting permission. |requested_permissions| is a combination of values from TCefMediaAccessPermissionTypes that represent the requested permissions. Return true (1) and call ICefMediaAccessCallback functions either in this function or at a later time to continue or cancel the request. Return false (0) to proceed with default handling. With the Chrome runtime, default handling will display the permission request UI. With the Alloy runtime, default handling will deny the request. This function will not be called if the "–enable-media-stream" command-line switch is used to grant all permissions.

    + + +

    Called when a page requests permission to access media. + +

    |requesting_origin| is the URL origin requesting permission. + +

    |requested_permissions| is a combination of values from TCefMediaAccessPermissionTypes that represent the requested permissions. + +

    Return true (1) and call ICefMediaAccessCallback functions either in this function or at a later time to continue or cancel the request. + +

    Return false (0) to proceed with default handling. With Chrome style, default handling will display the permission request UI. + +

    With Alloy style, default handling will deny the request. This function will not be called if the "–enable-media-stream" command-line switch is used to grant all permissions. + +

    @@ -85,7 +99,7 @@

    This item has no description. Showing description inherited from ICefPermissionHandler.OnShowPermissionPrompt.

    - Called when a page should show a permission prompt. |prompt_id| uniquely identifies the prompt. |requesting_origin| is the URL origin requesting permission. |requested_permissions| is a combination of values from TCefPermissionRequestTypes that represent the requested permissions. Return true (1) and call ICefPermissionPromptCallback.Continue either in this function or at a later time to continue or cancel the request. Return false (0) to proceed with default handling. With the Chrome runtime, default handling will display the permission prompt UI. With the Alloy runtime, default handling is CEF_PERMISSION_RESULT_IGNORE.

    + Called when a page should show a permission prompt. |prompt_id| uniquely identifies the prompt. |requesting_origin| is the URL origin requesting permission. |requested_permissions| is a combination of values from TCefPermissionRequestTypes that represent the requested permissions. Return true (1) and call ICefPermissionPromptCallback.Continue either in this function or at a later time to continue or cancel the request. Return false (0) to proceed with default handling. With Chrome style, default handling will display the permission prompt UI. With Alloy style, default handling is CEF_PERMISSION_RESULT_IGNORE.

    diff --git a/docs/html/uCEFRequestContext.TCefRequestContextRef.html b/docs/html/uCEFRequestContext.TCefRequestContextRef.html index 2281e169..c6d7b8a8 100644 --- a/docs/html/uCEFRequestContext.TCefRequestContextRef.html +++ b/docs/html/uCEFRequestContext.TCefRequestContextRef.html @@ -81,78 +81,58 @@ - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - - - - + + + +
    Protectedprocedure LoadExtension(const root_directory: ustring; const manifest: ICefDictionaryValue; const handler: ICefExtensionHandler);
    Protectedfunction DidLoadExtension(const extension_id: ustring): boolean;
    Protectedfunction HasExtension(const extension_id: ustring): boolean;
    Protectedfunction GetExtensions(const extension_ids: TStringList): boolean;
    Protectedfunction GetExtension(const extension_id: ustring): ICefExtension;
    Protected function GetMediaRouter(const callback: ICefCompletionCallback): ICefMediaRouter;
    Protected function GetWebsiteSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes): ICefValue;
    Protected procedure SetWebsiteSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes; const value: ICefValue);
    Protected function GetContentSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes): TCefContentSettingValues;
    Protected procedure SetContentSetting(const requesting_url, top_level_url: ustring; content_type: TCefContentSettingTypes; value: TCefContentSettingValues);
    Protected procedure SetChromeColorScheme(variant: TCefColorVariant; user_color: TCefColor);
    Protected function GetChromeColorSchemeMode: TCefColorVariant;
    Protected function GetChromeColorSchemeColor: TCefColor;
    Protected function GetChromeColorSchemeVariant: TCefColorVariant;
    Public class function UnWrap(data: Pointer): ICefRequestContext; reintroduce;
    Public class function Global: ICefRequestContext; reintroduce;
    Public class function New(const settings: PCefRequestContextSettings; const handler: ICefRequestContextHandler = nil): ICefRequestContext; overload;
    Publicclass function New(const aCache, aAcceptLanguageList, aCookieableSchemesList : ustring; aCookieableSchemesExcludeDefaults, aPersistSessionCookies, aPersistUserPreferences : boolean; const handler: ICefRequestContextHandler = nil): ICefRequestContext; overload;
    Publicclass function New(const aCache, aAcceptLanguageList, aCookieableSchemesList : ustring; aCookieableSchemesExcludeDefaults, aPersistSessionCookies : boolean; const handler: ICefRequestContextHandler = nil): ICefRequestContext; overload;
    Public class function Shared(const other: ICefRequestContext; const handler: ICefRequestContextHandler): ICefRequestContext;
    @@ -291,80 +271,6 @@ - - - -
    Protectedprocedure LoadExtension(const root_directory: ustring; const manifest: ICefDictionaryValue; const handler: ICefExtensionHandler);
    -

    - Load an extension. - -

    If extension resources will be read from disk using the default load implementation then |root_directory| should be the absolute path to the extension resources directory and |manifest| should be NULL. If extension resources will be provided by the client (e.g. via cef_request_handler_t and/or cef_extension_handler_t) then |root_directory| should be a path component unique to the extension (if not absolute this will be internally prefixed with the PK_DIR_RESOURCES path) and |manifest| should contain the contents that would otherwise be read from the "manifest.json" file on disk. - -

    The loaded extension will be accessible in all contexts sharing the same storage (HasExtension returns true (1)). However, only the context on which this function was called is considered the loader (DidLoadExtension returns true (1)) and only the loader will receive cef_request_context_handler_t callbacks for the extension. - -

    cef_extension_handler_t::OnExtensionLoaded will be called on load success or cef_extension_handler_t::OnExtensionLoadFailed will be called on load failure. - -

    If the extension specifies a background script via the "background" manifest key then cef_extension_handler_t::OnBeforeBackgroundBrowser will be called to create the background browser. See that function for additional information about background scripts. - -

    For visible extension views the client application should evaluate the manifest to determine the correct extension URL to load and then pass that URL to the cef_browser_host_t::CreateBrowser* function after the extension has loaded. For example, the client can look for the "browser_action" manifest key as documented at https://developer.chrome.com/extensions/browserAction. Extension URLs take the form "chrome-extension://<extension_id>/<path>". - -

    Browsers that host extensions differ from normal browsers as follows: - Can access chrome.* JavaScript APIs if allowed by the manifest. Visit chrome://extensions-support for the list of extension APIs currently supported by CEF. - Main frame navigation to non-extension content is blocked. - Pinch-zooming is disabled. - CefBrowserHost::GetExtension returns the hosted extension. - CefBrowserHost::IsBackgroundHost returns true for background hosts. - -

    See https://developer.chrome.com/extensions for extension implementation and usage documentation. - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Protectedfunction DidLoadExtension(const extension_id: ustring): boolean;
    -

    - Returns true (1) if this context was used to load the extension identified by |extension_id|. Other contexts sharing the same storage will also have access to the extension (see HasExtension). This function must be called on the browser process UI thread. - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Protectedfunction HasExtension(const extension_id: ustring): boolean;
    -

    - Returns true (1) if this context has access to the extension identified by |extension_id|. This may not be the context that was used to load the extension (see DidLoadExtension). This function must be called on the browser process UI thread. - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Protectedfunction GetExtensions(const extension_ids: TStringList): boolean;
    -

    - Retrieve the list of all extensions that this context has access to (see HasExtension). |extension_ids| will be populated with the list of extension ID values. Returns true (1) on success. This function must be called on the browser process UI thread. - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - - -
    Protectedfunction GetExtension(const extension_id: ustring): ICefExtension;
    -

    - Returns the extension matching |extension_id| or NULL if no matching extension is accessible in this context (see HasExtension). This function must be called on the browser process UI thread. - -

    WARNING: This function is deprecated and will be removed in ~M127.

    -
    - - - - - + +
    Protected function GetMediaRouter(const callback: ICefCompletionCallback): ICefMediaRouter;
    @@ -498,7 +404,7 @@ - +
    Publicclass function New(const aCache, aAcceptLanguageList, aCookieableSchemesList : ustring; aCookieableSchemesExcludeDefaults, aPersistSessionCookies, aPersistUserPreferences : boolean; const handler: ICefRequestContextHandler = nil): ICefRequestContext; overload;class function New(const aCache, aAcceptLanguageList, aCookieableSchemesList : ustring; aCookieableSchemesExcludeDefaults, aPersistSessionCookies : boolean; const handler: ICefRequestContextHandler = nil): ICefRequestContext; overload;

    @@ -514,8 +420,6 @@

    -

    -

    Parameters
    @@ -529,8 +433,6 @@
    Setting this parameter to true will disable all loading and saving of cookies. See TCefRequestContextSettings.cookieable_schemes_list for more information.
    aPersistSessionCookies
    To persist session cookies (cookies without an expiry date or validity interval) by default when using the global cookie manager set this value to true. See TCefRequestContextSettings.persist_session_cookies for more information.
    -
    aPersistUserPreferences
    -
    To persist user preferences as a JSON file in the cache path directory set this value to true. See TCefRequestContextSettings.persist_user_preferences for more information.
    handler
    Optional handler for the request context.
    diff --git a/docs/html/uCEFRequestHandler.TCefRequestHandlerOwn.html b/docs/html/uCEFRequestHandler.TCefRequestHandlerOwn.html index 4ab7e20b..43491f4d 100644 --- a/docs/html/uCEFRequestHandler.TCefRequestHandlerOwn.html +++ b/docs/html/uCEFRequestHandler.TCefRequestHandlerOwn.html @@ -156,7 +156,7 @@

    This item has no description. Showing description inherited from ICefRequestHandler.OnRenderProcessUnresponsive.

    - Called on the browser process UI thread when the render process is unresponsive as indicated by a lack of input event processing for at least 15 seconds. Return false (0) for the default behavior which is an indefinite wait with the Alloy runtime or display of the "Page unresponsive" dialog with the Chrome runtime. Return true (1) and don't execute the callback for an indefinite wait without display of the Chrome runtime dialog. Return true (1) and call ICefUnresponsiveProcessCallback.Wait either in this function or at a later time to reset the wait timer, potentially triggering another call to this function if the process remains unresponsive. Return true (1) and call ICefUnresponsiveProcessCallback.Terminate either in this function or at a later time to terminate the unresponsive process, resulting in a call to OnRenderProcessTerminated. OnRenderProcessResponsive will be called if the process becomes responsive after this function is called. This functionality depends on the hang monitor which can be disabled by passing the `–disable-hang-monitor` command-line flag or setting GlobalCEFApp.DisableHangMonitor to True.

    + Called on the browser process UI thread when the render process is unresponsive as indicated by a lack of input event processing for at least 15 seconds. Return false (0) for the default behavior which is an indefinite wait with Alloy style or display of the "Page unresponsive" dialog with Chrome style. Return true (1) and don't execute the callback for an indefinite wait without display of the Chrome style dialog. Return true (1) and call ICefUnresponsiveProcessCallback.Wait either in this function or at a later time to reset the wait timer, potentially triggering another call to this function if the process remains unresponsive. Return true (1) and call ICefUnresponsiveProcessCallback.Terminate either in this function or at a later time to terminate the unresponsive process, resulting in a call to OnRenderProcessTerminated. OnRenderProcessResponsive will be called if the process becomes responsive after this function is called. This functionality depends on the hang monitor which can be disabled by passing the `–disable-hang-monitor` command-line flag.

    diff --git a/docs/html/uCEFRequestHandler.TCustomRequestHandler.html b/docs/html/uCEFRequestHandler.TCustomRequestHandler.html index c35d53e4..2b39cb19 100644 --- a/docs/html/uCEFRequestHandler.TCustomRequestHandler.html +++ b/docs/html/uCEFRequestHandler.TCustomRequestHandler.html @@ -177,7 +177,7 @@

    This item has no description. Showing description inherited from ICefRequestHandler.OnRenderProcessUnresponsive.

    - Called on the browser process UI thread when the render process is unresponsive as indicated by a lack of input event processing for at least 15 seconds. Return false (0) for the default behavior which is an indefinite wait with the Alloy runtime or display of the "Page unresponsive" dialog with the Chrome runtime. Return true (1) and don't execute the callback for an indefinite wait without display of the Chrome runtime dialog. Return true (1) and call ICefUnresponsiveProcessCallback.Wait either in this function or at a later time to reset the wait timer, potentially triggering another call to this function if the process remains unresponsive. Return true (1) and call ICefUnresponsiveProcessCallback.Terminate either in this function or at a later time to terminate the unresponsive process, resulting in a call to OnRenderProcessTerminated. OnRenderProcessResponsive will be called if the process becomes responsive after this function is called. This functionality depends on the hang monitor which can be disabled by passing the `–disable-hang-monitor` command-line flag or setting GlobalCEFApp.DisableHangMonitor to True.

    + Called on the browser process UI thread when the render process is unresponsive as indicated by a lack of input event processing for at least 15 seconds. Return false (0) for the default behavior which is an indefinite wait with Alloy style or display of the "Page unresponsive" dialog with Chrome style. Return true (1) and don't execute the callback for an indefinite wait without display of the Chrome style dialog. Return true (1) and call ICefUnresponsiveProcessCallback.Wait either in this function or at a later time to reset the wait timer, potentially triggering another call to this function if the process remains unresponsive. Return true (1) and call ICefUnresponsiveProcessCallback.Terminate either in this function or at a later time to terminate the unresponsive process, resulting in a call to OnRenderProcessTerminated. OnRenderProcessResponsive will be called if the process becomes responsive after this function is called. This functionality depends on the hang monitor which can be disabled by passing the `–disable-hang-monitor` command-line flag.

    diff --git a/docs/html/uCEFTaskManager.TCefTaskManagerRef.html b/docs/html/uCEFTaskManager.TCefTaskManagerRef.html new file mode 100644 index 00000000..2233b586 --- /dev/null +++ b/docs/html/uCEFTaskManager.TCefTaskManagerRef.html @@ -0,0 +1,162 @@ + + + +cef4delphi: uCEFTaskManager: Class TCefTaskManagerRef + + + + + + +

    Class TCefTaskManagerRef

    +
    +
    Fields
    Properties
    +

    Unit

    + +

    Declaration

    +

    +type TCefTaskManagerRef = class(TCefBaseRefCountedRef, ICefTaskManager)

    +

    Description

    +

    + Class that facilitates managing the browser-related tasks.

    +

    + + +

    The functions of this class may only be called on the CEF UI thread. + +

    UNKNOWN + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_task_manager_capi.h">CEF source file: /include/capi/cef_task_manager_capi.h (cef_task_manager_t))

    +

    Hierarchy

    +

    Overview

    +

    Methods

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Protectedfunction GetTasksCount: NativeUInt;
    Protectedfunction GetTaskIdsList(var task_ids: TCefCustomInt64Array): boolean;
    Protectedfunction GetTaskInfo(const task_id: int64; var info: TCustomTaskInfo): boolean;
    Protectedfunction KillTask(task_id: int64): boolean;
    Protectedfunction GetTaskIdForBrowserId(browser_id: Integer): int64;
    Publicclass function UnWrap(data: Pointer): ICefTaskManager;
    Publicclass function New(): ICefTaskManager;
    +

    Description

    +

    Methods

    + + + + + + +
    Protectedfunction GetTasksCount: NativeUInt;
    +

    + Returns the number of tasks currently tracked by the task manager. Returns 0 if the function was called from the incorrect thread.

    +

    + + +

    This function may only be called on the CEF UI thread.

    +
    + + + + + + +
    Protectedfunction GetTaskIdsList(var task_ids: TCefCustomInt64Array): boolean;
    +

    + Gets the list of task IDs currently tracked by the task manager. Tasks that share the same process id will always be consecutive. The list will be sorted in a way that reflects the process tree: the browser process will be first, followed by the gpu process if it exists. Related processes (e.g., a subframe process and its parent) will be kept together if possible. Callers can expect this ordering to be stable when a process is added or removed. The task IDs are unique within the application lifespan. Returns false (0) if the function was called from the incorrect thread.

    +

    + + +

    This function may only be called on the CEF UI thread.

    +
    + + + + + + +
    Protectedfunction GetTaskInfo(const task_id: int64; var info: TCustomTaskInfo): boolean;
    +

    + Gets information about the task with |task_id|. Returns true (1) if the information about the task was successfully retrieved and false (0) if the |task_id| is invalid or the function was called from the incorrect thread.

    +

    + + +

    This function may only be called on the CEF UI thread.

    +
    + + + + + + +
    Protectedfunction KillTask(task_id: int64): boolean;
    +

    + Attempts to terminate a task with |task_id|. Returns false (0) if the |task_id| is invalid, the call is made from an incorrect thread, or if the task cannot be terminated.

    +

    + + +

    This function may only be called on the CEF UI thread.

    +
    + + + + + + +
    Protectedfunction GetTaskIdForBrowserId(browser_id: Integer): int64;
    +

    + Returns the task ID associated with the main task for |browser_id| (value from cef_browser_t::GetIdentifier). Returns -1 if |browser_id| is invalid, does not currently have an associated task, or the function was called from the incorrect thread.

    +

    + + +

    This function may only be called on the CEF UI thread.

    +
    + + + + + + +
    Publicclass function UnWrap(data: Pointer): ICefTaskManager;
    +

    This item has no description.

    + + + + + + +
    Publicclass function New(): ICefTaskManager;
    +

    + Returns the global task manager.

    +

    + + +

    This function may only be called on the CEF UI thread.

    +
    +
    Generated by PasDoc 0.16.0-snapshot. + + diff --git a/docs/html/uCEFExtension.html b/docs/html/uCEFTaskManager.html similarity index 81% rename from docs/html/uCEFExtension.html rename to docs/html/uCEFTaskManager.html index 5a67d548..71916800 100644 --- a/docs/html/uCEFExtension.html +++ b/docs/html/uCEFTaskManager.html @@ -1,14 +1,14 @@ -cef4delphi: uCEFExtension +cef4delphi: uCEFTaskManager -

    Unit uCEFExtension

    +

    Unit uCEFTaskManager

    Uses
    Functions and Procedures
    Types
    Constants
    Variables

    Description

    @@ -20,8 +20,8 @@
    Description
    Class TCefExtensionRef Class TCefTaskManagerRef Class that facilitates managing the browser-related tasks.

    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFTypes.TCefBrowserHost.html b/docs/html/uCEFTypes.TCefBrowserHost.html index 7373b68e..c9c7f960 100644 --- a/docs/html/uCEFTypes.TCefBrowserHost.html +++ b/docs/html/uCEFTypes.TCefBrowserHost.html @@ -267,14 +267,6 @@
    Publicget_extension: function(self: PCefBrowserHost): PCefExtension; stdcall;
    Publicis_background_host: function(self: PCefBrowserHost): integer; stdcall;
    Public set_audio_muted: procedure(self: PCefBrowserHost; mute: integer); stdcall;
    - - - -
    Publicget_extension: function(self: PCefBrowserHost): PCefExtension; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicis_background_host: function(self: PCefBrowserHost): integer; stdcall;
    -

    This item has no description.

    - - -
    Public set_audio_muted: procedure(self: PCefBrowserHost; mute: integer); stdcall;
    diff --git a/docs/html/uCEFTypes.TCefBrowserSettings.html b/docs/html/uCEFTypes.TCefBrowserSettings.html index 0333c198..3ca93e7e 100644 --- a/docs/html/uCEFTypes.TCefBrowserSettings.html +++ b/docs/html/uCEFTypes.TCefBrowserSettings.html @@ -391,7 +391,7 @@

    - Controls whether the Chrome status bubble will be used. Only supported with the Chrome runtime. For details about the status bubble see https://www.chromium.org/user-experience/status-bubble/

    + Controls whether the Chrome status bubble will be used. Only supported with Chrome style. For details about the status bubble see https://www.chromium.org/user-experience/status-bubble/

    @@ -401,7 +401,7 @@

    - Controls whether the Chrome zoom bubble will be shown when zooming. Only supported with the Chrome runtime.

    + Controls whether the Chrome zoom bubble will be shown when zooming. Only supported with Chrome style.


    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFTypes.TCefExtension.html b/docs/html/uCEFTypes.TCefExtension.html deleted file mode 100644 index 3d2fc7c9..00000000 --- a/docs/html/uCEFTypes.TCefExtension.html +++ /dev/null @@ -1,147 +0,0 @@ - - - -cef4delphi: uCEFTypes: Record TCefExtension - - - - - - -

    Record TCefExtension

    -
    -
    Hierarchy
    Methods
    Properties
    -

    Unit

    - -

    Declaration

    -

    -type TCefExtension = record

    -

    Description

    -

    - Object representing an extension. Methods may be called on any thread unless otherwise indicated.

    -

    - - -

    WARNING: This API is deprecated and will be removed in ~M127. - -

    Implemented by ICefExtension. - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_capi.h">CEF source file: /include/capi/cef_extension_capi.h (cef_extension_t))

    -

    Overview

    -

    Fields

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Publicbase: TCefBaseRefCounted;
    Publicget_identifier: function(self: PCefExtension) : PCefStringUserFree; stdcall;
    Publicget_path: function(self: PCefExtension) : PCefStringUserFree; stdcall;
    Publicget_manifest: function(self: PCefExtension) : PCefDictionaryValue; stdcall;
    Publicis_same: function(self, that: PCefExtension) : Integer; stdcall;
    Publicget_handler: function(self: PCefExtension) : PCefExtensionHandler; stdcall;
    Publicget_loader_context: function(self: PCefExtension) : PCefRequestContext; stdcall;
    Publicis_loaded: function(self: PCefExtension) : Integer; stdcall;
    Publicunload: procedure(self: PCefExtension); stdcall;
    -

    Description

    -

    Fields

    - - - - - - -
    Publicbase: TCefBaseRefCounted;
    -

    This item has no description.

    - - - - - - -
    Publicget_identifier: function(self: PCefExtension) : PCefStringUserFree; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicget_path: function(self: PCefExtension) : PCefStringUserFree; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicget_manifest: function(self: PCefExtension) : PCefDictionaryValue; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicis_same: function(self, that: PCefExtension) : Integer; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicget_handler: function(self: PCefExtension) : PCefExtensionHandler; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicget_loader_context: function(self: PCefExtension) : PCefRequestContext; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicis_loaded: function(self: PCefExtension) : Integer; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicunload: procedure(self: PCefExtension); stdcall;
    -

    This item has no description.

    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFTypes.TCefExtensionHandler.html b/docs/html/uCEFTypes.TCefExtensionHandler.html deleted file mode 100644 index 64795faa..00000000 --- a/docs/html/uCEFTypes.TCefExtensionHandler.html +++ /dev/null @@ -1,147 +0,0 @@ - - - -cef4delphi: uCEFTypes: Record TCefExtensionHandler - - - - - - -

    Record TCefExtensionHandler

    -
    -
    Hierarchy
    Methods
    Properties
    -

    Unit

    - -

    Declaration

    -

    -type TCefExtensionHandler = record

    -

    Description

    -

    - Implement this structure to handle events related to browser extensions. The functions of this structure will be called on the UI thread. See ICefRequestContext.LoadExtension for information about extension loading.

    -

    - - -

    WARNING: This API is deprecated and will be removed in ~M127. - -

    Implemented by ICefExtensionHandler. - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t))

    -

    Overview

    -

    Fields

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Publicbase: TCefBaseRefCounted;
    Publicon_extension_load_failed: procedure(self: PCefExtensionHandler; result: TCefErrorcode); stdcall;
    Publicon_extension_loaded: procedure(self: PCefExtensionHandler; extension: PCefExtension); stdcall;
    Publicon_extension_unloaded: procedure(self: PCefExtensionHandler; extension: PCefExtension); stdcall;
    Publicon_before_background_browser: function(self: PCefExtensionHandler; extension: PCefExtension; const url: PCefString; var client: PCefClient; settings: PCefBrowserSettings) : Integer; stdcall;
    Publicon_before_browser: function(self: PCefExtensionHandler; extension: PCefExtension; browser, active_browser: PCefBrowser; index: Integer; const url: PCefString; active: Integer; windowInfo: PCefWindowInfo; var client: PCefClient; settings: PCefBrowserSettings) : Integer; stdcall;
    Publicget_active_browser: function(self: PCefExtensionHandler; extension: PCefExtension; browser: PCefBrowser; include_incognito: Integer): PCefBrowser; stdcall;
    Publiccan_access_browser: function(self: PCefExtensionHandler; extension: PCefExtension; browser: PCefBrowser; include_incognito: Integer; target_browser: PCefBrowser): Integer; stdcall;
    Publicget_extension_resource: function(self: PCefExtensionHandler; extension: PCefExtension; browser: PCefBrowser; const file_: PCefString; callback: PCefGetExtensionResourceCallback): Integer; stdcall;
    -

    Description

    -

    Fields

    - - - - - - -
    Publicbase: TCefBaseRefCounted;
    -

    This item has no description.

    - - - - - - -
    Publicon_extension_load_failed: procedure(self: PCefExtensionHandler; result: TCefErrorcode); stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicon_extension_loaded: procedure(self: PCefExtensionHandler; extension: PCefExtension); stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicon_extension_unloaded: procedure(self: PCefExtensionHandler; extension: PCefExtension); stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicon_before_background_browser: function(self: PCefExtensionHandler; extension: PCefExtension; const url: PCefString; var client: PCefClient; settings: PCefBrowserSettings) : Integer; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicon_before_browser: function(self: PCefExtensionHandler; extension: PCefExtension; browser, active_browser: PCefBrowser; index: Integer; const url: PCefString; active: Integer; windowInfo: PCefWindowInfo; var client: PCefClient; settings: PCefBrowserSettings) : Integer; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicget_active_browser: function(self: PCefExtensionHandler; extension: PCefExtension; browser: PCefBrowser; include_incognito: Integer): PCefBrowser; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publiccan_access_browser: function(self: PCefExtensionHandler; extension: PCefExtension; browser: PCefBrowser; include_incognito: Integer; target_browser: PCefBrowser): Integer; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicget_extension_resource: function(self: PCefExtensionHandler; extension: PCefExtension; browser: PCefBrowser; const file_: PCefString; callback: PCefGetExtensionResourceCallback): Integer; stdcall;
    -

    This item has no description.

    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFTypes.TCefGetExtensionResourceCallback.html b/docs/html/uCEFTypes.TCefGetExtensionResourceCallback.html deleted file mode 100644 index 332740b0..00000000 --- a/docs/html/uCEFTypes.TCefGetExtensionResourceCallback.html +++ /dev/null @@ -1,73 +0,0 @@ - - - -cef4delphi: uCEFTypes: Record TCefGetExtensionResourceCallback - - - - - - -

    Record TCefGetExtensionResourceCallback

    -
    -
    Hierarchy
    Methods
    Properties
    -

    Unit

    - -

    Declaration

    -

    -type TCefGetExtensionResourceCallback = record

    -

    Description

    -

    - Callback structure used for asynchronous continuation of ICefExtensionHandler.GetExtensionResource.

    -

    - - -

    Implemented by ICefGetExtensionResourceCallback. - -

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_extension_handler_capi.h">CEF source file: /include/capi/cef_extension_handler_capi.h (cef_get_extension_resource_callback_t))

    -

    Overview

    -

    Fields

    - - - - - - - - - - - - - -
    Publicbase: TCefBaseRefCounted;
    Publiccont: procedure(self: PCefGetExtensionResourceCallback; stream: PCefStreamReader); stdcall;
    Publiccancel: procedure(self: PCefGetExtensionResourceCallback); stdcall;
    -

    Description

    -

    Fields

    - - - - - - -
    Publicbase: TCefBaseRefCounted;
    -

    This item has no description.

    - - - - - - -
    Publiccont: procedure(self: PCefGetExtensionResourceCallback; stream: PCefStreamReader); stdcall;
    -

    This item has no description.

    - - - - - - -
    Publiccancel: procedure(self: PCefGetExtensionResourceCallback); stdcall;
    -

    This item has no description.

    -
    Generated by PasDoc 0.16.0-snapshot. - - diff --git a/docs/html/uCEFTypes.TCefLinuxWindowProperties.html b/docs/html/uCEFTypes.TCefLinuxWindowProperties.html new file mode 100644 index 00000000..40208f49 --- /dev/null +++ b/docs/html/uCEFTypes.TCefLinuxWindowProperties.html @@ -0,0 +1,91 @@ + + + +cef4delphi: uCEFTypes: Record TCefLinuxWindowProperties + + + + + + +

    Record TCefLinuxWindowProperties

    +
    +
    Hierarchy
    Methods
    Properties
    +

    Unit

    + +

    Declaration

    +

    +type TCefLinuxWindowProperties = record

    +

    Description

    +

    + Linux window properties, such as X11's WM_CLASS or Wayland's app_id. Those are passed to CefWindowDelegate, so the client can set them for the CefWindow's top-level. Thus, allowing window managers to correctly display the application's information (e.g., icons).

    +

    + + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_types.h">CEF source file: /include/internal/cef_types.h (cef_linux_window_properties_t))

    +

    Overview

    +

    Fields

    + + + + + + + + + + + + + + + + + +
    Publicwayland_app_id: TCefString;
    Publicwm_class_class: TCefString;
    Publicwm_class_name: TCefString;
    Publicwm_role_name: TCefString;
    +

    Description

    +

    Fields

    + + + + + + +
    Publicwayland_app_id: TCefString;
    +

    + Main window's Wayland's app_id

    +
    + + + + + + +
    Publicwm_class_class: TCefString;
    +

    + Main window's WM_CLASS_CLASS in X11

    +
    + + + + + + +
    Publicwm_class_name: TCefString;
    +

    + Main window's WM_CLASS_NAME in X11

    +
    + + + + + + +
    Publicwm_role_name: TCefString;
    +

    + Main window's WM_WINDOW_ROLE in X11

    +
    +
    Generated by PasDoc 0.16.0-snapshot. + + diff --git a/docs/html/uCEFTypes.TCefRequestContext.html b/docs/html/uCEFTypes.TCefRequestContext.html index 243e0aae..ad2eb9cf 100644 --- a/docs/html/uCEFTypes.TCefRequestContext.html +++ b/docs/html/uCEFTypes.TCefRequestContext.html @@ -83,57 +83,37 @@
    Publicload_extension: procedure(self: PCefRequestContext; const root_directory: PCefString; manifest: PCefDictionaryValue; handler: PCefExtensionHandler); stdcall;
    Publicdid_load_extension: function(self: PCefRequestContext; const extension_id: PCefString): Integer; stdcall;
    Publichas_extension: function(self: PCefRequestContext; const extension_id: PCefString): Integer; stdcall;
    Publicget_extensions: function(self: PCefRequestContext; extension_ids: TCefStringList): Integer; stdcall;
    Publicget_extension: function(self: PCefRequestContext; const extension_id: PCefString): PCefExtension; stdcall;
    Public get_media_router: function(self: PCefRequestContext; callback: PCefCompletionCallback): PCefMediaRouter; stdcall;
    Public get_website_setting: function(self: PCefRequestContext; const requesting_url, top_level_url: PCefString; content_type: TCefContentSettingTypes): PCefValue; stdcall;
    Public set_website_setting: procedure(self: PCefRequestContext; const requesting_url, top_level_url: PCefString; content_type: TCefContentSettingTypes; value: PCefValue); stdcall;
    Public get_content_setting: function(self: PCefRequestContext; const requesting_url, top_level_url: PCefString; content_type: TCefContentSettingTypes): TCefContentSettingValues; stdcall;
    Public set_content_setting: procedure(self: PCefRequestContext; const requesting_url, top_level_url: PCefString; content_type: TCefContentSettingTypes; value: TCefContentSettingValues); stdcall;
    Public set_chrome_color_scheme: procedure(self: PCefRequestContext; variant: TCefColorVariant; user_color: TCefColor); stdcall;
    Public get_chrome_color_scheme_mode: function(self: PCefRequestContext): TCefColorVariant; stdcall;
    Public get_chrome_color_scheme_color: function(self: PCefRequestContext): TCefColor; stdcall;
    Public get_chrome_color_scheme_variant: function(self: PCefRequestContext): TCefColorVariant; stdcall;
    - - - -
    Publicload_extension: procedure(self: PCefRequestContext; const root_directory: PCefString; manifest: PCefDictionaryValue; handler: PCefExtensionHandler); stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicdid_load_extension: function(self: PCefRequestContext; const extension_id: PCefString): Integer; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publichas_extension: function(self: PCefRequestContext; const extension_id: PCefString): Integer; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicget_extensions: function(self: PCefRequestContext; extension_ids: TCefStringList): Integer; stdcall;
    -

    This item has no description.

    - - - - - - -
    Publicget_extension: function(self: PCefRequestContext; const extension_id: PCefString): PCefExtension; stdcall;
    -

    This item has no description.

    - - - - - - - - + - + @@ -91,16 +87,6 @@
    Public get_media_router: function(self: PCefRequestContext; callback: PCefCompletionCallback): PCefMediaRouter; stdcall;
    diff --git a/docs/html/uCEFTypes.TCefRequestContextSettings.html b/docs/html/uCEFTypes.TCefRequestContextSettings.html index 1088533e..08e2ae3f 100644 --- a/docs/html/uCEFTypes.TCefRequestContextSettings.html +++ b/docs/html/uCEFTypes.TCefRequestContextSettings.html @@ -41,17 +41,13 @@
    Publicpersist_user_preferences: Integer;
    Public accept_language_list: TCefString;
    Public cookieable_schemes_list: TCefString;
    Public cookieable_schemes_exclude_defaults: integer;
    - - - -
    Publicpersist_user_preferences: Integer;
    -

    - To persist user preferences as a JSON file in the cache path directory set this value to true (1). Can be set globally using the TCefSettings.persist_user_preferences value. This value will be ignored if |cache_path| is empty or if it matches the TCefSettings.cache_path value.

    -
    - - - - - - - - + - + - + - + - + - - - - - + @@ -121,37 +113,33 @@ - - - - - + - + - + - + - + - + - + @@ -211,16 +199,6 @@
    Public accept_language_list: TCefString;
    diff --git a/docs/html/uCEFTypes.TCefSettings.html b/docs/html/uCEFTypes.TCefSettings.html index e7fa0990..815c2841 100644 --- a/docs/html/uCEFTypes.TCefSettings.html +++ b/docs/html/uCEFTypes.TCefSettings.html @@ -49,39 +49,31 @@
    Publicchrome_runtime: Integer;
    Public multi_threaded_message_loop: Integer;
    Public external_message_pump: Integer;
    Public windowless_rendering_enabled: Integer;
    Public command_line_args_disabled: Integer;
    Public cache_path: TCefString;
    Public root_cache_path: TCefString;
    Publicpersist_session_cookies: Integer;
    Publicpersist_user_preferences: Integer;persist_session_cookies: Integer;
    Public
    Publicpack_loading_disabled: Integer;
    Public remote_debugging_port: Integer;
    Public uncaught_exception_stack_size: Integer;
    Public background_color: TCefColor;
    Public accept_language_list: TCefString;
    Public cookieable_schemes_list: TCefString;
    Public cookieable_schemes_exclude_defaults: integer;
    Public chrome_policy_id: TCefString;
    Public chrome_app_icon_id: Integer;
    - - - -
    Publicchrome_runtime: Integer;
    -

    - Set to true (1) to enable use of the Chrome runtime in CEF. This feature is considered experimental and is not recommended for most users at this time. See issue #2969 for details.

    -
    - - -
    Public multi_threaded_message_loop: Integer;
    @@ -265,7 +243,7 @@

    - The directory where data for the global browser cache will be stored on disk. If this value is non-empty then it must be an absolute path that is either equal to or a child directory of CefSettings.root_cache_path. If this value is empty then browsers will be created in "incognito mode" where in-memory caches are used for storage and no profile-specific data is persisted to disk (installation-specific data will still be persisted in root_cache_path). HTML5 databases such as localStorage will only persist across sessions if a cache path is specified. Can be overridden for individual ICefRequestContext instances via the ICefRequestContextSettings.cache_path value. When using the Chrome runtime any child directory value will be ignored and the "default" profile (also a child directory) will be used instead.

    + The directory where data for the global browser cache will be stored on disk. If this value is non-empty then it must be an absolute path that is either equal to or a child directory of CefSettings.root_cache_path. If this value is empty then browsers will be created in "incognito mode" where in-memory caches are used for storage and no profile-specific data is persisted to disk (installation-specific data will still be persisted in root_cache_path). HTML5 databases such as localStorage will only persist across sessions if a cache path is specified. Can be overridden for individual CefRequestContext instances via the TCefRequestContextSettings.cache_path value. Any child directory value will be ignored and the "default" profile (also a child directory) will be used instead.

    @@ -277,7 +255,7 @@

    -

    The root directory for installation-specific data and the parent directory for profile-specific data. All TCefSettings.cache_path and ICefRequestContextSettings.cache_path values must have this parent directory in common. If this value is empty and TCefSettings.cache_path is non-empty then it will default to the TCefSettings.cache_path value. Any non-empty value must be an absolute path. If both values are empty then the default platform-specific directory will be used ("~/.config/cef_user_data" directory on Linux, "~/Library/Application Support/CEF/User Data" directory on MacOS, "AppData\Local\CEF\User Data" directory under the user profile directory on Windows). Use of the default directory is not recommended in production applications (see below). +

    The root directory for installation-specific data and the parent directory for profile-specific data. All TCefSettings.cache_path and TCefRequestContextSettings.cache_path values must have this parent directory in common. If this value is empty and TCefSettings.cache_path is non-empty then it will default to the TCefSettings.cache_path value. Any non-empty value must be an absolute path. If both values are empty then the default platform-specific directory will be used ("~/.config/cef_user_data" directory on Linux, "~/Library/Application Support/CEF/User Data" directory on MacOS, "AppData\Local\CEF\User Data" directory under the user profile directory on Windows). Use of the default directory is not recommended in production applications (see below).

    Multiple application instances writing to the same root_cache_path directory could result in data corruption. A process singleton lock based on the root_cache_path value is therefore used to protect against this. This singleton behavior applies to all CEF-based applications using version 120 or newer. You should customize root_cache_path for your application and implement ICefBrowserProcessHandler.OnAlreadyRunningAppRelaunch, which will then be called on any app relaunch with the same root_cache_path value. @@ -299,16 +277,6 @@

    - - - -
    Publicpersist_user_preferences: Integer;
    -

    - To persist user preferences as a JSON file in the cache path directory set this value to true (1). A |cache_path| value must also be specified to enable this feature. Also configurable using the "persist-user-preferences" command-line switch. Can be overridden for individual CefRequestContext instances via the TCefRequestContextSettings.persist_user_preferences value.

    -
    - - - + + + +
    Public user_agent: TCefString;
    @@ -399,16 +367,6 @@ - - - -
    Publicpack_loading_disabled: Integer;
    -

    - Set to true (1) to disable loading of pack files for resources and locales. A resource bundle handler must be provided for the browser and render processes via ICefApp.GetResourceBundleHandler() if loading of pack files is disabled. Also configurable using the "disable-pack-loading" command- line switch.

    -
    - - -
    Public remote_debugging_port: Integer;
    @@ -443,7 +401,7 @@

    - Comma delimited ordered list of language codes without any whitespace that will be used in the "Accept-Language" HTTP request header and "navigator.language" JS attribute. Can be overridden for individual ICefRequestContext instances via the TCefRequestContextSettingsCefRequestContextSettings.accept_language_list value.

    + Comma delimited ordered list of language codes without any whitespace that will be used in the "Accept-Language" HTTP request header and "navigator.language" JS attribute. Can be overridden for individual ICefRequestContext instances via the TCefRequestContextSettings.accept_language_list value.

    @@ -473,7 +431,7 @@

    -

    Specify an ID to enable Chrome policy management via Platform and OS-user policies. On Windows, this is a registry key like "SOFTWARE\\Policies\\Google\\Chrome". On MacOS, this is a bundle ID like "com.google.Chrome". On Linux, this is an absolute directory path like "/etc/opt/chrome/policies". Only supported with the Chrome runtime. See https://support.google.com/chrome/a/answer/9037717 for details. +

    Specify an ID to enable Chrome policy management via Platform and OS-user policies. On Windows, this is a registry key like "SOFTWARE\\Policies\\Google\\Chrome". On MacOS, this is a bundle ID like "com.google.Chrome". On Linux, this is an absolute directory path like "/etc/opt/chrome/policies". Only supported with Chrome style. See https://support.google.com/chrome/a/answer/9037717 for details.

    Chrome Browser Cloud Management integration, when enabled via the "enable-chrome-browser-cloud-management" command-line flag, will also use the specified ID. See https://support.google.com/chrome/a/answer/9116814 for details. @@ -487,7 +445,7 @@

    - Specify an ID for an ICON resource that can be loaded from the main executable and used when creating default Chrome windows such as DevTools and Task Manager. If unspecified the default Chromium ICON (IDR_MAINFRAME [101]) will be loaded from libcef.dll. Only supported with the Chrome runtime on Windows.

    + Specify an ID for an ICON resource that can be loaded from the main executable and used when creating default Chrome windows such as DevTools and Task Manager. If unspecified the default Chromium ICON (IDR_MAINFRAME [101]) will be loaded from libcef.dll. Only supported with Chrome style on Windows.


    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFTypes.TCefTaskInfo.html b/docs/html/uCEFTypes.TCefTaskInfo.html new file mode 100644 index 00000000..35b5ffa0 --- /dev/null +++ b/docs/html/uCEFTypes.TCefTaskInfo.html @@ -0,0 +1,161 @@ + + + +cef4delphi: uCEFTypes: Record TCefTaskInfo + + + + + + +

    Record TCefTaskInfo

    +
    +
    Hierarchy
    Methods
    Properties
    +

    Unit

    + +

    Declaration

    +

    +type TCefTaskInfo = record

    +

    Description

    +

    + Structure representing task information provided by ICefTaskManager.

    +

    + + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_types.h">CEF source file: /include/internal/cef_types.h (cef_task_info_t))

    +

    Overview

    +

    Fields

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Publicid: int64;
    Publictype_: TCefTaskType;
    Publicis_killable: integer;
    Publictitle: TCefString;
    Publiccpu_usage: double;
    Publicnumber_of_processors: integer;
    Publicmemory: int64;
    Publicgpu_memory: int64;
    Publicis_gpu_memory_inflated: integer;
    +

    Description

    +

    Fields

    + + + + + + +
    Publicid: int64;
    +

    + The task ID.

    +
    + + + + + + +
    Publictype_: TCefTaskType;
    +

    + The task type.

    +
    + + + + + + +
    Publicis_killable: integer;
    +

    + Set to true (1) if the task is killable.

    +
    + + + + + + +
    Publictitle: TCefString;
    +

    + The task title.

    +
    + + + + + + +
    Publiccpu_usage: double;
    +

    + The CPU usage of the process on which the task is running. The value is in the range zero to number_of_processors * 100%.

    +
    + + + + + + +
    Publicnumber_of_processors: integer;
    +

    + The number of processors available on the system.

    +
    + + + + + + +
    Publicmemory: int64;
    +

    + The memory footprint of the task in bytes. A value of -1 means no valid value is currently available.

    +
    + + + + + + +
    Publicgpu_memory: int64;
    +

    + The GPU memory usage of the task in bytes. A value of -1 means no valid value is currently available.

    +
    + + + + + + +
    Publicis_gpu_memory_inflated: integer;
    +

    + Set to true (1) if this task process' GPU resource count is inflated because it is counting other processes' resources (e.g, the GPU process has this value set to true because it is the aggregate of all processes).

    +
    +
    Generated by PasDoc 0.16.0-snapshot. + + diff --git a/docs/html/uCEFTypes.TCefTaskManager.html b/docs/html/uCEFTypes.TCefTaskManager.html new file mode 100644 index 00000000..240e9726 --- /dev/null +++ b/docs/html/uCEFTypes.TCefTaskManager.html @@ -0,0 +1,109 @@ + + + +cef4delphi: uCEFTypes: Record TCefTaskManager + + + + + + +

    Record TCefTaskManager

    +
    +
    Hierarchy
    Methods
    Properties
    +

    Unit

    + +

    Declaration

    +

    +type TCefTaskManager = record

    +

    Description

    +

    + Structure that facilitates managing the browser-related tasks. The functions of this structure may only be called on the UI thread.

    +

    + + +

    Implemented by ICefTaskManager. + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_task_manager_capi.h">CEF source file: /include/capi/cef_task_manager_capi.h (cef_task_manager_t))

    +

    Overview

    +

    Fields

    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Publicbase: TCefBaseRefCounted;
    Publicget_tasks_count: function(self: PCefTaskManager): NativeUInt; stdcall;
    Publicget_task_ids_list: function(self: PCefTaskManager; task_idsCount: PNativeUInt; task_ids: PInt64): Integer; stdcall;
    Publicget_task_info: function(self: PCefTaskManager; task_id: int64; info: PCefTaskInfo): Integer; stdcall;
    Publickill_task: function(self: PCefTaskManager; task_id: int64): Integer; stdcall;
    Publicget_task_id_for_browser_id: function(self: PCefTaskManager; browser_id: Integer): int64; stdcall;
    +

    Description

    +

    Fields

    + + + + + + +
    Publicbase: TCefBaseRefCounted;
    +

    This item has no description.

    + + + + + + +
    Publicget_tasks_count: function(self: PCefTaskManager): NativeUInt; stdcall;
    +

    This item has no description.

    + + + + + + +
    Publicget_task_ids_list: function(self: PCefTaskManager; task_idsCount: PNativeUInt; task_ids: PInt64): Integer; stdcall;
    +

    This item has no description.

    + + + + + + +
    Publicget_task_info: function(self: PCefTaskManager; task_id: int64; info: PCefTaskInfo): Integer; stdcall;
    +

    This item has no description.

    + + + + + + +
    Publickill_task: function(self: PCefTaskManager; task_id: int64): Integer; stdcall;
    +

    This item has no description.

    + + + + + + +
    Publicget_task_id_for_browser_id: function(self: PCefTaskManager; browser_id: Integer): int64; stdcall;
    +

    This item has no description.

    +
    Generated by PasDoc 0.16.0-snapshot. + + diff --git a/docs/html/uCEFTypes.TCefWindowDelegate.html b/docs/html/uCEFTypes.TCefWindowDelegate.html index 8094fc16..33599c0c 100644 --- a/docs/html/uCEFTypes.TCefWindowDelegate.html +++ b/docs/html/uCEFTypes.TCefWindowDelegate.html @@ -121,6 +121,10 @@
    Public get_window_runtime_style: function(self: PCefWindowDelegate): TCefRuntimeStyle; stdcall;
    Publicget_linux_window_properties: function(self: PCefWindowDelegate; window: PCefWindow; properties: PCefLinuxWindowProperties): Integer; stdcall;

    Description

    Fields

    @@ -308,6 +312,14 @@

    This item has no description.

    + + + + + + +
    Publicget_linux_window_properties: function(self: PCefWindowDelegate; window: PCefWindow; properties: PCefLinuxWindowProperties): Integer; stdcall;
    +

    This item has no description.


    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFTypes.TCustomTaskInfo.html b/docs/html/uCEFTypes.TCustomTaskInfo.html new file mode 100644 index 00000000..80380a28 --- /dev/null +++ b/docs/html/uCEFTypes.TCustomTaskInfo.html @@ -0,0 +1,161 @@ + + + +cef4delphi: uCEFTypes: Record TCustomTaskInfo + + + + + + +

    Record TCustomTaskInfo

    +
    +
    Hierarchy
    Methods
    Properties
    +

    Unit

    + +

    Declaration

    +

    +type TCustomTaskInfo = record

    +

    Description

    +

    + Pascal version of TCefTaskInfo.

    +

    + + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_types.h">CEF source file: /include/internal/cef_types.h (cef_task_info_t))

    +

    Overview

    +

    Fields

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Publicid: int64;
    Publictype_: TCefTaskType;
    Publicis_killable: boolean;
    Publictitle: ustring;
    Publiccpu_usage: double;
    Publicnumber_of_processors: integer;
    Publicmemory: int64;
    Publicgpu_memory: int64;
    Publicis_gpu_memory_inflated: boolean;
    +

    Description

    +

    Fields

    + + + + + + +
    Publicid: int64;
    +

    + The task ID.

    +
    + + + + + + +
    Publictype_: TCefTaskType;
    +

    + The task type.

    +
    + + + + + + +
    Publicis_killable: boolean;
    +

    + Set to true (1) if the task is killable.

    +
    + + + + + + +
    Publictitle: ustring;
    +

    + The task title.

    +
    + + + + + + +
    Publiccpu_usage: double;
    +

    + The CPU usage of the process on which the task is running. The value is in the range zero to number_of_processors * 100%.

    +
    + + + + + + +
    Publicnumber_of_processors: integer;
    +

    + The number of processors available on the system.

    +
    + + + + + + +
    Publicmemory: int64;
    +

    + The memory footprint of the task in bytes. A value of -1 means no valid value is currently available.

    +
    + + + + + + +
    Publicgpu_memory: int64;
    +

    + The GPU memory usage of the task in bytes. A value of -1 means no valid value is currently available.

    +
    + + + + + + +
    Publicis_gpu_memory_inflated: boolean;
    +

    + Set to true (1) if this task process' GPU resource count is inflated because it is counting other processes' resources (e.g, the GPU process has this value set to true because it is the aggregate of all processes).

    +
    +
    Generated by PasDoc 0.16.0-snapshot. + + diff --git a/docs/html/uCEFTypes.TLinuxWindowProperties.html b/docs/html/uCEFTypes.TLinuxWindowProperties.html new file mode 100644 index 00000000..d5c2726b --- /dev/null +++ b/docs/html/uCEFTypes.TLinuxWindowProperties.html @@ -0,0 +1,91 @@ + + + +cef4delphi: uCEFTypes: Record TLinuxWindowProperties + + + + + + +

    Record TLinuxWindowProperties

    +
    +
    Hierarchy
    Methods
    Properties
    +

    Unit

    + +

    Declaration

    +

    +type TLinuxWindowProperties = record

    +

    Description

    +

    + String version of TCefLinuxWindowProperties

    +

    + + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_types.h">CEF source file: /include/internal/cef_types.h (cef_linux_window_properties_t))

    +

    Overview

    +

    Fields

    + + + + + + + + + + + + + + + + + +
    Publicwayland_app_id: ustring;
    Publicwm_class_class: ustring;
    Publicwm_class_name: ustring;
    Publicwm_role_name: ustring;
    +

    Description

    +

    Fields

    + + + + + + +
    Publicwayland_app_id: ustring;
    +

    + Main window's Wayland's app_id

    +
    + + + + + + +
    Publicwm_class_class: ustring;
    +

    + Main window's WM_CLASS_CLASS in X11

    +
    + + + + + + +
    Publicwm_class_name: ustring;
    +

    + Main window's WM_CLASS_NAME in X11

    +
    + + + + + + +
    Publicwm_role_name: ustring;
    +

    + Main window's WM_WINDOW_ROLE in X11

    +
    +
    Generated by PasDoc 0.16.0-snapshot. + + diff --git a/docs/html/uCEFTypes.TUrlParts.html b/docs/html/uCEFTypes.TUrlParts.html index fc302cc7..e14e146b 100644 --- a/docs/html/uCEFTypes.TUrlParts.html +++ b/docs/html/uCEFTypes.TUrlParts.html @@ -20,6 +20,10 @@

    Description

    String version of TCefUrlParts

    +

    + + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_types.h">CEF source file: /include/internal/cef_types.h (cef_urlparts_t))

    Overview

    Fields

    @@ -72,7 +76,9 @@ +

    + The complete URL specification.

    +
    spec: ustring;
    -

    This item has no description.

    @@ -80,7 +86,9 @@ +

    + Scheme component not including the colon (e.g., "http").

    +
    scheme: ustring;
    -

    This item has no description.

    @@ -88,7 +96,9 @@ +

    + User name component.

    +
    username: ustring;
    -

    This item has no description.

    @@ -96,7 +106,9 @@ +

    + Password component.

    +
    password: ustring;
    -

    This item has no description.

    @@ -104,7 +116,9 @@ +

    + Host component. This may be a hostname, an IPv4 address or an IPv6 literal surrounded by square brackets (e.g., "[2001:db8::1]").

    +
    host: ustring;
    -

    This item has no description.

    @@ -112,7 +126,9 @@ +

    + Port number component.

    +
    port: ustring;
    -

    This item has no description.

    @@ -120,7 +136,9 @@ +

    + Origin contains just the scheme, host, and port from a URL. Equivalent to clearing any username and password, replacing the path with a slash, and clearing everything after that. This value will be empty for non-standard URLs.

    +
    origin: ustring;
    -

    This item has no description.

    @@ -128,7 +146,9 @@ +

    + Path component including the first slash following the host.

    +
    path: ustring;
    -

    This item has no description.

    @@ -136,7 +156,9 @@ +

    + Query string component (i.e., everything following the '?').

    +
    query: ustring;
    -

    This item has no description.

    @@ -144,7 +166,9 @@ +

    + Fragment (hash) identifier component (i.e., the string following the '#').

    +
    fragment: ustring;
    -

    This item has no description.


    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFTypes.html b/docs/html/uCEFTypes.html index 0c9558d0..fb8f6600 100644 --- a/docs/html/uCEFTypes.html +++ b/docs/html/uCEFTypes.html @@ -72,6 +72,14 @@
    Structure representing cursor information. |buffer| will be |size.width|*|size.height|*4 bytes in size and represents a BGRA image with an upper-left origin.
    Record TCefLinuxWindowProperties Linux window properties, such as X11's WM_CLASS or Wayland's app_id. Those are passed to CefWindowDelegate, so the client can set them for the CefWindow's top-level. Thus, allowing window managers to correctly display the application's information (e.g., icons).
    Record TLinuxWindowProperties String version of TCefLinuxWindowProperties
    Record TCefUrlParts URL component parts.
    Structure representing insets.
    Record TCefTaskInfo Structure representing task information provided by ICefTaskManager.
    Record TCustomTaskInfo Pascal version of TCefTaskInfo.
    Record TCefTouchHandleState Touch handle state.
    Represents a source from which media can be routed. Instances of this object are retrieved via ICefMediaRouter.GetSource. The functions of this structure may be called on any browser process thread unless otherwise indicated.
    Record TCefGetExtensionResourceCallback Callback structure used for asynchronous continuation of ICefExtensionHandler.GetExtensionResource.
    Record TCefExtensionHandler Implement this structure to handle events related to browser extensions. The functions of this structure will be called on the UI thread. See ICefRequestContext.LoadExtension for information about extension loading.
    Record TCefAudioHandler Implement this structure to handle audio events.
    Record TCefExtension Object representing an extension. Methods may be called on any thread unless otherwise indicated.
    Record TCefLoadHandler Implement this structure to handle events related to browser load status. The functions of this structure will be called on the browser process UI thread or render process main thread (TID_RENDERER).
    Record TCefRenderHandler Implement this structure to handle events when window rendering is disabled. The functions of this structure will be called on the UI thread.
    Record TCefPreferenceRegistrar Structure that manages custom preference registrations.
    Record TCefPreferenceManager Manage access to preferences. Many built-in preferences are registered by Chromium. Custom preferences can be registered in ICefBrowserProcessHandler.OnRegisterCustomPreferences.
    Record TCefV8StackTrace Structure representing a V8 stack trace handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.
    Record TCefV8StackFrame Structure representing a V8 stack frame handle. V8 handles can only be accessed from the thread on which they are created. Valid threads for creating a V8 handle include the render process main thread (TID_RENDERER) and WebWorker threads. A task runner for posting tasks on the associated thread can be retrieved via the ICefv8context.GetTaskRunner() function.
    Record TCefStreamReader Structure used to read data from a stream. The functions of this structure may be called on any thread.
    Record TCefReadHandler Structure the client can implement to provide a custom stream reader. The functions of this structure may be called on any thread.
    Record TCefWriteHandler Structure the client can implement to provide a custom stream writer. The functions of this structure may be called on any thread.
    Record TCefXmlReader Structure that supports the reading of XML data via the libxml streaming API. The functions of this structure should only be called on the thread that creates the object.
    Record TCefZipReader Structure that supports the reading of zip archives via the zlib unzip API. The functions of this structure should only be called on the thread that creates the object.
    Record TCefUrlrequestClient Structure that should be implemented by the ICefUrlRequest client. The functions of this structure will be called on the same thread that created the request unless otherwise documented.
    Record TCefUrlRequest Structure used to make a URL request. URL requests are not associated with a browser instance so no ICefClient callbacks will be executed. URL requests can be created on any valid CEF thread in either the browser or render process. Once created the functions of the URL request object must be accessed on the same thread that created it.
    Record TCefThread A simple thread abstraction that establishes a message loop on a new thread. The consumer uses ICefTaskRunner to execute code on the thread's message loop. The thread is terminated when the ICefThread object is destroyed or stop() is called. All pending tasks queued on the thread's message loop will run to completion before the thread is terminated. cef_thread_create() can be called on any valid CEF thread in either the browser or render process. This structure should only be used for tasks that require a dedicated thread. In most cases you can post tasks to an existing CEF thread instead of creating a new one; see cef_task.h for details.
    Record TCefWaitableEvent WaitableEvent is a thread synchronization tool that allows one thread to wait for another thread to finish some work. This is equivalent to using a Lock+ConditionVariable to protect a simple boolean value. However, using WaitableEvent in conjunction with a Lock to wait for a more complex state change (e.g., for an item to be added to a queue) is not recommended. In that case consider using a ConditionVariable instead of a WaitableEvent. It is safe to create and/or signal a WaitableEvent from any thread. Blocking on a WaitableEvent by calling the *wait() functions is not allowed on the browser process UI or IO threads.
    Record TCefTaskRunner Structure that asynchronously executes tasks on the associated thread. It is safe to call the functions of this structure on any thread.

    CEF maintains multiple internal threads that are used for handling different types of tasks in different processes. The TCefThreadId definitions in cef_types.h list the common CEF threads. Task runners are also available for other CEF threads as appropriate (for example, V8 WebWorker threads).

    Record TCefEndTracingCallback Implement this structure to receive notification when tracing has completed. The functions of this structure will be called on the browser process UI thread.
    Record TCefResourceBundle Structure used for retrieving resources from the resource bundle (*.pak) files loaded by CEF during startup or via the ICefResourceBundleHandler returned from ICefApp.GetResourceBundleHandler. See TCefSettings for additional options related to resource bundle loading. The functions of this structure may be called on any thread unless otherwise indicated.
    Record TCefMenuModelDelegate Implement this structure to handle menu model events. The functions of this structure will be called on the browser process UI thread unless otherwise indicated.
    Record TCefProcessMessage Structure representing a message. Can be used on any process and thread.
    Record TCefRenderProcessHandler Structure used to implement render process callbacks. The functions of this structure will be called on the render process main thread (TID_RENDERER) unless otherwise indicated.
    Record TCefRequestHandler Implement this structure to handle events related to browser requests. The functions of this structure will be called on the thread indicated.
    Record TCefMediaAccessCallback Callback structure used for asynchronous continuation of media access permission requests.
    Record TCefMediaAccessHandler Implement this structure to handle events related to media access permission requests. The functions of this structure will be called on the browser process UI thread.
    Record TCefPermissionPromptCallback Callback structure used for asynchronous continuation of permission prompts.
    Record TCefPermissionHandler Implement this structure to handle events related to permission requests. The functions of this structure will be called on the browser process UI thread.
    Record TCefSharedMemoryRegion Structure that wraps platform-dependent share memory region mapping.
    Record TCefSharedProcessMessageBuilder Structure that builds a ICefProcessMessage containing a shared memory region. This structure is not thread-safe but may be used exclusively on a different thread from the one which constructed it.
    Record TCefResourceSkipCallback Callback for asynchronous continuation of ICefResourceHandler.skip().
    Record TCefResourceReadCallback Callback for asynchronous continuation of ICefResourceHandler.read().
    Record TCefResourceHandler Structure used to implement a custom request handler structure. The functions of this structure will be called on the IO thread unless otherwise indicated.
    Record TCefResourceRequestHandler Implement this structure to handle events related to browser requests. The functions of this structure will be called on the IO thread unless otherwise indicated.
    Record TCefCookieAccessFilter Implement this structure to filter cookies that may be sent or received from resource requests. The functions of this structure will be called on the IO thread unless otherwise indicated.
    Record TCefResponse Structure used to represent a web response. The functions of this structure may be called on any thread.
    Record TCefResponseFilter Implement this structure to filter resource response content. The functions of this structure will be called on the browser process IO thread.
    Record TCefAuthCallback Callback structure used for asynchronous continuation of authentication requests.
    Record TCefCallback Generic callback structure used for asynchronous continuation.
    Record TCefRequestContext A request context provides request handling for a set of related browser or URL request objects. A request context can be specified when creating a new browser via the ICefBrowserHost static factory functions or when creating a new URL request via the ICefUrlRequest static factory functions. Browser objects with different request contexts will never be hosted in the same render process. Browser objects with the same request context may or may not be hosted in the same render process depending on the process model. Browser objects created indirectly via the JavaScript window.open function or targeted links will share the same render process and the same request context as the source browser. When running in single-process mode there is only a single render process (the main process) and so all browsers created in single-process mode will share the same request context. This will be the first request context passed into a ICefBrowserHost static factory function and all other request context objects will be ignored.
    Record TCefRequestContextHandler Implement this structure to provide handler implementations. The handler instance will not be released until all objects related to the context have been destroyed.
    Record TCefCompletionCallback Generic callback structure used for asynchronous completion.
    Record TCefCookieManager Structure used for managing cookies. The functions of this structure may be called on any thread unless otherwise indicated.
    Record TCefSchemeHandlerFactory Structure that creates ICefResourceHandler instances for handling scheme requests. The functions of this structure will always be called on the IO thread.
    Record TCefResolveCallback Callback structure for ICefRequestContext.ResolveHost.
    Record TCefCookieVisitor Structure to implement for visiting cookie values. The functions of this structure will always be called on the UI thread.
    Record TCefSetCookieCallback Structure to implement to be notified of asynchronous completion via ICefCookieManager.SetCookie().
    Record TCefDeleteCookiesCallback Structure to implement to be notified of asynchronous completion via ICefCookieManager.DeleteCookies().
    Record TCefRunFileDialogCallback Callback structure for ICefBrowserHost.RunFileDialog. The functions of this structure will be called on the browser process UI thread.
    Record TCefDownloadImageCallback Callback structure for ICefBrowserHost.DownloadImage. The functions of this structure will be called on the browser process UI thread.
    Record TCefImage Container for a single image represented at different scale factors. All image representations should be the same size in density independent pixel (DIP) units. For example, if the image at scale factor 1.0 is 100x100 pixels then the image at scale factor 2.0 should be 200x200 pixels – both images will display with a DIP size of 100x100 units. The functions of this structure can be called on any browser process thread.
    Record TCefPdfPrintCallback Callback structure for ICefBrowserHost.PrintToPDF. The functions of this structure will be called on the browser process UI thread.
    Record TCefNavigationEntryVisitor Callback structure for ICefBrowserHost.GetNavigationEntries. The functions of this structure will be called on the browser process UI thread.
    Record TCefNavigationEntry Structure used to represent an entry in navigation history.
    Record TCefPrintSettings Structure representing print settings.
    Record TCefPrintDialogCallback Callback structure for asynchronous continuation of print dialog requests.
    Record TCefPrintJobCallback Callback structure for asynchronous continuation of print job requests.
    Record TCefPrintHandler Implement this structure to handle printing on Linux. Each browser will have only one print job in progress at a time. The functions of this structure will be called on the browser process UI thread.
    Record TCefDragData Structure used to represent drag data. The functions of this structure may be called on any thread.
    Record TCefCommandLine Structure used to create and/or parse command line arguments. Arguments with "–", "-" and, on Windows, "/" prefixes are considered switches. Switches will always precede any arguments without switch prefixes. Switches can optionally have a value specified using the "=" delimiter (e.g. "-switch=value"). An argument of "–" will terminate switch parsing with all subsequent tokens, regardless of prefix, being interpreted as non-switch arguments. Switch names should be lowercase ASCII and will be converted to such if necessary. Switch values will retain the original case and UTF8 encoding. This structure can be used before cef_initialize() is called.
    Record TCefCommandHandler Implement this structure to handle events related to commands. The functions of this structure will be called on the UI thread.
    Record TCefSchemeRegistrar Structure that manages custom scheme registrations.
    Record TCefBinaryValue Structure representing a binary value. Can be used on any process and thread.
    Record TCefValue Structure that wraps other data value types. Complex types (binary, dictionary and list) will be referenced but not owned by this object. Can be used on any process and thread.
    Record TCefDictionaryValue Structure representing a dictionary value. Can be used on any process and thread.
    Record TCefListValue Structure representing a list value. Can be used on any process and thread.
    Record TCefStringVisitor Implement this structure to receive string values asynchronously.
    Record TCefPostDataElement Structure used to represent a single element in the request post data. The functions of this structure may be called on any thread.
    Record TCefPostData Structure used to represent post data for a web request. The functions of this structure may be called on any thread.
    Record TCefRequest Structure used to represent a web request. The functions of this structure may be called on any thread.
    Record TCefTask Implement this structure for asynchronous task execution. If the task is posted successfully and if the associated message loop is still running then the execute() function will be called on the target thread. If the task fails to post then the task object may be destroyed on the source thread instead of the target thread. For this reason be cautious when performing work in the task object destructor.
    Record TCefTaskManager Structure that facilitates managing the browser-related tasks. The functions of this structure may only be called on the UI thread.
    Record TCefDomVisitor Structure to implement for visiting the DOM. The functions of this structure will be called on the render process main thread. PCefTask = ˆTCefTask;
    PCefTaskManager = ˆTCefTaskManager;
    PCefv8Value = ˆTCefv8Value;
    PCefBaseTime = ˆTCefBaseTime;
    PCefTime = ˆTCefTime;
    PCefV8Exception = ˆTCefV8Exception;
    PCefv8ArrayBufferReleaseCallback = ˆTCefv8ArrayBufferReleaseCallback;
    PCefv8Handler = ˆTCefv8Handler;
    PPCefV8Value = ˆPCefV8ValueArray;
    PCefDomVisitor = ˆTCefDomVisitor;
    PCefDomDocument = ˆTCefDomDocument;
    PCefDomNode = ˆTCefDomNode;
    PCefContextMenuParams = ˆTCefContextMenuParams;
    PCefMenuModel = ˆTCefMenuModel;
    PCefRunContextMenuCallback = ˆTCefRunContextMenuCallback;
    PCefDialogHandler = ˆTCefDialogHandler;
    PCefFileDialogCallback = ˆTCefFileDialogCallback;
    PCefUnresponsiveProcessCallback = ˆTCefUnresponsiveProcessCallback;
    PCefDisplayHandler = ˆTCefDisplayHandler;
    PCefDownloadHandler = ˆTCefDownloadHandler;
    PCefDownloadItem = ˆTCefDownloadItem;
    PCefBeforeDownloadCallback = ˆTCefBeforeDownloadCallback;
    PCefDownloadItemCallback = ˆTCefDownloadItemCallback;
    PCefDragHandler = ˆTCefDragHandler;
    PCefDragData = ˆTCefDragData;
    PCefDraggableRegionArray = ˆTCefDraggableRegionArray;
    PCefDraggableRegion = ˆTCefDraggableRegion;
    PCefRect = ˆTCefRect;
    PCefPoint = ˆTCefPoint;
    PCefSize = ˆTCefSize;
    PCefRectArray = ˆTCefRectArray;
    PCefRange = ˆTCefRange;
    PCefStreamWriter = ˆTCefStreamWriter;
    PCefFindHandler = ˆTCefFindHandler;
    PCefFocusHandler = ˆTCefFocusHandler;
    PCefJsDialogHandler = ˆTCefJsDialogHandler;
    PCefJsDialogCallback = ˆTCefJsDialogCallback;
    PCefKeyboardHandler = ˆTCefKeyboardHandler;
    PCefKeyEvent = ˆTCefKeyEvent;
    PCefLifeSpanHandler = ˆTCefLifeSpanHandler;
    PCefGetExtensionResourceCallback = ˆTCefGetExtensionResourceCallback;
    PCefExtensionHandler = ˆTCefExtensionHandler;
    PCefAudioHandler = ˆTCefAudioHandler;
    PCefAudioParameters = ˆTCefAudioParameters;
    PCefExtension = ˆTCefExtension;PCefAudioParameters = ˆTCefAudioParameters;
    PCefPopupFeatures = ˆTCefPopupFeatures;PCefAcceleratedPaintInfo = ˆTCefAcceleratedPaintInfo;
    PCefLinuxWindowProperties = ˆTCefLinuxWindowProperties;
    PCefTaskInfo = ˆTCefTaskInfo;
    NativeInt = PtrInt;
    TCefCustomByteArray = array of byte;
    TCefCustomInt64Array = array of int64;
    LPMEMORYSTATUSEX = ˆTMyMemoryStatusEx;
    PPSingle = ˆPSingle;
    Char16 = WideChar;
    PChar16 = PWideChar;
    TCefString = TCefStringUtf16;
    PCefString = PCefStringUtf16;
    TCefStringUserFreeWide = type TCefStringWide;
    TCefStringUserFreeUtf8 = type TCefStringUtf8;
    TCefStringUserFreeUtf16 = type TCefStringUtf16;
    TCefChar = Char16;
    PCefChar = PChar16;
    TCefStringUserFree = TCefStringUserFreeUtf16;
    PCefStringUserFree = PCefStringUserFreeUtf16;
    TCefCloseBrowserAction = (...);
    TCefProcessType = (...);
    TCefCookiePref = (...);
    TCefBrowserNavigation = (...);
    TCefAplicationStatus = (...);
    TCefUIColorMode = (...);
    TCefProxyScheme = (...);
    TSimulatedCefKeyEventType = (...);
    TCefClearDataStorageTypes = (...);
    TCefAutoplayPolicy = (...);
    TCefWebRTCHandlingPolicy = (...);
    TCefNetLogCaptureMode = (...);
    TCefBatterySaverModeState = (...);
    TCefHighEfficiencyModeState = (...);
    TCEFDialogType = (...);
    TCefMediaType = (...);
    TCefRectArray = array[0..(High(Integer) div SizeOf(TCefRect))-1] of TCefRect;
    TCefRectDynArray = array of TCefRect;
    TCefRangeArray = array of TCefRange;
    TCefState = (...);
    TCefScaleFactor = (...);
    TCefValueType = (...);
    TCefMediaRouteConnectionState = (...);
    TCefMediaSinkIconType = (...);
    TCefReferrerPolicy = (...);
    TCefPostDataElementType = (...);
    TCefResourceType = (...);
    TCefDomDocumentType = (...);
    TCefDomNodeType = (...);
    TCefDomFormControlType = (...);
    TCefContextMenuMediaType = (...);
    TCefMenuItemType = (...);
    TCefFocusSource = (...);
    TCefJsDialogType = (...);
    TCefKeyEventType = (...);
    TCefWindowOpenDisposition = (...);
    TCefTextInpuMode = (...);
    TCefTouchEeventType = (...);
    TCefPointerType = (...);
    TCefSimulatedTouchEventType = (...);
    TCefSimulatedMouseEventType = (...);
    TCefSimulatedMouseButton = (...);
    TCefSimulatedPointerType = (...);
    TCefKeyLocation = (...);
    TCefEditingCommand = (...);
    TCefChannelLayout = (...);
    TCefCookieSameSite = (...);
    TCefPaintElementType = (...);
    TCefCursorType = (...);
    TCefNavigationType = (...);
    TCefProcessId = (...);
    TCefThreadId = (...);
    TCefThreadPriority = (...);
    TCefMessageLoopType = (...);
    TCefCOMInitMode = (...);
    TCefMouseButtonType = (...);
    TCefReturnValue = (...);
    TCefUrlRequestStatus = (...);
    TCefTerminationStatus = (...);
    TCefPathKey = (...);
    TCefStorageType = (...);
    TCefResponseFilterStatus = (...);
    TCefAlphaType = (...);
    TCefTextStyle = (...);
    TCefAxisAlignment = (...);
    TCefPdfPrintMarginType = (...);
    TCefColorModel = (...);
    TCefJsonParserOptions = (...);
    TCefXmlEncodingType = (...);
    TCefXmlNodeType = (...);
    TCefDomEventPhase = (...);
    TCefButtonState = (...);
    TCefHorizontalAlignment = (...);
    TCefMenuAnchorPosition = (...);
    TCefMenuColorType = (...);
    TCefCompositionUnderlineStyle = (...);
    TCefPermissionRequestResult = (...);
    TCefPreferencesType = (...);
    TCefGestureCommand = (...);
    TCefZoomCommand = (...);
    TCefColorVariant = (...);
    TCefTestCertType = (...);
    TCefChromePageActionIconType = (...);
    TCefTaskType = (...);
    TCefChromeToolbarButtonType = (...);
    + + + +
    PCefTaskManager = ˆTCefTaskManager;
    +

    This item has no description.

    + +
    PCefv8Value = ˆTCefv8Value;
    @@ -2429,20 +2450,6 @@
    - - - -
    PCefGetExtensionResourceCallback = ˆTCefGetExtensionResourceCallback;
    -

    This item has no description.

    - - - - - -
    PCefExtensionHandler = ˆTCefExtensionHandler;
    -

    This item has no description.

    - -
    PCefAudioHandler = ˆTCefAudioHandler;
    @@ -2457,13 +2464,6 @@
    - - - -
    PCefExtension = ˆTCefExtension;
    -

    This item has no description.

    - -
    PCefPopupFeatures = ˆTCefPopupFeatures;
    @@ -3234,6 +3234,20 @@
    + + + +
    PCefLinuxWindowProperties = ˆTCefLinuxWindowProperties;
    +

    This item has no description.

    + + + + + +
    PCefTaskInfo = ˆTCefTaskInfo;
    +

    This item has no description.

    + +
    NativeInt = PtrInt;
    @@ -3877,7 +3891,7 @@ Ranges:

    - Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with the Chrome runtime. Should be kept in sync with Chromium's permissions::RequestType type.

    + Permission types used with OnShowPermissionPrompt. Some types are platform-specific or only supported with Chrome style. Should be kept in sync with Chromium's permissions::RequestType type.

    @@ -3963,6 +3977,15 @@ Ranges:

    + + + +
    TCefCustomInt64Array = array of int64;
    +

    + Custom array of int64.

    +
    + + +
    LPMEMORYSTATUSEX = ˆTMyMemoryStatusEx;
    @@ -6713,6 +6736,50 @@ Ranges: CEF_CPAIT_PRODUCT_SPECIFICATIONS
  • CEF_CPAIT_LENS_OVERLAY
  • +
  • +CEF_CPAIT_DISCOUNTS
  • + +
    + + + + +
    TCefTaskType = (...);
    +

    + Specifies the task type variants supported by CefTaskManager. Should be kept in sync with Chromium's task_manager::Task::Type type.

    +

    + + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_types.h">CEF source file: /include/internal/cef_types.h (cef_task_type_t))

    +
    Values
    +
      +
    • +CEF_TASK_TYPE_UNKNOWN = 0
    • +
    • +CEF_TASK_TYPE_BROWSER: The main browser process.
    • +
    • +CEF_TASK_TYPE_GPU: A graphics process.
    • +
    • +CEF_TASK_TYPE_ZYGOTE: A Linux zygote process.
    • +
    • +CEF_TASK_TYPE_UTILITY: A browser utility process.
    • +
    • +CEF_TASK_TYPE_RENDERER: A normal WebContents renderer process.
    • +
    • +CEF_TASK_TYPE_EXTENSION: An extension or app process.
    • +
    • +CEF_TASK_TYPE_GUEST: A browser plugin guest process.
    • +
    • +CEF_TASK_TYPE_PLUGIN: A plugin process.
    • +
    • +CEF_TASK_TYPE_SANDBOX_HELPER: A sandbox helper process.
    • +
    • +CEF_TASK_TYPE_DEDICATED_WORKER: A dedicated worker running on the renderer process.
    • +
    • +CEF_TASK_TYPE_SHARED_WORKER: A shared worker running on the renderer process.
    • +
    • +CEF_TASK_TYPE_SERVICE_WORKER: A service worker running on the renderer process.
    @@ -6770,11 +6837,9 @@ Ranges:

    -

    CEF supports both a Chrome runtime (based on the Chrome UI layer) and an Alloy runtime (based on the Chromium content layer). The Chrome runtime provides the full Chrome UI and browser functionality whereas the Alloy runtime provides less default browser functionality but adds additional client callbacks and support for windowless (off-screen) rendering. For additional comparative details on runtime types see https://bitbucket.org/chromiumembedded/cef/wiki/Architecture.md#markdown-header-cef3 +

    CEF supports both a Chrome runtime style (based on the Chrome UI layer) and an Alloy runtime style (based on the Chromium content layer). Chrome style provides the full Chrome UI and browser functionality whereas Alloy style provides less default browser functionality but adds additional client callbacks and support for windowless (off-screen) rendering. The style type is individually configured for each window/browser at creation time and different styles can be mixed during runtime. For additional comparative details on runtime styles see https://bitbucket.org/chromiumembedded/cef/wiki/Architecture.md#markdown-header-cef3 -

    Each runtime is composed of a bootstrap component and a style component. The bootstrap component is configured via CefSettings.chrome_runtime and cannot be changed after CefInitialize. The style component is individually configured for each window/browser at creation time and, in combination with the Chrome bootstrap, different styles can be mixed during runtime. - -

    Windowless rendering will always use Alloy style. Windowed rendering with a default window or client-provided parent window can configure the style via CefWindowInfo.runtime_style. Windowed rendering with the Views framework can configure the style via CefWindowDelegate::GetWindowRuntimeStyle and CefBrowserViewDelegate::GetBrowserRuntimeStyle. Alloy style Windows with the Views framework can host only Alloy style BrowserViews but Chrome style Windows can host both style BrowserViews. Additionally, a Chrome style Window can host at most one Chrome style BrowserView but potentially multiple Alloy style BrowserViews. See CefWindowInfo.runtime_style documentation for any additional platform-specific limitations. +

    Windowless rendering will always use Alloy style. Windowed rendering with a default window or client-provided parent window can configure the style via TCefWindowInfo.runtime_style. Windowed rendering with the Views framework can configure the style via ICefWindowDelegate.GetWindowRuntimeStyle and ICefBrowserViewDelegate.GetBrowserRuntimeStyle. Alloy style Windows with the Views framework can host only Alloy style BrowserViews but Chrome style Windows can host both style BrowserViews. Additionally, a Chrome style Window can host at most one Chrome style BrowserView but potentially multiple Alloy style BrowserViews. See TCefWindowInfo.runtime_style documentation for any additional platform-specific limitations.

    @@ -6784,11 +6849,11 @@ Ranges:

    Values
    • -CEF_RUNTIME_STYLE_DEFAULT: Use the default runtime style. The default style will match the CefSettings.chrome_runtime value in most cases. See above documentation for exceptions.
    • +CEF_RUNTIME_STYLE_DEFAULT: Use the default style. See above documentation for exceptions.
    • -CEF_RUNTIME_STYLE_CHROME: Use the Chrome runtime style. Only supported with the Chrome runtime.
    • +CEF_RUNTIME_STYLE_CHROME: Use Chrome style.
    • -CEF_RUNTIME_STYLE_ALLOY: Use the Alloy runtime style. Supported with both the Alloy and Chrome runtime.
    • +CEF_RUNTIME_STYLE_ALLOY: Use Alloy style.
    @@ -6812,7 +6877,7 @@ Ranges:

    - Supported content setting types. Some types are platform-specific or only supported with the Chrome runtime. Should be kept in sync with Chromium's ContentSettingsType type.

    + Supported content setting types. Some types are platform-specific or only supported with Chrome style. Should be kept in sync with Chromium's ContentSettingsType type.

    @@ -7061,6 +7126,24 @@ Ranges:

    ALLOW: Protections disabled.

    +

  • +CEF_CONTENT_SETTING_TYPE_DISPLAY_MEDIA_SYSTEM_AUDIO: With this permission, when the application calls `getDisplayMedia()`, a system audio track can be returned without showing the display media selection picker. The application can explicitly specify `systemAudio: 'exclude'` or `video: true` to still show the display media selection picker if needed. Please note that the setting only works for WebUI.
  • +
  • +CEF_CONTENT_SETTING_TYPE_JAVASCRIPT_OPTIMIZER: Whether to use the higher-tier v8 optimizers for running JavaScript on the page.
  • +
  • +CEF_CONTENT_SETTING_TYPE_STORAGE_ACCESS_HEADER_ORIGIN_TRIAL: + +

    Content Setting for the Storage Access Headers persistent origin trial that allows origins to opt into the storage access header behavior. Should be scoped to `REQUESTING_ORIGIN_AND_TOP_SCHEMEFUL_SITE_SCOPE` in order to correspond to the design of persistent origin trials. + +

    ALLOW: storage access request headers will be attached to cross-site requests, and url requests will look for response headers from origins to retry a request or load with storage access. + +

    BLOCK (default): no effect. + +

    +

    + + +

    <see href="https://github.com/cfredric/storage-access-headers">See also: https://github.com/cfredric/storage-access-headers.)

  • diff --git a/docs/html/uCEFViewsFrameworkEvents.html b/docs/html/uCEFViewsFrameworkEvents.html index 3b139616..8cce03fc 100644 --- a/docs/html/uCEFViewsFrameworkEvents.html +++ b/docs/html/uCEFViewsFrameworkEvents.html @@ -153,6 +153,9 @@ TOnGetWindowRuntimeStyleEvent = procedure(const Sender: TObject; var aResult : TCefRuntimeStyle) of object; + +TOnGetLinuxWindowPropertiesEvent = procedure(const Sender: TObject; const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean) of object; +

    Description

    Types

    @@ -490,6 +493,13 @@ ICefWindowDelegate

    This item has no description.

    + + + + + +
    TOnGetLinuxWindowPropertiesEvent = procedure(const Sender: TObject; const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean) of object;
    +

    This item has no description.


    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFWindowComponent.TCEFWindowComponent.html b/docs/html/uCEFWindowComponent.TCEFWindowComponent.html index a87afbe3..7e8f78c3 100644 --- a/docs/html/uCEFWindowComponent.TCEFWindowComponent.html +++ b/docs/html/uCEFWindowComponent.TCEFWindowComponent.html @@ -123,6 +123,10 @@ Protected FOnGetWindowRuntimeStyle: TOnGetWindowRuntimeStyleEvent; + +Protected +FOnGetLinuxWindowProperties: TOnGetLinuxWindowPropertiesEvent; +

    Methods

    @@ -312,101 +316,105 @@ - + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -553,6 +561,10 @@ + + + +
    Protectedprocedure doCreateCustomView; override;procedure doOnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean);
    Protectedprocedure doCreateCustomView; override;
    Public procedure CreateTopLevelWindow;
    Public procedure Show;
    Public procedure ShowAsBrowserModalDialog(const browser_view: ICefBrowserView);
    Public procedure Hide;
    Public procedure CenterWindow(const size_: TCefSize);
    Public procedure Close;
    Public procedure Activate;
    Public procedure Deactivate;
    Public procedure BringToTop;
    Public procedure Maximize;
    Public procedure Minimize;
    Public procedure Restore;
    Public function AddOverlayView(const view: ICefView; docking_mode: TCefDockingMode; can_activate: boolean): ICefOverlayController;
    Public procedure ShowMenu(const menu_model: ICefMenuModel; const screen_point: TCefPoint; anchor_position : TCefMenuAnchorPosition);
    Public procedure CancelMenu;
    Public procedure SetDraggableRegions(regionsCount: NativeUInt; const regions: PCefDraggableRegionArray);
    Public procedure SendKeyPress(key_code: Integer; event_flags: cardinal);
    Public procedure SendMouseMove(screen_x, screen_y: Integer);
    Public procedure SendMouseEvents(button: TCefMouseButtonType; mouse_down, mouse_up: boolean);
    Public procedure SetAccelerator(command_id, key_code : Integer; shift_pressed, ctrl_pressed, alt_pressed, high_priority: boolean);
    Public procedure RemoveAccelerator(command_id: Integer);
    Public procedure RemoveAllAccelerators;
    Public procedure SetThemeColor(color_id: integer; color: TCefColor);
    Public procedure ThemeChanged;
    Published property OnGetWindowRuntimeStyle : TOnGetWindowRuntimeStyleEvent read FOnGetWindowRuntimeStyle write FOnGetWindowRuntimeStyle;
    Publishedproperty OnGetLinuxWindowProperties : TOnGetLinuxWindowPropertiesEvent read FOnGetLinuxWindowProperties write FOnGetLinuxWindowProperties;

    Description

    Fields

    @@ -750,6 +762,14 @@ ICefWindowDelegateEvents

    This item has no description.

    + + + + + + +
    ProtectedFOnGetLinuxWindowProperties: TOnGetLinuxWindowPropertiesEvent;
    +

    This item has no description.

    Methods

    @@ -1124,6 +1144,14 @@ ICefWindowDelegateEvents

    + + + +
    Protectedprocedure doOnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean);
    +

    This item has no description.

    + + +
    Protected procedure doCreateCustomView; override;
    @@ -1629,7 +1657,7 @@ ICefViewDelegateEvents

    - Called when |window| is transitioning to or from fullscreen mode. On MacOS the transition occurs asynchronously with |is_competed| set to false (0) when the transition starts and true (1) after the transition completes. On other platforms the transition occurs synchronously with |is_completed| set to true (1) after the transition completes. With the Alloy runtime you must also implement ICefDisplayHandler.OnFullscreenModeChange to handle fullscreen transitions initiated by browser content.

    + Called when |window| is transitioning to or from fullscreen mode. On MacOS the transition occurs asynchronously with |is_competed| set to false (0) when the transition starts and true (1) after the transition completes. On other platforms the transition occurs synchronously with |is_completed| set to true (1) after the transition completes. With Alloy style you must also implement ICefDisplayHandler.OnFullscreenModeChange to handle fullscreen transitions initiated by browser content.

    @@ -1791,7 +1819,7 @@ ICefViewDelegateEvents

    Native/OS theme colors are configured globally and do not need to be customized for each Window individually. An example of a native/OS theme change that triggers this callback is when the user switches between dark and light mode during application lifespan. Native/OS theme changes can be disabled by passing the `–force-dark-mode` or `–force-light-mode` command-line flag. -

    Chrome theme colors will be applied and this callback will be triggered if/when a BrowserView is added to the Window's component hierarchy. Chrome theme colors can be configured on a per-RequestContext basis using ICefRequestContext.SetChromeColorScheme or (Chrome runtime only) by visiting chrome://settings/manageProfile. Any theme changes using those mechanisms will also trigger this callback. Chrome theme colors will be persisted and restored from disk cache with the Chrome runtime, and with the Alloy runtime if persist_user_preferences is set to true (1) via CefSettings or ICefRequestContext Settings. +

    Chrome theme colors will be applied and this callback will be triggered if/when a BrowserView is added to the Window's component hierarchy. Chrome theme colors can be configured on a per-RequestContext basis using ICefRequestContext.SetChromeColorScheme or (Chrome style only) by visiting chrome://settings/manageProfile. Any theme changes using those mechanisms will also trigger this callback. Chrome theme colors will be persisted and restored from disk cache.

    This callback is not triggered on Window creation so clients that wish to customize the initial native/OS theme must call ICefWindow.SetThemeColor and ICefWindow.ThemeChanged before showing the first Window. @@ -1810,6 +1838,16 @@ ICefViewDelegateEvents

    Optionally change the runtime style for this Window. See TCefRuntimeStyle documentation for details.

    + + + + + + +
    Publishedproperty OnGetLinuxWindowProperties : TOnGetLinuxWindowPropertiesEvent read FOnGetLinuxWindowProperties write FOnGetLinuxWindowProperties;
    +

    + Return Linux-specific window properties for correctly handling by window managers.

    +

    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFWindowDelegate.TCefWindowDelegateOwn.html b/docs/html/uCEFWindowDelegate.TCefWindowDelegateOwn.html index 4d514c39..1308a5b6 100644 --- a/docs/html/uCEFWindowDelegate.TCefWindowDelegateOwn.html +++ b/docs/html/uCEFWindowDelegate.TCefWindowDelegateOwn.html @@ -122,9 +122,13 @@ Protected -procedure InitializeCEFMethods; override; +procedure OnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean); virtual; +Protected +procedure InitializeCEFMethods; override; + + Public constructor Create; override; @@ -188,7 +192,7 @@

    - Called when |window| is transitioning to or from fullscreen mode. On MacOS the transition occurs asynchronously with |is_competed| set to false (0) when the transition starts and true (1) after the transition completes. On other platforms the transition occurs synchronously with |is_completed| set to true (1) after the transition completes. With the Alloy runtime you must also implement ICefDisplayHandler.OnFullscreenModeChange to handle fullscreen transitions initiated by browser content.

    + Called when |window| is transitioning to or from fullscreen mode. On MacOS the transition occurs asynchronously with |is_competed| set to false (0) when the transition starts and true (1) after the transition completes. On other platforms the transition occurs synchronously with |is_completed| set to true (1) after the transition completes. With Alloy style you must also implement ICefDisplayHandler.OnFullscreenModeChange to handle fullscreen transitions initiated by browser content.

    @@ -350,7 +354,7 @@

    Native/OS theme colors are configured globally and do not need to be customized for each Window individually. An example of a native/OS theme change that triggers this callback is when the user switches between dark and light mode during application lifespan. Native/OS theme changes can be disabled by passing the `–force-dark-mode` or `–force-light-mode` command-line flag. -

    Chrome theme colors will be applied and this callback will be triggered if/when a BrowserView is added to the Window's component hierarchy. Chrome theme colors can be configured on a per-RequestContext basis using ICefRequestContext.SetChromeColorScheme or (Chrome runtime only) by visiting chrome://settings/manageProfile. Any theme changes using those mechanisms will also trigger this callback. Chrome theme colors will be persisted and restored from disk cache with the Chrome runtime, and with the Alloy runtime if persist_user_preferences is set to true (1) via CefSettings or ICefRequestContext Settings. +

    Chrome theme colors will be applied and this callback will be triggered if/when a BrowserView is added to the Window's component hierarchy. Chrome theme colors can be configured on a per-RequestContext basis using ICefRequestContext.SetChromeColorScheme or (Chrome style only) by visiting chrome://settings/manageProfile. Any theme changes using those mechanisms will also trigger this callback. Chrome theme colors will be persisted and restored from disk cache.

    This callback is not triggered on Window creation so clients that wish to customize the initial native/OS theme must call ICefWindow.SetThemeColor and ICefWindow.ThemeChanged before showing the first Window. @@ -372,6 +376,16 @@

    + + + +
    Protectedprocedure OnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean); virtual;
    +

    + Return Linux-specific window properties for correctly handling by window managers.

    +
    + + + + + + + @@ -178,7 +182,7 @@
    Protected procedure InitializeCEFMethods; override;
    diff --git a/docs/html/uCEFWindowDelegate.TCefWindowDelegateRef.html b/docs/html/uCEFWindowDelegate.TCefWindowDelegateRef.html index 5283eab5..ae1fc55b 100644 --- a/docs/html/uCEFWindowDelegate.TCefWindowDelegateRef.html +++ b/docs/html/uCEFWindowDelegate.TCefWindowDelegateRef.html @@ -115,6 +115,10 @@ procedure OnGetWindowRuntimeStyle(var aResult: TCefRuntimeStyle);
    Protectedprocedure OnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean);
    Public class function UnWrap(data: Pointer): ICefWindowDelegate;

    This item has no description. Showing description inherited from ICefWindowDelegate.OnWindowFullscreenTransition.

    - Called when |window| is transitioning to or from fullscreen mode. On MacOS the transition occurs asynchronously with |is_competed| set to false (0) when the transition starts and true (1) after the transition completes. On other platforms the transition occurs synchronously with |is_completed| set to true (1) after the transition completes. With the Alloy runtime you must also implement ICefDisplayHandler.OnFullscreenModeChange to handle fullscreen transitions initiated by browser content.

    + Called when |window| is transitioning to or from fullscreen mode. On MacOS the transition occurs asynchronously with |is_competed| set to false (0) when the transition starts and true (1) after the transition completes. On other platforms the transition occurs synchronously with |is_completed| set to true (1) after the transition completes. With Alloy style you must also implement ICefDisplayHandler.OnFullscreenModeChange to handle fullscreen transitions initiated by browser content.

    @@ -340,7 +344,7 @@

    Native/OS theme colors are configured globally and do not need to be customized for each Window individually. An example of a native/OS theme change that triggers this callback is when the user switches between dark and light mode during application lifespan. Native/OS theme changes can be disabled by passing the `–force-dark-mode` or `–force-light-mode` command-line flag. -

    Chrome theme colors will be applied and this callback will be triggered if/when a BrowserView is added to the Window's component hierarchy. Chrome theme colors can be configured on a per-RequestContext basis using ICefRequestContext.SetChromeColorScheme or (Chrome runtime only) by visiting chrome://settings/manageProfile. Any theme changes using those mechanisms will also trigger this callback. Chrome theme colors will be persisted and restored from disk cache with the Chrome runtime, and with the Alloy runtime if persist_user_preferences is set to true (1) via CefSettings or ICefRequestContext Settings. +

    Chrome theme colors will be applied and this callback will be triggered if/when a BrowserView is added to the Window's component hierarchy. Chrome theme colors can be configured on a per-RequestContext basis using ICefRequestContext.SetChromeColorScheme or (Chrome style only) by visiting chrome://settings/manageProfile. Any theme changes using those mechanisms will also trigger this callback. Chrome theme colors will be persisted and restored from disk cache.

    This callback is not triggered on Window creation so clients that wish to customize the initial native/OS theme must call ICefWindow.SetThemeColor and ICefWindow.ThemeChanged before showing the first Window. @@ -361,6 +365,16 @@

    + + + + +
    Protectedprocedure OnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean);
    +

    This item has no description. Showing description inherited from ICefWindowDelegate.OnGetLinuxWindowProperties.

    + Return Linux-specific window properties for correctly handling by window managers.

    +
    + + diff --git a/docs/html/uCEFWindowDelegate.TCustomWindowDelegate.html b/docs/html/uCEFWindowDelegate.TCustomWindowDelegate.html index 71ea0fdf..336ff178 100644 --- a/docs/html/uCEFWindowDelegate.TCustomWindowDelegate.html +++ b/docs/html/uCEFWindowDelegate.TCustomWindowDelegate.html @@ -169,6 +169,10 @@ + + + + @@ -370,7 +374,7 @@ ICefWindowDelegate

    Public class function UnWrap(data: Pointer): ICefWindowDelegate;
    procedure OnGetWindowRuntimeStyle(var aResult: TCefRuntimeStyle); override;
    Protectedprocedure OnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean); override;
    Public constructor Create(const events: ICefWindowDelegateEvents); reintroduce;

    This item has no description. Showing description inherited from TCefWindowDelegateOwn.OnWindowFullscreenTransition.

    - Called when |window| is transitioning to or from fullscreen mode. On MacOS the transition occurs asynchronously with |is_competed| set to false (0) when the transition starts and true (1) after the transition completes. On other platforms the transition occurs synchronously with |is_completed| set to true (1) after the transition completes. With the Alloy runtime you must also implement ICefDisplayHandler.OnFullscreenModeChange to handle fullscreen transitions initiated by browser content.

    + Called when |window| is transitioning to or from fullscreen mode. On MacOS the transition occurs asynchronously with |is_competed| set to false (0) when the transition starts and true (1) after the transition completes. On other platforms the transition occurs synchronously with |is_completed| set to true (1) after the transition completes. With Alloy style you must also implement ICefDisplayHandler.OnFullscreenModeChange to handle fullscreen transitions initiated by browser content.

    @@ -532,7 +536,7 @@ ICefWindowDelegate

    Native/OS theme colors are configured globally and do not need to be customized for each Window individually. An example of a native/OS theme change that triggers this callback is when the user switches between dark and light mode during application lifespan. Native/OS theme changes can be disabled by passing the `–force-dark-mode` or `–force-light-mode` command-line flag. -

    Chrome theme colors will be applied and this callback will be triggered if/when a BrowserView is added to the Window's component hierarchy. Chrome theme colors can be configured on a per-RequestContext basis using ICefRequestContext.SetChromeColorScheme or (Chrome runtime only) by visiting chrome://settings/manageProfile. Any theme changes using those mechanisms will also trigger this callback. Chrome theme colors will be persisted and restored from disk cache with the Chrome runtime, and with the Alloy runtime if persist_user_preferences is set to true (1) via CefSettings or ICefRequestContext Settings. +

    Chrome theme colors will be applied and this callback will be triggered if/when a BrowserView is added to the Window's component hierarchy. Chrome theme colors can be configured on a per-RequestContext basis using ICefRequestContext.SetChromeColorScheme or (Chrome style only) by visiting chrome://settings/manageProfile. Any theme changes using those mechanisms will also trigger this callback. Chrome theme colors will be persisted and restored from disk cache.

    This callback is not triggered on Window creation so clients that wish to customize the initial native/OS theme must call ICefWindow.SetThemeColor and ICefWindow.ThemeChanged before showing the first Window. @@ -553,6 +557,16 @@ ICefWindowDelegate

    + + + + +
    Protectedprocedure OnGetLinuxWindowProperties(const window_: ICefWindow; var properties: TLinuxWindowProperties; var aResult: boolean); override;
    +

    This item has no description. Showing description inherited from TCefWindowDelegateOwn.OnGetLinuxWindowProperties.

    + Return Linux-specific window properties for correctly handling by window managers.

    +
    + + diff --git a/docs/html/uCEFZipReader.TCefZipReaderRef.html b/docs/html/uCEFZipReader.TCefZipReaderRef.html index 95e74c3f..ace61b34 100644 --- a/docs/html/uCEFZipReader.TCefZipReaderRef.html +++ b/docs/html/uCEFZipReader.TCefZipReaderRef.html @@ -18,7 +18,15 @@

    type TCefZipReaderRef = class(TCefBaseRefCountedRef, ICefZipReader)

    Description

    -

    This item has no description.

    Hierarchy

    +

    + Class that supports the reading of zip archives via the zlib unzip API. The functions of this interface should only be called on the thread that creates the object.

    +

    + + +

    UNKNOWN + +

    <see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/capi/cef_zip_reader_capi.h">CEF source file: /include/capi/cef_zip_reader_capi.h (cef_zip_reader_t))

    +

    Hierarchy

    Overview

    @@ -89,7 +97,7 @@
    Public constructor Create(const events: ICefWindowDelegateEvents); reintroduce;
    function MoveToFirstFile: Boolean;
    -

    This item has no description. Showing description inherited from ICefZipReader.MoveToFirstFile.

    +

    Moves the cursor to the first file in the archive. Returns true (1) if the cursor position was set successfully.

    @@ -99,7 +107,7 @@ function MoveToNextFile: Boolean; -

    This item has no description. Showing description inherited from ICefZipReader.MoveToNextFile.

    +

    Moves the cursor to the next file in the archive. Returns true (1) if the cursor position was set successfully.

    @@ -109,7 +117,7 @@ function MoveToFile(const fileName: ustring; caseSensitive: Boolean): Boolean; -

    This item has no description. Showing description inherited from ICefZipReader.MoveToFile.

    +

    Moves the cursor to the specified file in the archive. If |caseSensitive| is true (1) then the search will be case sensitive. Returns true (1) if the cursor position was set successfully.

    @@ -119,7 +127,7 @@ function Close: Boolean; -

    This item has no description. Showing description inherited from ICefZipReader.Close.

    +

    Closes the archive. This should be called directly to ensure that cleanup occurs on the correct thread.

    @@ -129,7 +137,7 @@ function GetFileName: ustring; -

    This item has no description. Showing description inherited from ICefZipReader.GetFileName.

    +

    Returns the name of the file.

    @@ -139,7 +147,7 @@ function GetFileSize: Int64; -

    This item has no description. Showing description inherited from ICefZipReader.GetFileSize.

    +

    Returns the uncompressed size of the file.

    @@ -149,7 +157,7 @@ function GetFileLastModified: TCefBaseTime; -

    This item has no description. Showing description inherited from ICefZipReader.GetFileLastModified.

    +

    Returns the last modified timestamp for the file.

    @@ -159,7 +167,7 @@ function OpenFile(const password: ustring): Boolean; -

    This item has no description. Showing description inherited from ICefZipReader.OpenFile.

    +

    Opens the file for reading of uncompressed data. A read password may optionally be specified.

    @@ -169,7 +177,7 @@ function CloseFile: Boolean; -

    This item has no description. Showing description inherited from ICefZipReader.CloseFile.

    +

    Closes the file.

    @@ -179,7 +187,7 @@ function ReadFile(buffer: Pointer; bufferSize: NativeUInt): Integer; -

    This item has no description. Showing description inherited from ICefZipReader.ReadFile.

    +

    Read uncompressed file contents into the specified buffer. Returns < 0 if an error occurred, 0 if at the end of file, or the number of bytes read.

    @@ -189,7 +197,7 @@ function Tell: Int64; -

    This item has no description. Showing description inherited from ICefZipReader.Tell.

    +

    Returns the current offset in the uncompressed file contents.

    @@ -199,7 +207,7 @@ function Eof: Boolean; -

    This item has no description. Showing description inherited from ICefZipReader.Eof.

    +

    Returns true (1) if at end of the file contents.

    diff --git a/docs/html/uCEFZipReader.html b/docs/html/uCEFZipReader.html index 292c5e5c..f82f8ea6 100644 --- a/docs/html/uCEFZipReader.html +++ b/docs/html/uCEFZipReader.html @@ -21,7 +21,7 @@ Class TCefZipReaderRef -  + Class that supports the reading of zip archives via the zlib unzip API. The functions of this interface should only be called on the thread that creates the object.
    Generated by PasDoc 0.16.0-snapshot. diff --git a/docs/html/uCEFv8Value.TCefv8ValueRef.html b/docs/html/uCEFv8Value.TCefv8ValueRef.html index 5890fd9d..13d58658 100644 --- a/docs/html/uCEFv8Value.TCefv8ValueRef.html +++ b/docs/html/uCEFv8Value.TCefv8ValueRef.html @@ -286,10 +286,14 @@ Public -class function NewFunction(const name: ustring; const handler: ICefv8Handler): ICefv8Value; +class function NewArrayBufferWithCopy(buffer: Pointer; length: NativeUInt): ICefv8Value; Public +class function NewFunction(const name: ustring; const handler: ICefv8Handler): ICefv8Value; + + +Public class function NewPromise: ICefv8Value; @@ -943,6 +947,20 @@

    Create a new ICefv8Value object of type ArrayBuffer which wraps the provided |buffer| of size |length| bytes. The ArrayBuffer is externalized, meaning that it does not own |buffer|. The caller is responsible for freeing |buffer| when requested via a call to ICefv8ArrayBufferReleaseCallback.ReleaseBuffer. This function should only be called from within the scope of a ICefRenderProcessHandler, ICefv8Handler or ICefv8Accessor callback, or in combination with calling enter() and exit() on a stored ICefv8Context reference.

    +

    + + +

    NOTE: Always returns nullptr when V8 sandbox is enabled.

    + + + + + + + +
    Publicclass function NewArrayBufferWithCopy(buffer: Pointer; length: NativeUInt): ICefv8Value;
    +

    + Create a new cef_v8value_t object of type ArrayBuffer which copies the provided |buffer| of size |length| bytes. This function should only be called from within the scope of a cef_render_process_handler_t, cef_v8handler_t or cef_v8accessor_t callback, or in combination with calling enter() and exit() on a stored cef_v8context_t reference.

    diff --git a/packages/CEF4Delphi.dpk b/packages/CEF4Delphi.dpk index d8dd8641..9cddd924 100644 --- a/packages/CEF4Delphi.dpk +++ b/packages/CEF4Delphi.dpk @@ -13,8 +13,8 @@ package CEF4Delphi; {$LONGSTRINGS ON} {$OPENSTRINGS ON} {$OPTIMIZATION OFF} -{$OVERFLOWCHECKS OFF} -{$RANGECHECKS OFF} +{$OVERFLOWCHECKS ON} +{$RANGECHECKS ON} {$REFERENCEINFO ON} {$SAFEDIVIDE OFF} {$STACKFRAMES ON} @@ -146,9 +146,6 @@ contains uCEFAccessibilityHandler in '..\source\uCEFAccessibilityHandler.pas', uCEFOLEDragAndDrop in '..\source\uCEFOLEDragAndDrop.pas', uCEFDragAndDropMgr in '..\source\uCEFDragAndDropMgr.pas', - uCEFGetExtensionResourceCallback in '..\source\uCEFGetExtensionResourceCallback.pas', - uCEFExtension in '..\source\uCEFExtension.pas', - uCEFExtensionHandler in '..\source\uCEFExtensionHandler.pas', uCEFBufferPanel in '..\source\uCEFBufferPanel.pas', uCEFApp in '..\source\uCEFApp.pas', uCEFWorkScheduler in '..\source\uCEFWorkScheduler.pas', @@ -237,7 +234,8 @@ contains uCEFBrowserBitmap in '..\source\uCEFBrowserBitmap.pas', uCEFComponentIdList in '..\source\uCEFComponentIdList.pas', uCEFUnresponsiveProcessCallback in '..\source\uCEFUnresponsiveProcessCallback.pas', - uCEFWindowInfoWrapper in '..\source\uCEFWindowInfoWrapper.pas'; + uCEFWindowInfoWrapper in '..\source\uCEFWindowInfoWrapper.pas', + uCEFTaskManager in '..\source\uCEFTaskManager.pas'; end. diff --git a/packages/CEF4Delphi.dproj b/packages/CEF4Delphi.dproj new file mode 100644 index 00000000..6b919c50 --- /dev/null +++ b/packages/CEF4Delphi.dproj @@ -0,0 +1,344 @@ + + + {116BA9F3-8D0E-4EB1-A319-A196FC8D1051} + CEF4Delphi.dpk + True + Debug + CEF4Delphi + 1741825 + Package + VCL + 20.1 + Win32 + + + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + true + Base + true + + + false + false + false + false + false + 00400000 + true + true + CEF4Delphi + CEF4Delphi + true + Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;DUnitX.Loggers.GUI;Winapi;System.Win;$(DCC_Namespace) + 3082 + CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName= + + + package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=auto;largeHeap=False;theme=TitleBar;hardwareAccelerated=true;apiKey= + Debug + $(BDS)\bin\Artwork\Android\FM_LauncherIcon_192x192.png + activity-1.7.2.dex.jar;annotation-experimental-1.3.0.dex.jar;annotation-jvm-1.6.0.dex.jar;annotations-13.0.dex.jar;appcompat-1.2.0.dex.jar;appcompat-resources-1.2.0.dex.jar;billing-6.0.1.dex.jar;biometric-1.1.0.dex.jar;browser-1.4.0.dex.jar;cloud-messaging.dex.jar;collection-1.1.0.dex.jar;concurrent-futures-1.1.0.dex.jar;core-1.10.1.dex.jar;core-common-2.2.0.dex.jar;core-ktx-1.10.1.dex.jar;core-runtime-2.2.0.dex.jar;cursoradapter-1.0.0.dex.jar;customview-1.0.0.dex.jar;documentfile-1.0.0.dex.jar;drawerlayout-1.0.0.dex.jar;error_prone_annotations-2.9.0.dex.jar;exifinterface-1.3.6.dex.jar;firebase-annotations-16.2.0.dex.jar;firebase-common-20.3.1.dex.jar;firebase-components-17.1.0.dex.jar;firebase-datatransport-18.1.7.dex.jar;firebase-encoders-17.0.0.dex.jar;firebase-encoders-json-18.0.0.dex.jar;firebase-encoders-proto-16.0.0.dex.jar;firebase-iid-interop-17.1.0.dex.jar;firebase-installations-17.1.3.dex.jar;firebase-installations-interop-17.1.0.dex.jar;firebase-measurement-connector-19.0.0.dex.jar;firebase-messaging-23.1.2.dex.jar;fmx.dex.jar;fragment-1.2.5.dex.jar;google-play-licensing.dex.jar;interpolator-1.0.0.dex.jar;javax.inject-1.dex.jar;kotlin-stdlib-1.8.22.dex.jar;kotlin-stdlib-common-1.8.22.dex.jar;kotlin-stdlib-jdk7-1.8.22.dex.jar;kotlin-stdlib-jdk8-1.8.22.dex.jar;kotlinx-coroutines-android-1.6.4.dex.jar;kotlinx-coroutines-core-jvm-1.6.4.dex.jar;legacy-support-core-utils-1.0.0.dex.jar;lifecycle-common-2.6.1.dex.jar;lifecycle-livedata-2.6.1.dex.jar;lifecycle-livedata-core-2.6.1.dex.jar;lifecycle-runtime-2.6.1.dex.jar;lifecycle-service-2.6.1.dex.jar;lifecycle-viewmodel-2.6.1.dex.jar;lifecycle-viewmodel-savedstate-2.6.1.dex.jar;listenablefuture-1.0.dex.jar;loader-1.0.0.dex.jar;localbroadcastmanager-1.0.0.dex.jar;okio-jvm-3.4.0.dex.jar;play-services-ads-22.2.0.dex.jar;play-services-ads-base-22.2.0.dex.jar;play-services-ads-identifier-18.0.0.dex.jar;play-services-ads-lite-22.2.0.dex.jar;play-services-appset-16.0.1.dex.jar;play-services-base-18.1.0.dex.jar;play-services-basement-18.1.0.dex.jar;play-services-cloud-messaging-17.0.1.dex.jar;play-services-location-21.0.1.dex.jar;play-services-maps-18.1.0.dex.jar;play-services-measurement-base-20.1.2.dex.jar;play-services-measurement-sdk-api-20.1.2.dex.jar;play-services-stats-17.0.2.dex.jar;play-services-tasks-18.0.2.dex.jar;print-1.0.0.dex.jar;profileinstaller-1.3.0.dex.jar;room-common-2.2.5.dex.jar;room-runtime-2.2.5.dex.jar;savedstate-1.2.1.dex.jar;sqlite-2.1.0.dex.jar;sqlite-framework-2.1.0.dex.jar;startup-runtime-1.1.1.dex.jar;tracing-1.0.0.dex.jar;transport-api-3.0.0.dex.jar;transport-backend-cct-3.1.8.dex.jar;transport-runtime-3.1.8.dex.jar;user-messaging-platform-2.0.0.dex.jar;vectordrawable-1.1.0.dex.jar;vectordrawable-animated-1.1.0.dex.jar;versionedparcelable-1.1.1.dex.jar;viewpager-1.0.0.dex.jar;work-runtime-2.7.0.dex.jar + + + $(BDS)\bin\Artwork\Android\FM_LauncherIcon_192x192.png + activity-1.7.2.dex.jar;annotation-experimental-1.3.0.dex.jar;annotation-jvm-1.6.0.dex.jar;annotations-13.0.dex.jar;appcompat-1.2.0.dex.jar;appcompat-resources-1.2.0.dex.jar;billing-6.0.1.dex.jar;biometric-1.1.0.dex.jar;browser-1.4.0.dex.jar;cloud-messaging.dex.jar;collection-1.1.0.dex.jar;concurrent-futures-1.1.0.dex.jar;core-1.10.1.dex.jar;core-common-2.2.0.dex.jar;core-ktx-1.10.1.dex.jar;core-runtime-2.2.0.dex.jar;cursoradapter-1.0.0.dex.jar;customview-1.0.0.dex.jar;documentfile-1.0.0.dex.jar;drawerlayout-1.0.0.dex.jar;error_prone_annotations-2.9.0.dex.jar;exifinterface-1.3.6.dex.jar;firebase-annotations-16.2.0.dex.jar;firebase-common-20.3.1.dex.jar;firebase-components-17.1.0.dex.jar;firebase-datatransport-18.1.7.dex.jar;firebase-encoders-17.0.0.dex.jar;firebase-encoders-json-18.0.0.dex.jar;firebase-encoders-proto-16.0.0.dex.jar;firebase-iid-interop-17.1.0.dex.jar;firebase-installations-17.1.3.dex.jar;firebase-installations-interop-17.1.0.dex.jar;firebase-measurement-connector-19.0.0.dex.jar;firebase-messaging-23.1.2.dex.jar;fmx.dex.jar;fragment-1.2.5.dex.jar;google-play-licensing.dex.jar;interpolator-1.0.0.dex.jar;javax.inject-1.dex.jar;kotlin-stdlib-1.8.22.dex.jar;kotlin-stdlib-common-1.8.22.dex.jar;kotlin-stdlib-jdk7-1.8.22.dex.jar;kotlin-stdlib-jdk8-1.8.22.dex.jar;kotlinx-coroutines-android-1.6.4.dex.jar;kotlinx-coroutines-core-jvm-1.6.4.dex.jar;legacy-support-core-utils-1.0.0.dex.jar;lifecycle-common-2.6.1.dex.jar;lifecycle-livedata-2.6.1.dex.jar;lifecycle-livedata-core-2.6.1.dex.jar;lifecycle-runtime-2.6.1.dex.jar;lifecycle-service-2.6.1.dex.jar;lifecycle-viewmodel-2.6.1.dex.jar;lifecycle-viewmodel-savedstate-2.6.1.dex.jar;listenablefuture-1.0.dex.jar;loader-1.0.0.dex.jar;localbroadcastmanager-1.0.0.dex.jar;okio-jvm-3.4.0.dex.jar;play-services-ads-22.2.0.dex.jar;play-services-ads-base-22.2.0.dex.jar;play-services-ads-identifier-18.0.0.dex.jar;play-services-ads-lite-22.2.0.dex.jar;play-services-appset-16.0.1.dex.jar;play-services-base-18.1.0.dex.jar;play-services-basement-18.1.0.dex.jar;play-services-cloud-messaging-17.0.1.dex.jar;play-services-location-21.0.1.dex.jar;play-services-maps-18.1.0.dex.jar;play-services-measurement-base-20.1.2.dex.jar;play-services-measurement-sdk-api-20.1.2.dex.jar;play-services-stats-17.0.2.dex.jar;play-services-tasks-18.0.2.dex.jar;print-1.0.0.dex.jar;profileinstaller-1.3.0.dex.jar;room-common-2.2.5.dex.jar;room-runtime-2.2.5.dex.jar;savedstate-1.2.1.dex.jar;sqlite-2.1.0.dex.jar;sqlite-framework-2.1.0.dex.jar;startup-runtime-1.1.1.dex.jar;tracing-1.0.0.dex.jar;transport-api-3.0.0.dex.jar;transport-backend-cct-3.1.8.dex.jar;transport-runtime-3.1.8.dex.jar;user-messaging-platform-2.0.0.dex.jar;vectordrawable-1.1.0.dex.jar;vectordrawable-animated-1.1.0.dex.jar;versionedparcelable-1.1.1.dex.jar;viewpager-1.0.0.dex.jar;work-runtime-2.7.0.dex.jar + + + $(BDS)\bin\Artwork\iOS\iPhone\FM_ApplicationIcon_1024x1024.png + + + Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace) + Debug + true + CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName) + 1033 + + + RELEASE;$(DCC_Define) + 0 + false + 0 + + + DEBUG;$(DCC_Define) + false + true + true + true + + + + MainSource + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Base + + + Cfg_1 + Base + + + Cfg_2 + Base + + + + Delphi.Personality.12 + Package + + + + CEF4Delphi.dpk + + + + False + True + False + True + True + False + True + True + True + False + True + + + 12 + + + + diff --git a/packages/CEF4Delphi.res b/packages/CEF4Delphi.res index b9b013c2..aed08282 100644 Binary files a/packages/CEF4Delphi.res and b/packages/CEF4Delphi.res differ diff --git a/packages/CEF4DelphiVCLRTL.dpk b/packages/CEF4DelphiVCLRTL.dpk index 7f5932e8..7ee01d83 100644 --- a/packages/CEF4DelphiVCLRTL.dpk +++ b/packages/CEF4DelphiVCLRTL.dpk @@ -78,13 +78,10 @@ contains uCEFDragData in '..\source\uCEFDragData.pas', uCEFDragHandler in '..\source\uCEFDragHandler.pas', uCEFEndTracingCallback in '..\source\uCEFEndTracingCallback.pas', - uCEFExtension in '..\source\uCEFExtension.pas', - uCEFExtensionHandler in '..\source\uCEFExtensionHandler.pas', uCEFFileDialogCallback in '..\source\uCEFFileDialogCallback.pas', uCEFFindHandler in '..\source\uCEFFindHandler.pas', uCEFFocusHandler in '..\source\uCEFFocusHandler.pas', uCEFFrame in '..\source\uCEFFrame.pas', - uCEFGetExtensionResourceCallback in '..\source\uCEFGetExtensionResourceCallback.pas', uCEFImage in '..\source\uCEFImage.pas', uCEFInterfaces in '..\source\uCEFInterfaces.pas', uCEFJsDialogCallback in '..\source\uCEFJsDialogCallback.pas', @@ -237,7 +234,8 @@ contains uCEFBrowserBitmap in '..\source\uCEFBrowserBitmap.pas', uCEFComponentIdList in '..\source\uCEFComponentIdList.pas', uCEFUnresponsiveProcessCallback in '..\source\uCEFUnresponsiveProcessCallback.pas', - uCEFWindowInfoWrapper in '..\source\uCEFWindowInfoWrapper.pas'; + uCEFWindowInfoWrapper in '..\source\uCEFWindowInfoWrapper.pas', + uCEFTaskManager in '..\source\uCEFTaskManager.pas'; end. diff --git a/packages/CEF4DelphiVCLRTL.dproj b/packages/CEF4DelphiVCLRTL.dproj index a8a6df46..874babf2 100644 --- a/packages/CEF4DelphiVCLRTL.dproj +++ b/packages/CEF4DelphiVCLRTL.dproj @@ -172,13 +172,10 @@ - - - @@ -332,6 +329,7 @@ + Base diff --git a/packages/cef4delphi.pds b/packages/cef4delphi.pds index 1adfe2d7..2eddc1bf 100644 --- a/packages/cef4delphi.pds +++ b/packages/cef4delphi.pds @@ -67,7 +67,7 @@ Count=1 Item_0=..\source [Files] -Count=220 +Count=218 Item_0=..\source\uCEFAccessibilityHandler.pas Item_1=..\source\uCEFApp.pas Item_2=..\source\uCEFApplication.pas @@ -129,165 +129,163 @@ Item_57=..\source\uCEFDragAndDropMgr.pas Item_58=..\source\uCEFDragData.pas Item_59=..\source\uCEFDragHandler.pas Item_60=..\source\uCEFEndTracingCallback.pas -Item_61=..\source\uCEFExtension.pas -Item_62=..\source\uCEFExtensionHandler.pas -Item_63=..\source\uCEFFileDialogCallback.pas -Item_64=..\source\uCEFFileDialogInfo.pas -Item_65=..\source\uCEFFillLayout.pas -Item_66=..\source\uCEFFindHandler.pas -Item_67=..\source\uCEFFMXBufferPanel.pas -Item_68=..\source\uCEFFMXChromium.pas -Item_69=..\source\uCEFFMXWindowParent.pas -Item_70=..\source\uCEFFMXWorkScheduler.pas -Item_71=..\source\uCEFFocusHandler.pas -Item_72=..\source\uCEFFrame.pas -Item_73=..\source\uCEFFrameHandler.pas -Item_74=..\source\uCEFGetExtensionResourceCallback.pas -Item_75=..\source\uCEFImage.pas -Item_76=..\source\uCEFInterfaces.pas -Item_77=..\source\uCEFJsDialogCallback.pas -Item_78=..\source\uCEFJsDialogHandler.pas -Item_79=..\source\uCEFJson.pas -Item_80=..\source\uCEFKeyboardHandler.pas -Item_81=..\source\uCEFLabelButton.pas -Item_82=..\source\uCEFLabelButtonComponent.pas -Item_83=..\source\uCEFLayout.pas -Item_84=..\source\uceflazaruscocoa.pas -Item_85=..\source\uCEFLibFunctions.pas -Item_86=..\source\uCEFLifeSpanHandler.pas -Item_87=..\source\uCEFLinkedWinControlBase.pas -Item_88=..\source\uCEFLinkedWindowParent.pas -Item_89=..\source\uCEFLinuxConstants.pas -Item_90=..\source\uCEFLinuxEventPipe.pas -Item_91=..\source\uCEFLinuxFunctions.pas -Item_92=..\source\uCEFLinuxTypes.pas -Item_93=..\source\uCEFListValue.pas -Item_94=..\source\uCEFLoadHandler.pas -Item_95=..\source\uCEFMacOSConstants.pas -Item_96=..\source\uCEFMacOSCustomCocoaTimer.pas -Item_97=..\source\uCEFMacOSFunctions.pas -Item_98=..\source\uCEFMacOSInterfaces.pas -Item_99=..\source\uCEFMediaAccessCallback.pas -Item_100=..\source\uCEFMediaAccessHandler.pas -Item_101=..\source\uCEFMediaObserver.pas -Item_102=..\source\uCEFMediaRoute.pas -Item_103=..\source\uCEFMediaRouteCreateCallback.pas -Item_104=..\source\uCEFMediaRouter.pas -Item_105=..\source\uCEFMediaSink.pas -Item_106=..\source\uCEFMediaSinkDeviceInfoCallback.pas -Item_107=..\source\uCEFMediaSource.pas -Item_108=..\source\uCEFMenuButton.pas -Item_109=..\source\uCEFMenuButtonComponent.pas -Item_110=..\source\uCEFMenuButtonDelegate.pas -Item_111=..\source\uCEFMenuButtonPressedLock.pas -Item_112=..\source\uCEFMenuModel.pas -Item_113=..\source\uCEFMenuModelDelegate.pas -Item_114=..\source\uCEFMiscFunctions.pas -Item_115=..\source\uCEFNavigationEntry.pas -Item_116=..\source\uCEFNavigationEntryVisitor.pas -Item_117=..\source\uCEFOAuth2Helper.pas -Item_118=..\source\uCEFOLEDragAndDrop.pas -Item_119=..\source\uCEFOsrBrowserWindow.pas -Item_120=..\source\uCEFOSRIMEHandler.pas -Item_121=..\source\uCEFOverlayController.pas -Item_122=..\source\uCEFPanel.pas -Item_123=..\source\uCEFPanelComponent.pas -Item_124=..\source\uCEFPanelDelegate.pas -Item_125=..\source\uCEFPDFPrintCallback.pas -Item_126=..\source\uCEFPDFPrintOptions.pas -Item_127=..\source\uCEFPermissionHandler.pas -Item_128=..\source\uCEFPermissionPromptCallback.pas -Item_129=..\source\uCEFPostData.pas -Item_130=..\source\uCEFPostDataElement.pas -Item_131=..\source\uCEFPreferenceManager.pas -Item_132=..\source\uCEFPreferenceRegistrar.pas -Item_133=..\source\uCEFPrintDialogCallback.pas -Item_134=..\source\uCEFPrintHandler.pas -Item_135=..\source\uCEFPrintJobCallback.pas -Item_136=..\source\uCEFPrintSettings.pas -Item_137=..\source\uCEFProcessMessage.pas -Item_138=..\source\uCEFRegistration.pas -Item_139=..\source\uCEFRenderHandler.pas -Item_140=..\source\uCEFRenderProcessHandler.pas -Item_141=..\source\uCEFRequest.pas -Item_142=..\source\uCEFRequestContext.pas -Item_143=..\source\uCEFRequestContextHandler.pas -Item_144=..\source\uCEFRequestHandler.pas -Item_145=..\source\uCEFResolveCallback.pas -Item_146=..\source\uCEFResourceBundle.pas -Item_147=..\source\uCEFResourceBundleHandler.pas -Item_148=..\source\uCEFResourceHandler.pas -Item_149=..\source\uCEFResourceReadCallback.pas -Item_150=..\source\uCEFResourceRequestHandler.pas -Item_151=..\source\uCEFResourceSkipCallback.pas -Item_152=..\source\uCEFResponse.pas -Item_153=..\source\uCEFResponseFilter.pas -Item_154=..\source\uCEFRunContextMenuCallback.pas -Item_155=..\source\uCEFRunFileDialogCallback.pas -Item_156=..\source\uCEFRunQuickMenuCallback.pas -Item_157=..\source\uCEFSchemeHandlerFactory.pas -Item_158=..\source\uCEFSchemeRegistrar.pas -Item_159=..\source\uCEFScrollView.pas -Item_160=..\source\uCEFScrollViewComponent.pas -Item_161=..\source\uCEFSelectClientCertificateCallback.pas -Item_162=..\source\uCEFSentinel.pas -Item_163=..\source\uCEFServer.pas -Item_164=..\source\uCEFServerComponent.pas -Item_165=..\source\uCEFServerEvents.pas -Item_166=..\source\uCEFServerHandler.pas -Item_167=..\source\uCEFSetCookieCallback.pas -Item_168=..\source\uCEFSharedMemoryRegion.pas -Item_169=..\source\uCEFSharedProcessMessageBuilder.pas -Item_170=..\source\uCEFSslInfo.pas -Item_171=..\source\uCEFSSLStatus.pas -Item_172=..\source\uCEFStreamReader.pas -Item_173=..\source\uCEFStreamWriter.pas -Item_174=..\source\uCEFStringList.pas -Item_175=..\source\uCEFStringMap.pas -Item_176=..\source\uCEFStringMultimap.pas -Item_177=..\source\uCEFStringVisitor.pas -Item_178=..\source\uCEFTask.pas -Item_179=..\source\uCEFTaskRunner.pas -Item_180=..\source\uCEFTextfield.pas -Item_181=..\source\uCEFTextfieldComponent.pas -Item_182=..\source\uCEFTextfieldDelegate.pas -Item_183=..\source\uCEFThread.pas -Item_184=..\source\uCEFTimerWorkScheduler.pas -Item_185=..\source\uCEFTypes.pas -Item_186=..\source\uCEFUnresponsiveProcessCallback.pas -Item_187=..\source\uCEFUrlRequest.pas -Item_188=..\source\uCEFUrlrequestClient.pas -Item_189=..\source\uCEFUrlRequestClientComponent.pas -Item_190=..\source\uCEFUrlRequestClientEvents.pas -Item_191=..\source\uCEFv8Accessor.pas -Item_192=..\source\uCEFv8ArrayBufferReleaseCallback.pas -Item_193=..\source\uCEFv8Context.pas -Item_194=..\source\uCEFv8Exception.pas -Item_195=..\source\uCEFv8Handler.pas -Item_196=..\source\uCEFv8Interceptor.pas -Item_197=..\source\uCEFv8StackFrame.pas -Item_198=..\source\uCEFv8StackTrace.pas -Item_199=..\source\uCEFv8Value.pas -Item_200=..\source\uCEFValue.pas -Item_201=..\source\uCEFView.pas -Item_202=..\source\uCEFViewComponent.pas -Item_203=..\source\uCEFViewDelegate.pas -Item_204=..\source\uCEFViewsFrameworkEvents.pas -Item_205=..\source\uCEFWaitableEvent.pas -Item_206=..\source\uCEFWinControl.pas -Item_207=..\source\uCEFWindow.pas -Item_208=..\source\uCEFWindowComponent.pas -Item_209=..\source\uCEFWindowDelegate.pas -Item_210=..\source\uCEFWindowInfoWrapper.pas -Item_211=..\source\uCEFWindowParent.pas -Item_212=..\source\uCEFWorkScheduler.pas -Item_213=..\source\uCEFWorkSchedulerQueueThread.pas -Item_214=..\source\uCEFWorkSchedulerThread.pas -Item_215=..\source\uCEFWriteHandler.pas -Item_216=..\source\uCEFX509Certificate.pas -Item_217=..\source\uCEFX509CertPrincipal.pas -Item_218=..\source\uCEFXmlReader.pas -Item_219=..\source\uCEFZipReader.pas +Item_61=..\source\uCEFFileDialogCallback.pas +Item_62=..\source\uCEFFileDialogInfo.pas +Item_63=..\source\uCEFFillLayout.pas +Item_64=..\source\uCEFFindHandler.pas +Item_65=..\source\uCEFFMXBufferPanel.pas +Item_66=..\source\uCEFFMXChromium.pas +Item_67=..\source\uCEFFMXWindowParent.pas +Item_68=..\source\uCEFFMXWorkScheduler.pas +Item_69=..\source\uCEFFocusHandler.pas +Item_70=..\source\uCEFFrame.pas +Item_71=..\source\uCEFFrameHandler.pas +Item_72=..\source\uCEFImage.pas +Item_73=..\source\uCEFInterfaces.pas +Item_74=..\source\uCEFJsDialogCallback.pas +Item_75=..\source\uCEFJsDialogHandler.pas +Item_76=..\source\uCEFJson.pas +Item_77=..\source\uCEFKeyboardHandler.pas +Item_78=..\source\uCEFLabelButton.pas +Item_79=..\source\uCEFLabelButtonComponent.pas +Item_80=..\source\uCEFLayout.pas +Item_81=..\source\uceflazaruscocoa.pas +Item_82=..\source\uCEFLibFunctions.pas +Item_83=..\source\uCEFLifeSpanHandler.pas +Item_84=..\source\uCEFLinkedWinControlBase.pas +Item_85=..\source\uCEFLinkedWindowParent.pas +Item_86=..\source\uCEFLinuxConstants.pas +Item_87=..\source\uCEFLinuxEventPipe.pas +Item_88=..\source\uCEFLinuxFunctions.pas +Item_89=..\source\uCEFLinuxTypes.pas +Item_90=..\source\uCEFListValue.pas +Item_91=..\source\uCEFLoadHandler.pas +Item_92=..\source\uCEFMacOSConstants.pas +Item_93=..\source\uCEFMacOSCustomCocoaTimer.pas +Item_94=..\source\uCEFMacOSFunctions.pas +Item_95=..\source\uCEFMacOSInterfaces.pas +Item_96=..\source\uCEFMediaAccessCallback.pas +Item_97=..\source\uCEFMediaAccessHandler.pas +Item_98=..\source\uCEFMediaObserver.pas +Item_99=..\source\uCEFMediaRoute.pas +Item_100=..\source\uCEFMediaRouteCreateCallback.pas +Item_101=..\source\uCEFMediaRouter.pas +Item_102=..\source\uCEFMediaSink.pas +Item_103=..\source\uCEFMediaSinkDeviceInfoCallback.pas +Item_104=..\source\uCEFMediaSource.pas +Item_105=..\source\uCEFMenuButton.pas +Item_106=..\source\uCEFMenuButtonComponent.pas +Item_107=..\source\uCEFMenuButtonDelegate.pas +Item_108=..\source\uCEFMenuButtonPressedLock.pas +Item_109=..\source\uCEFMenuModel.pas +Item_110=..\source\uCEFMenuModelDelegate.pas +Item_111=..\source\uCEFMiscFunctions.pas +Item_112=..\source\uCEFNavigationEntry.pas +Item_113=..\source\uCEFNavigationEntryVisitor.pas +Item_114=..\source\uCEFOAuth2Helper.pas +Item_115=..\source\uCEFOLEDragAndDrop.pas +Item_116=..\source\uCEFOsrBrowserWindow.pas +Item_117=..\source\uCEFOSRIMEHandler.pas +Item_118=..\source\uCEFOverlayController.pas +Item_119=..\source\uCEFPanel.pas +Item_120=..\source\uCEFPanelComponent.pas +Item_121=..\source\uCEFPanelDelegate.pas +Item_122=..\source\uCEFPDFPrintCallback.pas +Item_123=..\source\uCEFPDFPrintOptions.pas +Item_124=..\source\uCEFPermissionHandler.pas +Item_125=..\source\uCEFPermissionPromptCallback.pas +Item_126=..\source\uCEFPostData.pas +Item_127=..\source\uCEFPostDataElement.pas +Item_128=..\source\uCEFPreferenceManager.pas +Item_129=..\source\uCEFPreferenceRegistrar.pas +Item_130=..\source\uCEFPrintDialogCallback.pas +Item_131=..\source\uCEFPrintHandler.pas +Item_132=..\source\uCEFPrintJobCallback.pas +Item_133=..\source\uCEFPrintSettings.pas +Item_134=..\source\uCEFProcessMessage.pas +Item_135=..\source\uCEFRegistration.pas +Item_136=..\source\uCEFRenderHandler.pas +Item_137=..\source\uCEFRenderProcessHandler.pas +Item_138=..\source\uCEFRequest.pas +Item_139=..\source\uCEFRequestContext.pas +Item_140=..\source\uCEFRequestContextHandler.pas +Item_141=..\source\uCEFRequestHandler.pas +Item_142=..\source\uCEFResolveCallback.pas +Item_143=..\source\uCEFResourceBundle.pas +Item_144=..\source\uCEFResourceBundleHandler.pas +Item_145=..\source\uCEFResourceHandler.pas +Item_146=..\source\uCEFResourceReadCallback.pas +Item_147=..\source\uCEFResourceRequestHandler.pas +Item_148=..\source\uCEFResourceSkipCallback.pas +Item_149=..\source\uCEFResponse.pas +Item_150=..\source\uCEFResponseFilter.pas +Item_151=..\source\uCEFRunContextMenuCallback.pas +Item_152=..\source\uCEFRunFileDialogCallback.pas +Item_153=..\source\uCEFRunQuickMenuCallback.pas +Item_154=..\source\uCEFSchemeHandlerFactory.pas +Item_155=..\source\uCEFSchemeRegistrar.pas +Item_156=..\source\uCEFScrollView.pas +Item_157=..\source\uCEFScrollViewComponent.pas +Item_158=..\source\uCEFSelectClientCertificateCallback.pas +Item_159=..\source\uCEFSentinel.pas +Item_160=..\source\uCEFServer.pas +Item_161=..\source\uCEFServerComponent.pas +Item_162=..\source\uCEFServerEvents.pas +Item_163=..\source\uCEFServerHandler.pas +Item_164=..\source\uCEFSetCookieCallback.pas +Item_165=..\source\uCEFSharedMemoryRegion.pas +Item_166=..\source\uCEFSharedProcessMessageBuilder.pas +Item_167=..\source\uCEFSslInfo.pas +Item_168=..\source\uCEFSSLStatus.pas +Item_169=..\source\uCEFStreamReader.pas +Item_170=..\source\uCEFStreamWriter.pas +Item_171=..\source\uCEFStringList.pas +Item_172=..\source\uCEFStringMap.pas +Item_173=..\source\uCEFStringMultimap.pas +Item_174=..\source\uCEFStringVisitor.pas +Item_175=..\source\uCEFTask.pas +Item_176=..\source\uCEFTaskManager.pas +Item_177=..\source\uCEFTaskRunner.pas +Item_178=..\source\uCEFTextfield.pas +Item_179=..\source\uCEFTextfieldComponent.pas +Item_180=..\source\uCEFTextfieldDelegate.pas +Item_181=..\source\uCEFThread.pas +Item_182=..\source\uCEFTimerWorkScheduler.pas +Item_183=..\source\uCEFTypes.pas +Item_184=..\source\uCEFUnresponsiveProcessCallback.pas +Item_185=..\source\uCEFUrlRequest.pas +Item_186=..\source\uCEFUrlrequestClient.pas +Item_187=..\source\uCEFUrlRequestClientComponent.pas +Item_188=..\source\uCEFUrlRequestClientEvents.pas +Item_189=..\source\uCEFv8Accessor.pas +Item_190=..\source\uCEFv8ArrayBufferReleaseCallback.pas +Item_191=..\source\uCEFv8Context.pas +Item_192=..\source\uCEFv8Exception.pas +Item_193=..\source\uCEFv8Handler.pas +Item_194=..\source\uCEFv8Interceptor.pas +Item_195=..\source\uCEFv8StackFrame.pas +Item_196=..\source\uCEFv8StackTrace.pas +Item_197=..\source\uCEFv8Value.pas +Item_198=..\source\uCEFValue.pas +Item_199=..\source\uCEFView.pas +Item_200=..\source\uCEFViewComponent.pas +Item_201=..\source\uCEFViewDelegate.pas +Item_202=..\source\uCEFViewsFrameworkEvents.pas +Item_203=..\source\uCEFWaitableEvent.pas +Item_204=..\source\uCEFWinControl.pas +Item_205=..\source\uCEFWindow.pas +Item_206=..\source\uCEFWindowComponent.pas +Item_207=..\source\uCEFWindowDelegate.pas +Item_208=..\source\uCEFWindowInfoWrapper.pas +Item_209=..\source\uCEFWindowParent.pas +Item_210=..\source\uCEFWorkScheduler.pas +Item_211=..\source\uCEFWorkSchedulerQueueThread.pas +Item_212=..\source\uCEFWorkSchedulerThread.pas +Item_213=..\source\uCEFWriteHandler.pas +Item_214=..\source\uCEFX509Certificate.pas +Item_215=..\source\uCEFX509CertPrincipal.pas +Item_216=..\source\uCEFXmlReader.pas +Item_217=..\source\uCEFZipReader.pas [AdditionalFiles] Count=0 diff --git a/packages/cef4delphi_lazarus.lpk b/packages/cef4delphi_lazarus.lpk index 19bb4dd1..2549b096 100644 --- a/packages/cef4delphi_lazarus.lpk +++ b/packages/cef4delphi_lazarus.lpk @@ -21,8 +21,8 @@ - - + + @@ -177,734 +177,726 @@ - - - - - - - - - - + + - - + + - - + + - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + + + + + + + + + + + - + - + - + - - - - - - - - - - - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + + diff --git a/packages/cef4delphi_lazarus.pas b/packages/cef4delphi_lazarus.pas index 1227dcd6..6a52f7c6 100644 --- a/packages/cef4delphi_lazarus.pas +++ b/packages/cef4delphi_lazarus.pas @@ -19,9 +19,8 @@ uses uCEFDisplayHandler, uCEFDomDocument, uCEFDomNode, uCEFDomVisitor, uCEFDownloadHandler, uCEFDownloadImageCallBack, uCEFDownloadItem, uCEFDownloadItemCallback, uCEFDragData, uCEFDragHandler, - uCEFEndTracingCallback, uCEFExtension, uCEFExtensionHandler, - uCEFFileDialogCallback, uCEFFindHandler, uCEFFocusHandler, uCEFFrame, - uCEFGetExtensionResourceCallback, uCEFImage, uCEFInterfaces, + uCEFEndTracingCallback, uCEFFileDialogCallback, uCEFFindHandler, + uCEFFocusHandler, uCEFFrame, uCEFImage, uCEFInterfaces, uCEFJsDialogCallback, uCEFJsDialogHandler, uCEFKeyboardHandler, uCEFLibFunctions, uCEFLifeSpanHandler, uCEFListValue, uCEFLoadHandler, uCEFMenuModel, uCEFMenuModelDelegate, uCEFMiscFunctions, @@ -71,7 +70,7 @@ uses uCEFPermissionPromptCallback, uCEFSharedProcessMessageBuilder, uCEFSharedMemoryRegion, uCEFPreferenceManager, uCEFPreferenceRegistrar, uCEFApplicationEvents, uCEFBrowserBitmap, uCEFComponentIdList, - uCEFWindowInfoWrapper, LazarusPackageIntf; + uCEFWindowInfoWrapper, uCEFTaskManager, LazarusPackageIntf; implementation diff --git a/source/uCEFApplicationCore.pas b/source/uCEFApplicationCore.pas index d4e83982..2fc1edd5 100644 --- a/source/uCEFApplicationCore.pas +++ b/source/uCEFApplicationCore.pas @@ -69,7 +69,6 @@ type FBrowserSubprocessPath : ustring; FFrameworkDirPath : ustring; FMainBundlePath : ustring; // Only used in macOS - FChromeRuntime : boolean; FMultiThreadedMessageLoop : boolean; FExternalMessagePump : boolean; FWindowlessRenderingEnabled : boolean; @@ -77,7 +76,6 @@ type FCache : ustring; FRootCache : ustring; FPersistSessionCookies : boolean; - FPersistUserPreferences : boolean; FUserAgent : ustring; FUserAgentProduct : ustring; FLocale : ustring; @@ -87,7 +85,6 @@ type FJavaScriptFlags : ustring; FResourcesDirPath : ustring; FLocalesDirPath : ustring; - FPackLoadingDisabled : boolean; FRemoteDebuggingPort : integer; FUncaughtExceptionStackSize : integer; FIgnoreCertificateErrors : boolean; @@ -165,6 +162,7 @@ type FUIColorMode : TCefUIColorMode; FDisableHangMonitor : boolean; FHideCrashRestoreBubble : boolean; + FPostQuantumKyber : TCefState; // Fields used during the CEF initialization @@ -284,6 +282,7 @@ type function Load_cef_cookie_capi_h : boolean; function Load_cef_crash_util_h : boolean; function Load_cef_drag_data_capi_h : boolean; + function Load_cef_dump_without_crashing_internal_h : boolean; function Load_cef_file_util_capi_h : boolean; function Load_cef_i18n_util_capi_h : boolean; function Load_cef_image_capi_h : boolean; @@ -306,6 +305,7 @@ type function Load_cef_ssl_info_capi_h : boolean; function Load_cef_stream_capi_h : boolean; function Load_cef_task_capi_h : boolean; + function Load_cef_task_manager_capi_h : boolean; function Load_cef_thread_capi_h : boolean; function Load_cef_trace_capi_h : boolean; function Load_cef_urlrequest_capi_h : boolean; @@ -475,6 +475,32 @@ type /// Removes a component ID from the valid ID list when a component is destroyed. /// procedure RemoveComponentID(aComponentID : integer); + /// + /// DumpWithoutCrashing allows for generating crash dumps with a throttling + /// mechanism, preventing frequent dumps from being generated in a short period + /// of time from the same location. The |function_name|, |file_name|, and + /// |line_number| determine the location of the dump. The + /// |mseconds_between_dumps| is an interval between consecutive dumps in + /// milliseconds from the same location. + /// + /// + /// Returns true if the dump was successfully generated, false otherwise + /// + /// + /// CEF source file: /include/base/cef_dump_without_crashing.h (CefDumpWithoutCrashing) + /// + function DumpWithoutCrashing(mseconds_between_dumps: int64; const function_name, file_name: ustring; line_number: integer): boolean; + /// + /// DumpWithoutCrashingUnthrottled allows for immediate crash dumping without + /// any throttling constraints. + /// + /// + /// Returns true if the dump was successfully generated, false otherwise + /// + /// + /// CEF source file: /include/base/cef_dump_without_crashing.h (CefDumpWithoutCrashingUnthrottled) + /// + function DumpWithoutCrashingUnthrottled : boolean; /// /// Set to true (1) to disable the sandbox for sub-processes. See @@ -509,12 +535,6 @@ type /// property MainBundlePath : ustring read FMainBundlePath write FMainBundlePath; /// - /// Set to true (1) to enable use of the Chrome runtime in CEF. This feature - /// is considered experimental and is not recommended for most users at this - /// time. See issue #2969 for details. - /// - property ChromeRuntime : boolean read FChromeRuntime write FChromeRuntime; - /// /// Set to true (1) to have the browser process message loop run in a separate /// thread. If false (0) then the CefDoMessageLoopWork() function must be /// called from your application message loop. This option is only supported @@ -549,16 +569,16 @@ type /// /// The directory where data for the global browser cache will be stored on /// disk. If this value is non-empty then it must be an absolute path that is - /// either equal to or a child directory of TCefSettings.root_cache_path. If + /// either equal to or a child directory of CefSettings.root_cache_path. If /// this value is empty then browsers will be created in "incognito mode" /// where in-memory caches are used for storage and no profile-specific data /// is persisted to disk (installation-specific data will still be persisted /// in root_cache_path). HTML5 databases such as localStorage will only /// persist across sessions if a cache path is specified. Can be overridden - /// for individual ICefRequestContext instances via the - /// ICefRequestContextSettings.cache_path value. When using the Chrome runtime - /// any child directory value will be ignored and the "default" profile (also - /// a child directory) will be used instead. + /// for individual CefRequestContext instances via the + /// TCefRequestContextSettings.cache_path value. Any child directory value will + /// be ignored and the "default" profile (also a child directory) will be used + /// instead. /// property Cache : ustring read FCache write SetCache; /// @@ -598,15 +618,6 @@ type /// property PersistSessionCookies : Boolean read FPersistSessionCookies write FPersistSessionCookies; /// - /// To persist user preferences as a JSON file in the cache path directory set - /// this value to true (1). A |cache_path| value must also be specified - /// to enable this feature. Also configurable using the - /// "persist-user-preferences" command-line switch. Can be overridden for - /// individual CefRequestContext instances via the - /// TCefRequestContextSettings.persist_user_preferences value. - /// - property PersistUserPreferences : Boolean read FPersistUserPreferences write FPersistUserPreferences; - /// /// Value that will be returned as the User-Agent HTTP header. If empty the /// default User-Agent string will be used. Also configurable using the /// "user-agent" command-line switch. @@ -675,14 +686,6 @@ type /// property LocalesDirPath : ustring read GetLocalesDirPath write SetLocalesDirPath; /// - /// Set to true (1) to disable loading of pack files for resources and - /// locales. A resource bundle handler must be provided for the browser and - /// render processes via ICefApp.GetResourceBundleHandler() if loading of pack - /// files is disabled. Also configurable using the "disable-pack-loading" - /// command- line switch. - /// - property PackLoadingDisabled : Boolean read FPackLoadingDisabled write FPackLoadingDisabled; - /// /// Set to a value between 1024 and 65535 to enable remote debugging on the /// specified port. Also configurable using the "remote-debugging-port" /// command-line switch. Specifying 0 via the command-line switch will result @@ -744,7 +747,7 @@ type /// policies. On Windows, this is a registry key like /// "SOFTWARE\\Policies\\Google\\Chrome". On MacOS, this is a bundle ID like /// "com.google.Chrome". On Linux, this is an absolute directory path like - /// "/etc/opt/chrome/policies". Only supported with the Chrome runtime. See + /// "/etc/opt/chrome/policies". Only supported with Chrome style. See /// https://support.google.com/chrome/a/answer/9037717 for details. /// Chrome Browser Cloud Management integration, when enabled via the /// "enable-chrome-browser-cloud-management" command-line flag, will also use @@ -756,8 +759,8 @@ type /// Specify an ID for an ICON resource that can be loaded from the main /// executable and used when creating default Chrome windows such as DevTools /// and Task Manager. If unspecified the default Chromium ICON (IDR_MAINFRAME - /// [101]) will be loaded from libcef.dll. Only supported with the Chrome - /// runtime on Windows. + /// [101]) will be loaded from libcef.dll. Only supported with Chrome style on + /// Windows. /// property ChromeAppIconId : integer read FChromeAppIconId write FChromeAppIconId; {$IF DEFINED(OS_POSIX) AND NOT(DEFINED(ANDROID))} @@ -940,8 +943,7 @@ type /// property DisableSiteIsolationTrials : boolean read FDisableSiteIsolationTrials write FDisableSiteIsolationTrials; /// - /// Delegate all login requests to the client GetAuthCredentials - /// callback when using the Chrome runtime. + /// Delegate all login requests to the client GetAuthCredentials callback. /// /// /// Uses the following command line switch: --disable-chrome-login-prompt @@ -1258,6 +1260,10 @@ type /// property HideCrashRestoreBubble : boolean read FHideCrashRestoreBubble write FHideCrashRestoreBubble; /// + /// This option enables a combination of X25519 and Kyber in TLS 1.3. + /// + property TLS13HybridizedKyberSupport : TCefState read FPostQuantumKyber write FPostQuantumKyber; + /// /// Ignores certificate-related errors. /// /// @@ -1467,26 +1473,22 @@ type /// property OnRegCustomSchemes : TOnRegisterCustomSchemesEvent read FOnRegisterCustomSchemes write FOnRegisterCustomSchemes; /// - /// Provides an opportunity to register custom preferences prior to global and - /// request context initialization. - /// - /// If |type| is CEF_PREFERENCES_TYPE_GLOBAL the registered preferences can be + /// Provides an opportunity to register custom preferences prior to global and + /// request context initialization. + /// If |type| is CEF_PREFERENCES_TYPE_GLOBAL the registered preferences can be /// accessed via ICefPreferenceManager.GetGlobalPreferences after /// OnContextInitialized is called. Global preferences are registered a single - /// time at application startup. See related TCefSettings.cache_path and - /// TCefSettings.persist_user_preferences configuration. - /// - /// If |type| is CEF_PREFERENCES_TYPE_REQUEST_CONTEXT the preferences can be + /// time at application startup. See related TCefSettings.cache_path + /// configuration. + /// If |type| is CEF_PREFERENCES_TYPE_REQUEST_CONTEXT the preferences can be /// accessed via the ICefRequestContext after /// ICefRequestContextHandler.OnRequestContextInitialized is called. /// Request context preferences are registered each time a new /// ICefRequestContext is created. It is intended but not required that all /// request contexts have the same registered preferences. See related - /// TCefRequestContextSettings.cache_path and - /// TCefRequestContextSettings.persist_user_preferences configuration. - /// - /// Do not keep a reference to the |registrar| object. This function is called - /// on the browser process UI thread. + /// TCefRequestContextSettings.cache_path configuration. + /// Do not keep a reference to the |registrar| object. This function is called + /// on the browser process UI thread. /// /// /// CEF source file: /include/capi/cef_browser_process_handler_capi.h (cef_browser_process_handler_t) @@ -1553,8 +1555,8 @@ type /// (TCefBrowser object). If null is returned the TCefBrowser will be /// unmanaged (no callbacks will be executed for that TCefBrowser) and /// application shutdown will be blocked until the browser window is closed - /// manually. This function is currently only used with the Chrome runtime - /// when creating new browser windows via Chrome UI. + /// manually. This function is currently only used with Chrome style when + /// creating new browser windows via Chrome UI. /// /// /// CEF source file: /include/capi/cef_browser_process_handler_capi.h (cef_browser_process_handler_t) @@ -1564,8 +1566,8 @@ type /// Return the default handler for use with a new user or incognito profile /// (TCefRequestContext object). If null is returned the /// TCefRequestContext will be unmanaged (no callbacks will be executed for - /// that TCefRequestContext). This function is currently only used with the - /// Chrome runtime when creating new browser windows via Chrome UI. + /// that TCefRequestContext). This function is currently only used with + /// Chrome style when creating new browser windows via Chrome UI. /// /// /// CEF source file: /include/capi/cef_browser_process_handler_capi.h (cef_browser_process_handler_t) @@ -1831,7 +1833,6 @@ begin FBrowserSubprocessPath := ''; FFrameworkDirPath := ''; FMainBundlePath := {$IFDEF MACOSX}GetModulePath{$ELSE}''{$ENDIF}; - FChromeRuntime := False; FMultiThreadedMessageLoop := True; FExternalMessagePump := False; FWindowlessRenderingEnabled := False; @@ -1839,7 +1840,6 @@ begin FCache := ''; FRootCache := ''; FPersistSessionCookies := False; - FPersistUserPreferences := False; FUserAgent := ''; FUserAgentProduct := ''; FLocale := ''; @@ -1849,7 +1849,6 @@ begin FJavaScriptFlags := ''; FResourcesDirPath := ''; FLocalesDirPath := ''; - FPackLoadingDisabled := False; FRemoteDebuggingPort := 0; FUncaughtExceptionStackSize := 0; FIgnoreCertificateErrors := False; @@ -1927,6 +1926,7 @@ begin FUIColorMode := uicmSystemDefault; FDisableHangMonitor := False; FHideCrashRestoreBubble := True; + FPostQuantumKyber := STATE_DEFAULT; // Fields used during the CEF initialization FWindowsSandboxInfo := nil; @@ -2726,6 +2726,26 @@ begin FComponentIDList.RemoveID(aComponentID); end; +function TCefApplicationCore.DumpWithoutCrashing(mseconds_between_dumps: int64; const function_name, file_name: ustring; line_number: integer): boolean; +var + TempFunctionName, TempFileName : AnsiString; +begin + Result := False; + + if (FStatus = asInitialized) then + begin + TempFunctionName := AnsiString(function_name); + TempFileName := AnsiString(file_name); + Result := (cef_dump_without_crashing(mseconds_between_dumps, @TempFunctionName[1], @TempFileName[1], line_number) <> 0); + end; +end; + +function TCefApplicationCore.DumpWithoutCrashingUnthrottled : boolean; +begin + Result := (FStatus = asInitialized) and + (cef_dump_without_crashing_unthrottled() <> 0); +end; + procedure TCefApplicationCore.ShutDown; begin try @@ -2818,7 +2838,6 @@ begin aSettings.browser_subprocess_path := CefString(FBrowserSubprocessPath); aSettings.framework_dir_path := CefString(FFrameworkDirPath); aSettings.main_bundle_path := CefString(FMainBundlePath); - aSettings.chrome_runtime := Ord(FChromeRuntime); aSettings.multi_threaded_message_loop := Ord(FMultiThreadedMessageLoop); aSettings.external_message_pump := Ord(FExternalMessagePump); aSettings.windowless_rendering_enabled := Ord(FWindowlessRenderingEnabled); @@ -2826,7 +2845,6 @@ begin aSettings.cache_path := CefString(FCache); aSettings.root_cache_path := CefString(FRootCache); aSettings.persist_session_cookies := Ord(FPersistSessionCookies); - aSettings.persist_user_preferences := Ord(FPersistUserPreferences); aSettings.user_agent := CefString(FUserAgent); aSettings.user_agent_product := CefString(FUserAgentProduct); aSettings.locale := CefString(FLocale); @@ -2836,7 +2854,6 @@ begin aSettings.javascript_flags := CefString(FJavaScriptFlags); aSettings.resources_dir_path := CefString(ResourcesDirPath); aSettings.locales_dir_path := CefString(LocalesDirPath); - aSettings.pack_loading_disabled := Ord(FPackLoadingDisabled); aSettings.remote_debugging_port := FRemoteDebuggingPort; aSettings.uncaught_exception_stack_size := FUncaughtExceptionStackSize; aSettings.background_color := FBackgroundColor; @@ -3422,6 +3439,11 @@ begin end; end; + case FPostQuantumKyber of + STATE_ENABLED : ReplaceSwitch(aKeys, aValues, '--enable-features', 'PostQuantumKyber'); + STATE_DISABLED : ReplaceSwitch(aKeys, aValues, '--disable-features', 'PostQuantumKyber'); + end; + // The list of features you can enable is here : // https://chromium.googlesource.com/chromium/src/+/master/chrome/common/chrome_features.cc // https://source.chromium.org/chromium/chromium/src/+/main:content/public/common/content_features.cc @@ -3803,6 +3825,7 @@ begin Load_cef_cookie_capi_h and Load_cef_crash_util_h and Load_cef_drag_data_capi_h and + Load_cef_dump_without_crashing_internal_h and Load_cef_file_util_capi_h and Load_cef_i18n_util_capi_h and Load_cef_image_capi_h and @@ -3825,6 +3848,7 @@ begin Load_cef_ssl_info_capi_h and Load_cef_stream_capi_h and Load_cef_task_capi_h and + Load_cef_task_manager_capi_h and Load_cef_thread_capi_h and Load_cef_trace_capi_h and Load_cef_urlrequest_capi_h and @@ -3949,6 +3973,15 @@ begin Result := assigned(cef_drag_data_create); end; +function TCefApplicationCore.Load_cef_dump_without_crashing_internal_h : boolean; +begin + {$IFDEF FPC}Pointer({$ENDIF}cef_dump_without_crashing{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_dump_without_crashing'); + {$IFDEF FPC}Pointer({$ENDIF}cef_dump_without_crashing_unthrottled{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_dump_without_crashing_unthrottled'); + + Result := assigned(cef_dump_without_crashing) and + assigned(cef_dump_without_crashing_unthrottled); +end; + function TCefApplicationCore.Load_cef_file_util_capi_h : boolean; begin {$IFDEF FPC}Pointer({$ENDIF}cef_create_directory{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_create_directory'); @@ -4173,6 +4206,13 @@ begin assigned(cef_post_delayed_task); end; +function TCefApplicationCore.Load_cef_task_manager_capi_h : boolean; +begin + {$IFDEF FPC}Pointer({$ENDIF}cef_task_manager_get{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_task_manager_get'); + + Result := assigned(cef_task_manager_get); +end; + function TCefApplicationCore.Load_cef_thread_capi_h : boolean; begin {$IFDEF FPC}Pointer({$ENDIF}cef_thread_create{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_thread_create'); @@ -4200,24 +4240,25 @@ end; function TCefApplicationCore.Load_cef_v8_capi_h : boolean; begin - {$IFDEF FPC}Pointer({$ENDIF}cef_v8context_get_current_context{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8context_get_current_context'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8context_get_entered_context{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8context_get_entered_context'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8context_in_context{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8context_in_context'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_undefined{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_undefined'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_null{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_null'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_bool{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_bool'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_int{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_int'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_uint{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_uint'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_double{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_double'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_date{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_date'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_string{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_string'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_object{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_object'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_array{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_array'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_array_buffer{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_array_buffer'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_function{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_function'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_promise{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_promise'); - {$IFDEF FPC}Pointer({$ENDIF}cef_v8stack_trace_get_current{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8stack_trace_get_current'); - {$IFDEF FPC}Pointer({$ENDIF}cef_register_extension{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_register_extension'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8context_get_current_context{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8context_get_current_context'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8context_get_entered_context{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8context_get_entered_context'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8context_in_context{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8context_in_context'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_undefined{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_undefined'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_null{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_null'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_bool{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_bool'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_int{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_int'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_uint{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_uint'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_double{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_double'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_date{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_date'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_string{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_string'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_object{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_object'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_array{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_array'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_array_buffer{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_array_buffer'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_array_buffer_with_copy{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_array_buffer_with_copy'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_function{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_function'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8value_create_promise{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8value_create_promise'); + {$IFDEF FPC}Pointer({$ENDIF}cef_v8stack_trace_get_current{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_v8stack_trace_get_current'); + {$IFDEF FPC}Pointer({$ENDIF}cef_register_extension{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_register_extension'); Result := assigned(cef_v8context_get_current_context) and assigned(cef_v8context_get_entered_context) and @@ -4233,6 +4274,7 @@ begin assigned(cef_v8value_create_object) and assigned(cef_v8value_create_array) and assigned(cef_v8value_create_array_buffer) and + assigned(cef_v8value_create_array_buffer_with_copy) and assigned(cef_v8value_create_function) and assigned(cef_v8value_create_promise) and assigned(cef_v8stack_trace_get_current) and diff --git a/source/uCEFBrowser.pas b/source/uCEFBrowser.pas index 4db4b288..bfdd9e00 100644 --- a/source/uCEFBrowser.pas +++ b/source/uCEFBrowser.pas @@ -112,8 +112,6 @@ type function GetVisibleNavigationEntry : ICefNavigationEntry; procedure SetAccessibilityState(accessibilityState: TCefState); procedure SetAutoResizeEnabled(enabled: boolean; const min_size, max_size: PCefSize); - function GetExtension : ICefExtension; - function IsBackgroundHost : boolean; procedure SetAudioMuted(mute: boolean); function IsAudioMuted : boolean; function IsFullscreen : boolean; @@ -132,7 +130,7 @@ implementation uses uCEFMiscFunctions, uCEFLibFunctions, uCEFDownloadImageCallBack, uCEFFrame, uCEFPDFPrintCallback, uCEFRunFileDialogCallback, uCEFRequestContext, uCEFNavigationEntryVisitor, uCEFNavigationEntry, - uCEFExtension, uCEFStringList, uCEFRegistration, uCEFClient; + uCEFStringList, uCEFRegistration, uCEFClient; // TCefBrowserRef @@ -335,16 +333,6 @@ begin PCefBrowserHost(FData)^.set_auto_resize_enabled(PCefBrowserHost(FData), Ord(enabled), min_size, max_size); end; -function TCefBrowserHostRef.GetExtension : ICefExtension; -begin - Result := TCefExtensionRef.UnWrap(PCefBrowserHost(FData)^.get_extension(PCefBrowserHost(FData))); -end; - -function TCefBrowserHostRef.IsBackgroundHost : boolean; -begin - Result := PCefBrowserHost(FData)^.is_background_host(PCefBrowserHost(FData)) <> 0; -end; - procedure TCefBrowserHostRef.SetAudioMuted(mute: boolean); begin PCefBrowserHost(FData)^.set_audio_muted(PCefBrowserHost(FData), Ord(mute)); diff --git a/source/uCEFBrowserView.pas b/source/uCEFBrowserView.pas index a57b8a10..ed72a0a0 100644 --- a/source/uCEFBrowserView.pas +++ b/source/uCEFBrowserView.pas @@ -36,7 +36,7 @@ type function GetBrowser : ICefBrowser; /// /// Returns the Chrome toolbar associated with this BrowserView. Only - /// supported when using the Chrome runtime. The ICefBrowserViewDelegate.GetChromeToolbarType + /// supported when using Chrome style. The ICefBrowserViewDelegate.GetChromeToolbarType /// function must return a value other than /// CEF_CTT_NONE and the toolbar will not be available until after this /// BrowserView is added to a ICefWindow and @@ -44,13 +44,18 @@ type /// function GetChromeToolbar : ICefView; /// - /// Sets whether accelerators registered with ICefWindow.SetAccelerator are - /// triggered before or after the event is sent to the ICefBrowser. If - /// |prefer_accelerators| is true (1) then the matching accelerator will be - /// triggered immediately and the event will not be sent to the ICefBrowser. - /// If |prefer_accelerators| is false (0) then the matching accelerator will - /// only be triggered if the event is not handled by web content or by - /// ICefKeyboardHandler. The default value is false (0). + /// Sets whether normal priority accelerators are first forwarded to the web + /// content (`keydown` event handler) or ICefKeyboardHandler. Normal priority + /// accelerators can be registered via ICefWindow.SetAccelerator (with + /// |high_priority|=false) or internally for standard accelerators supported + /// by Chrome style. If |prefer_accelerators| is true then the matching + /// accelerator will be triggered immediately (calling + /// ICefWindowDelegate.OnAccelerator or ICefCommandHandler.OnChromeCommand + /// respectively) and the event will not be forwarded to the web content or + /// ICefKeyboardHandler first. If |prefer_accelerators| is false then the + /// matching accelerator will only be triggered if the event is not handled by + /// web content (`keydown` event handler that calls `event.preventDefault()`) + /// or by ICefKeyboardHandler. The default value is false. /// procedure SetPreferAccelerators(prefer_accelerators: boolean); /// diff --git a/source/uCEFBrowserViewComponent.pas b/source/uCEFBrowserViewComponent.pas index 474dab06..f02a20e0 100644 --- a/source/uCEFBrowserViewComponent.pas +++ b/source/uCEFBrowserViewComponent.pas @@ -25,7 +25,7 @@ uses type {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF} /// - /// Component hosting a ICefBrowserView instance. Used in Chrome runtime mode only. + /// Component hosting a ICefBrowserView instance. /// TCEFBrowserViewComponent = class(TCEFViewComponent, ICefBrowserViewDelegateEvents) protected @@ -49,6 +49,7 @@ type function GetAsView : ICefView; override; function GetAsBrowserView : ICefBrowserView; override; function GetBrowser : ICefBrowser; + function GetChromeToolbar : ICefView; function GetRuntimeStyle : TCefRuntimeStyle; // ICefBrowserViewDelegateEvents @@ -75,13 +76,18 @@ type /// function GetForBrowser(const browser: ICefBrowser): boolean; /// - /// Sets whether accelerators registered with ICefWindow.SetAccelerator are - /// triggered before or after the event is sent to the ICefBrowser. If - /// |prefer_accelerators| is true (1) then the matching accelerator will be - /// triggered immediately and the event will not be sent to the ICefBrowser. - /// If |prefer_accelerators| is false (0) then the matching accelerator will - /// only be triggered if the event is not handled by web content or by - /// ICefKeyboardHandler. The default value is false (0). + /// Sets whether normal priority accelerators are first forwarded to the web + /// content (`keydown` event handler) or ICefKeyboardHandler. Normal priority + /// accelerators can be registered via ICefWindow.SetAccelerator (with + /// |high_priority|=false) or internally for standard accelerators supported + /// by Chrome style. If |prefer_accelerators| is true then the matching + /// accelerator will be triggered immediately (calling + /// ICefWindowDelegate.OnAccelerator or ICefCommandHandler.OnChromeCommand + /// respectively) and the event will not be forwarded to the web content or + /// ICefKeyboardHandler first. If |prefer_accelerators| is false then the + /// matching accelerator will only be triggered if the event is not handled by + /// web content (`keydown` event handler that calls `event.preventDefault()`) + /// or by ICefKeyboardHandler. The default value is false. /// procedure SetPreferAccelerators(prefer_accelerators: boolean); @@ -95,6 +101,15 @@ type /// property BrowserView : ICefBrowserView read FBrowserView; /// + /// Returns the Chrome toolbar associated with this BrowserView. Only + /// supported when using Chrome style. The ICefBrowserViewDelegate.GetChromeToolbarType + /// function must return a value other than + /// CEF_CTT_NONE and the toolbar will not be available until after this + /// BrowserView is added to a ICefWindow and + /// ICefViewDelegate.OnWindowChanged() has been called. + /// + property ChromeToolbar : ICefView read GetChromeToolbar; + /// /// Returns the runtime style for this BrowserView (ALLOY or CHROME). See /// TCefRuntimeStyle documentation for details. /// @@ -148,8 +163,8 @@ type /// /// Called when |browser_view| receives a gesture command. Return true (1) to /// handle (or disable) a |gesture_command| or false (0) to propagate the - /// gesture to the browser for default handling. With the Chrome runtime these - /// commands can also be handled via cef_command_handler_t::OnChromeCommand. + /// gesture to the browser for default handling. With Chrome style these + /// commands can also be handled via ICefCommandHandler.OnChromeCommand. /// property OnGestureCommand : TOnGestureCommandEvent read FOnGestureCommand write FOnGestureCommand; /// @@ -274,6 +289,14 @@ begin Result := nil; end; +function TCEFBrowserViewComponent.GetChromeToolbar : ICefView; +begin + if Initialized then + Result := FBrowserView.GetChromeToolbar + else + Result := nil; +end; + function TCEFBrowserViewComponent.GetRuntimeStyle : TCefRuntimeStyle; begin if Initialized then diff --git a/source/uCEFBrowserViewDelegate.pas b/source/uCEFBrowserViewDelegate.pas index 85befc4d..59ad8bd2 100644 --- a/source/uCEFBrowserViewDelegate.pas +++ b/source/uCEFBrowserViewDelegate.pas @@ -95,8 +95,8 @@ type /// /// Called when |browser_view| receives a gesture command. Return true (1) to /// handle (or disable) a |gesture_command| or false (0) to propagate the - /// gesture to the browser for default handling. With the Chrome runtime these - /// commands can also be handled via cef_command_handler_t::OnChromeCommand. + /// gesture to the browser for default handling. With Chrome style these + /// commands can also be handled via ICefCommandHandler.OnChromeCommand. /// procedure OnGestureCommand(const browser_view: ICefBrowserView; gesture_command: TCefGestureCommand; var aResult : boolean); virtual; /// diff --git a/source/uCEFChromiumCore.pas b/source/uCEFChromiumCore.pas index 6d713011..9af77882 100644 --- a/source/uCEFChromiumCore.pas +++ b/source/uCEFChromiumCore.pas @@ -55,7 +55,6 @@ type FMediaObserverReg : ICefRegistration; FDevToolsMsgObserver : ICefDevToolsMessageObserver; FDevToolsMsgObserverReg : ICefRegistration; - FExtensionHandler : ICefExtensionHandler; FDefaultUrl : ustring; FOptions : TChromiumOptions; FFontOptions : TChromiumFontOptions; @@ -273,16 +272,6 @@ type FOnDevToolsAgentAttached : TOnDevToolsAgentAttachedEvent; FOnDevToolsAgentDetached : TOnDevToolsAgentDetachedEvent; - // ICefExtensionHandler - FOnExtensionLoadFailed : TOnExtensionLoadFailedEvent; - FOnExtensionLoaded : TOnExtensionLoadedEvent; - FOnExtensionUnloaded : TOnExtensionUnloadedEvent; - FOnExtensionBeforeBackgroundBrowser : TOnBeforeBackgroundBrowserEvent; - FOnExtensionBeforeBrowser : TOnBeforeBrowserEvent; - FOnExtensionGetActiveBrowser : TOnGetActiveBrowserEvent; - FOnExtensionCanAccessBrowser : TOnCanAccessBrowserEvent; - FOnExtensionGetExtensionResource : TOnGetExtensionResourceEvent; - // ICefPrintHandler FOnPrintStart : TOnPrintStartEvent; FOnPrintSettings : TOnPrintSettingsEvent; @@ -444,13 +433,11 @@ type procedure DestroyResourceRequestHandler; procedure DestroyMediaObserver; procedure DestroyDevToolsMsgObserver; - procedure DestroyExtensionHandler; procedure DestroyAllHandlersAndObservers; procedure CreateResourceRequestHandler; virtual; procedure CreateMediaObserver; virtual; procedure CreateDevToolsMsgObserver; virtual; - procedure CreateExtensionHandler; virtual; procedure CreateRequestContextHandler; virtual; procedure CreateOptionsClasses; virtual; procedure CreateSyncObjects; virtual; @@ -648,16 +635,6 @@ type procedure doOnDevToolsAgentAttached(const browser: ICefBrowser); virtual; procedure doOnDevToolsAgentDetached(const browser: ICefBrowser); virtual; - // ICefExtensionHandler - procedure doOnExtensionLoadFailed(result: TCefErrorcode); - procedure doOnExtensionLoaded(const extension: ICefExtension); - procedure doOnExtensionUnloaded(const extension: ICefExtension); - function doOnExtensionBeforeBackgroundBrowser(const extension: ICefExtension; const url: ustring; var client: ICefClient; var settings: TCefBrowserSettings) : boolean; - function doOnExtensionBeforeBrowser(const extension: ICefExtension; const browser, active_browser: ICefBrowser; index: Integer; const url: ustring; active: boolean; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings) : boolean; - procedure doOnExtensionGetActiveBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; var aRsltBrowser: ICefBrowser); - function doOnExtensionCanAccessBrowser(const extension: ICefExtension; const browser: ICefBrowser; include_incognito: boolean; const target_browser: ICefBrowser): boolean; - function doOnExtensionGetExtensionResource(const extension: ICefExtension; const browser: ICefBrowser; const file_: ustring; const callback: ICefGetExtensionResourceCallback): boolean; - // ICefPrintHandler procedure doOnPrintStart(const browser: ICefBrowser); procedure doOnPrintSettings(const browser: ICefBrowser; const settings: ICefPrintSettings; getDefaults: boolean); @@ -735,7 +712,6 @@ type function MustCreateResourceRequestHandler : boolean; virtual; function MustCreateCookieAccessFilter : boolean; virtual; function MustCreateMediaObserver : boolean; virtual; - function MustCreateExtensionHandler : boolean; virtual; function MustCreatePrintHandler : boolean; virtual; function MustCreateFrameHandler : boolean; virtual; function MustCreatePermissionHandler : boolean; virtual; @@ -1342,12 +1318,12 @@ type procedure Invalidate(type_: TCefPaintElementType = PET_VIEW); /// /// Requests the renderer to exit browser fullscreen. In most cases exiting - /// window fullscreen should also exit browser fullscreen. With the Alloy - /// runtime this function should be called in response to a user action such - /// as clicking the green traffic light button on MacOS + /// window fullscreen should also exit browser fullscreen. With Alloy style + /// this function should be called in response to a user action such as + /// clicking the green traffic light button on MacOS /// (ICefWindowDelegate.OnWindowFullscreenTransition callback) or pressing - /// the "ESC" key (ICefKeyboardHandler.OnPreKeyEvent callback). With the - /// Chrome runtime these standard exit actions are handled internally but + /// the "ESC" key (ICefKeyboardHandler.OnPreKeyEvent callback). With + /// Chrome style these standard exit actions are handled internally but /// new/additional user actions can use this function. Set |will_cause_resize| /// to true (1) if exiting browser fullscreen will cause a view resize. /// @@ -1355,7 +1331,7 @@ type /// /// Returns true (1) if a Chrome command is supported and enabled. Values for /// |command_id| can be found in the cef_command_ids.h file. This function can - /// only be called on the UI thread. Only used with the Chrome runtime. + /// only be called on the UI thread. Only used with Chrome style. /// /// /// See the IDC_* constants in uCEFConstants.pas for all the |command_id| values. @@ -1365,7 +1341,7 @@ type /// /// Execute a Chrome command. Values for |command_id| can be found in the /// cef_command_ids.h file. |disposition| provides information about the - /// intended command target. Only used with the Chrome runtime. + /// intended command target. Only used with Chrome style. /// /// /// See the IDC_* constants in uCEFConstants.pas for all the |command_id| values. @@ -1643,92 +1619,6 @@ type /// procedure GetDeviceInfo(const aMediaSink: ICefMediaSink); /// - /// Load an extension. - /// If extension resources will be read from disk using the default load - /// implementation then |root_directory| should be the absolute path to the - /// extension resources directory and |manifest| should be NULL. If extension - /// resources will be provided by the client (e.g. via cef_request_handler_t - /// and/or cef_extension_handler_t) then |root_directory| should be a path - /// component unique to the extension (if not absolute this will be internally - /// prefixed with the PK_DIR_RESOURCES path) and |manifest| should contain the - /// contents that would otherwise be read from the "manifest.json" file on - /// disk. - /// The loaded extension will be accessible in all contexts sharing the same - /// storage (HasExtension returns true (1)). However, only the context on - /// which this function was called is considered the loader (DidLoadExtension - /// returns true (1)) and only the loader will receive - /// TCustomRequestContextHandler callbacks for the extension. - /// TCustomExtensionHandler.OnExtensionLoaded will be called on load success - /// or TCustomExtensionHandler.OnExtensionLoadFailed will be called on load - /// failure. - /// If the extension specifies a background script via the "background" - /// manifest key then TCustomExtensionHandler.OnBeforeBackgroundBrowser will - /// be called to create the background browser. See that function for - /// additional information about background scripts. - /// For visible extension views the client application should evaluate the - /// manifest to determine the correct extension URL to load and then pass that - /// URL to the ICefBrowserHost.CreateBrowser* function after the extension - /// has loaded. For example, the client can look for the "browser_action" - /// manifest key as documented at - /// https://developer.chrome.com/extensions/browserAction. Extension URLs take - /// the form "chrome-extension:///". - /// Browsers that host extensions differ from normal browsers as follows: - /// - /// - Can access chrome.* JavaScript APIs if allowed by the manifest. Visit - /// chrome://extensions-support for the list of extension APIs currently - /// supported by CEF. - /// - Main frame navigation to non-extension content is blocked. - /// - Pinch-zooming is disabled. - /// - ICefBrowserHost.GetExtension returns the hosted extension. - /// - ICefBrowserHost.IsBackgroundHost returns true for background hosts. - /// - /// See https://developer.chrome.com/extensions for extension implementation - /// and usage documentation. - /// - /// - /// WARNING: This function is deprecated and will be removed in ~M127. - /// - function LoadExtension(const root_directory: ustring; const manifest: ICefDictionaryValue = nil; const handler: ICefExtensionHandler = nil; const requestContext : ICefRequestContext = nil) : boolean; deprecated; - /// - /// Returns true (1) if this context was used to load the extension identified - /// by |extension_id|. Other contexts sharing the same storage will also have - /// access to the extension (see HasExtension). This function must be called - /// on the browser process UI thread. - /// - /// - /// WARNING: This function is deprecated and will be removed in ~M127. - /// - function DidLoadExtension(const extension_id: ustring): boolean; deprecated; - /// - /// Returns true (1) if this context has access to the extension identified by - /// |extension_id|. This may not be the context that was used to load the - /// extension (see DidLoadExtension). This function must be called on the - /// browser process UI thread. - /// - /// - /// WARNING: This function is deprecated and will be removed in ~M127. - /// - function HasExtension(const extension_id: ustring): boolean; deprecated; - /// - /// Retrieve the list of all extensions that this context has access to (see - /// HasExtension). |extension_ids| will be populated with the list of - /// extension ID values. Returns true (1) on success. This function must be - /// called on the browser process UI thread. - /// - /// - /// WARNING: This function is deprecated and will be removed in ~M127. - /// - function GetExtensions(const extension_ids: TStringList): boolean; deprecated; - /// - /// Returns the extension matching |extension_id| or NULL if no matching - /// extension is accessible in this context (see HasExtension). This function - /// must be called on the browser process UI thread. - /// - /// - /// WARNING: This function is deprecated and will be removed in ~M127. - /// - function GetExtension(const extension_id: ustring): ICefExtension; deprecated; - /// /// Returns the current value for |content_type| that applies for the /// specified URLs. If both URLs are NULL the default value will be returned. /// Returns nullptr if no value is configured. Must be called on the browser @@ -1875,10 +1765,6 @@ type /// property DevToolsMsgObserverReg : ICefRegistration read FDevToolsMsgObserverReg; /// - /// Returns a ICefExtensionHandler instance used by the selected browser. - /// - property ExtensionHandler : ICefExtensionHandler read FExtensionHandler; - /// /// Returns the value of GlobalCEFApp.MultiThreadedMessageLoop. /// property MultithreadApp : boolean read GetMultithreadApp; @@ -1981,8 +1867,7 @@ type property ZoomLevel : double read GetZoomLevel write SetZoomLevel; /// /// Get the default zoom level. This value will be 0.0 by default but can be - /// configured with the Chrome runtime. This function can only be called on - /// the CEF UI thread. + /// configured. This function can only be called on the UI thread. /// property DefaultZoomLevel : double read GetDefaultZoomLevel; /// @@ -2208,7 +2093,7 @@ type /// property MaxConnectionsPerProxy : integer read FMaxConnectionsPerProxy write SetMaxConnectionsPerProxy; /// - /// Enable the file download bubble when using the Chrome runtime. + /// Enable the file download bubble when using Chrome style. /// property DownloadBubble : TCefState read FDownloadBubble write FDownloadBubble; /// @@ -2545,13 +2430,12 @@ type /// Called when web content in the page has toggled fullscreen mode. If /// |fullscreen| is true (1) the content will automatically be sized to fill /// the browser content area. If |fullscreen| is false (0) the content will - /// automatically return to its original size and position. With the Alloy - /// runtime the client is responsible for triggering the fullscreen transition - /// (for example, by calling ICefWindow.SetFullscreen when using Views). - /// With the Chrome runtime the fullscreen transition will be triggered - /// automatically. The ICefWindowDelegate.OnWindowFullscreenTransition - /// function will be called during the fullscreen transition for notification - /// purposes. + /// automatically return to its original size and position. With Alloy style + /// the client is responsible for triggering the fullscreen transition (for + /// example, by calling ICefWindow.SetFullscreen when using Views). With + /// Chrome style the fullscreen transition will be triggered automatically. + /// The ICefWindowDelegate.OnWindowFullscreenTransition function will be + /// called during the fullscreen transition for notification purposes. /// /// /// This event will be called on the browser process CEF UI thread. @@ -2765,7 +2649,7 @@ type /// Views-hosted source browsers will create Views-hosted DevTools popups /// unless |use_default_window| is set to to true (1). DevTools popups can be /// blocked by returning true (1) from ICefCommandHandler.OnChromeCommand - /// for IDC_DEV_TOOLS. Only used with the Chrome runtime. + /// for IDC_DEV_TOOLS. Only used with Chrome style. /// /// /// This event will be called on the browser process CEF UI thread. @@ -2994,20 +2878,19 @@ type /// Called on the browser process UI thread when the render process is /// unresponsive as indicated by a lack of input event processing for at least /// 15 seconds. Return false (0) for the default behavior which is an - /// indefinite wait with the Alloy runtime or display of the "Page - /// unresponsive" dialog with the Chrome runtime. Return true (1) and don't - /// execute the callback for an indefinite wait without display of the Chrome - /// runtime dialog. Return true (1) and call - /// ICefUnresponsiveProcessCallback.Wait either in this function or at a - /// later time to reset the wait timer, potentially triggering another call to - /// this function if the process remains unresponsive. Return true (1) and - /// call ICefUnresponsiveProcessCallback.Terminate either in this - /// function or at a later time to terminate the unresponsive process, - /// resulting in a call to OnRenderProcessTerminated. - /// OnRenderProcessResponsive will be called if the process becomes responsive - /// after this function is called. This functionality depends on the hang - /// monitor which can be disabled by passing the `--disable-hang-monitor` - /// command-line flag or setting GlobalCEFApp.DisableHangMonitor to True. + /// indefinite wait with Alloy style or display of the "Page unresponsive" + /// dialog with Chrome style. Return true (1) and don't execute the callback + /// for an indefinite wait without display of the Chrome style dialog. Return + /// true (1) and call ICefUnresponsiveProcessCallback.Wait either in this + /// function or at a later time to reset the wait timer, potentially + /// triggering another call to this function if the process remains + /// unresponsive. Return true (1) and call + /// ICefUnresponsiveProcessCallback.Terminate either in this function or + /// at a later time to terminate the unresponsive process, resulting in a call + /// to OnRenderProcessTerminated. OnRenderProcessResponsive will be called if + /// the process becomes responsive after this function is called. This + /// functionality depends on the hang monitor which can be disabled by passing + /// the `--disable-hang-monitor` command-line flag. /// /// /// This event will be called on the browser process CEF UI thread. @@ -3717,123 +3600,6 @@ type /// CEF source file: /include/capi/cef_devtools_message_observer_capi.h (cef_dev_tools_message_observer_t) /// property OnDevToolsAgentDetached : TOnDevToolsAgentDetachedEvent read FOnDevToolsAgentDetached write FOnDevToolsAgentDetached; - /// - /// Called if the ICefRequestContext.LoadExtension request fails. |result| - /// will be the error code. - /// - /// - /// WARNING: This function is deprecated and will be removed in ~M127. - /// This event will be called on the browser process CEF UI thread. - /// CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t) - /// - property OnExtensionLoadFailed : TOnExtensionLoadFailedEvent read FOnExtensionLoadFailed write FOnExtensionLoadFailed; - /// - /// Called if the ICefRequestContext.LoadExtension request succeeds. - /// |extension| is the loaded extension. - /// - /// - /// WARNING: This function is deprecated and will be removed in ~M127. - /// This event will be called on the browser process CEF UI thread. - /// CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t) - /// - property OnExtensionLoaded : TOnExtensionLoadedEvent read FOnExtensionLoaded write FOnExtensionLoaded; - /// - /// Called after the ICefExtension.Unload request has completed. - /// - /// - /// WARNING: This function is deprecated and will be removed in ~M127. - /// This event will be called on the browser process CEF UI thread. - /// CEF source file: /include/capi/cef_extension_handler_capi.h (cef_extension_handler_t) - /// - property OnExtensionUnloaded : TOnExtensionUnloadedEvent read FOnExtensionUnloaded write FOnExtensionUnloaded; - /// - /// Called when an extension needs a browser to host a background script - /// specified via the "background" manifest key. The browser will have no - /// visible window and cannot be displayed. |extension| is the extension that - /// is loading the background script. |url| is an internally generated - /// reference to an HTML page that will be used to load the background script - /// via a "