mirror of
https://github.com/salvadordf/CEF4Delphi.git
synced 2025-04-17 06:57:13 +02:00
parent
b3f388709a
commit
83a75c985a
16
README.md
16
README.md
@ -3,16 +3,16 @@ 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 first lines of any *.pas file.
|
CEF4Delphi is based on DCEF3 and fpCEF3. The original license of those projects still applies to CEF4Delphi. Read the license terms in the first lines of any *.pas file.
|
||||||
|
|
||||||
CEF4Delphi uses CEF 92.0.27 which includes Chromium 92.0.4515.159.
|
CEF4Delphi uses CEF 93.1.11 which includes Chromium 93.0.4577.63.
|
||||||
|
|
||||||
The CEF binaries used by CEF4Delphi are available for download at Spotify :
|
The CEF binaries used by CEF4Delphi are available for download at Spotify :
|
||||||
* [Windows 32 bits](https://cef-builds.spotifycdn.com/cef_binary_92.0.27%2Bg274abcf%2Bchromium-92.0.4515.159_windows32.tar.bz2)
|
* [Windows 32 bits](https://cef-builds.spotifycdn.com/cef_binary_93.1.11%2Bg9e254fa%2Bchromium-93.0.4577.63_windows32.tar.bz2)
|
||||||
* [Windows 64 bits](https://cef-builds.spotifycdn.com/cef_binary_92.0.27%2Bg274abcf%2Bchromium-92.0.4515.159_windows64.tar.bz2)
|
* [Windows 64 bits](https://cef-builds.spotifycdn.com/cef_binary_93.1.11%2Bg9e254fa%2Bchromium-93.0.4577.63_windows64.tar.bz2)
|
||||||
* [Linux x86 32 bits](https://cef-builds.spotifycdn.com/cef_binary_92.0.27%2Bg274abcf%2Bchromium-92.0.4515.159_linux32.tar.bz2)
|
* [Linux x86 32 bits](https://cef-builds.spotifycdn.com/cef_binary_93.1.11%2Bg9e254fa%2Bchromium-93.0.4577.63_linux32.tar.bz2)
|
||||||
* [Linux x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_92.0.27%2Bg274abcf%2Bchromium-92.0.4515.159_linux64.tar.bz2)
|
* [Linux x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_93.1.11%2Bg9e254fa%2Bchromium-93.0.4577.63_linux64.tar.bz2)
|
||||||
* [Linux ARM 32 bits](https://cef-builds.spotifycdn.com/cef_binary_92.0.27%2Bg274abcf%2Bchromium-92.0.4515.159_linuxarm.tar.bz2)
|
* [Linux ARM 32 bits](https://cef-builds.spotifycdn.com/cef_binary_93.1.11%2Bg9e254fa%2Bchromium-93.0.4577.63_linuxarm.tar.bz2)
|
||||||
* [Linux ARM 64 bits](https://cef-builds.spotifycdn.com/cef_binary_92.0.27%2Bg274abcf%2Bchromium-92.0.4515.159_linuxarm64.tar.bz2)
|
* [Linux ARM 64 bits](https://cef-builds.spotifycdn.com/cef_binary_93.1.11%2Bg9e254fa%2Bchromium-93.0.4577.63_linuxarm64.tar.bz2)
|
||||||
* [MacOS x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_92.0.27%2Bg274abcf%2Bchromium-92.0.4515.159_macosx64.tar.bz2)
|
* [MacOS x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_93.1.11%2Bg9e254fa%2Bchromium-93.0.4577.63_macosx64.tar.bz2)
|
||||||
|
|
||||||
CEF4Delphi was developed and tested on Delphi 10.4.2 and it has been tested in Delphi 7, Delphi XE, Delphi 10, Delphi 10.2, Delphi 10.3 and Lazarus 2.0.12/FPC 3.2.0. CEF4Delphi includes VCL, FireMonkey (FMX) and Lazarus components.
|
CEF4Delphi was developed and tested on Delphi 10.4.2 and it has been tested in Delphi 7, Delphi XE, Delphi 10, Delphi 10.2, Delphi 10.3 and Lazarus 2.0.12/FPC 3.2.0. CEF4Delphi includes VCL, FireMonkey (FMX) and Lazarus components.
|
||||||
|
|
||||||
|
@ -173,7 +173,6 @@ begin
|
|||||||
|
|
||||||
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_SYSKEYDOWN :
|
WM_SYSKEYDOWN :
|
||||||
@ -189,7 +188,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_SYSKEYUP :
|
WM_SYSKEYUP :
|
||||||
@ -205,7 +203,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_KEYDOWN :
|
WM_KEYDOWN :
|
||||||
@ -237,7 +234,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_CHAR :
|
WM_CHAR :
|
||||||
@ -254,7 +250,6 @@ begin
|
|||||||
|
|
||||||
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_MOUSEWHEEL :
|
WM_MOUSEWHEEL :
|
||||||
|
@ -34,9 +34,13 @@
|
|||||||
* this source code without explicit permission.
|
* this source code without explicit permission.
|
||||||
*
|
*
|
||||||
*)
|
*)
|
||||||
|
|
||||||
unit uCookieVisitor;
|
unit uCookieVisitor;
|
||||||
|
|
||||||
{$I cef.inc}
|
{$I cef.inc}
|
||||||
|
|
||||||
interface
|
interface
|
||||||
|
|
||||||
uses
|
uses
|
||||||
{$IFDEF DELPHI16_UP}
|
{$IFDEF DELPHI16_UP}
|
||||||
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
|
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
|
||||||
@ -48,6 +52,7 @@ uses
|
|||||||
uCEFChromium, uCEFWindowParent, uCEFInterfaces, uCEFApplication, uCEFTypes, uCEFConstants,
|
uCEFChromium, uCEFWindowParent, uCEFInterfaces, uCEFApplication, uCEFTypes, uCEFConstants,
|
||||||
uCEFCookieManager, uCEFCookieVisitor, uCEFWinControl, uCEFSentinel,
|
uCEFCookieManager, uCEFCookieVisitor, uCEFWinControl, uCEFSentinel,
|
||||||
uCEFChromiumCore;
|
uCEFChromiumCore;
|
||||||
|
|
||||||
const
|
const
|
||||||
MINIBROWSER_SHOWCOOKIES = WM_APP + $101;
|
MINIBROWSER_SHOWCOOKIES = WM_APP + $101;
|
||||||
MINIBROWSER_COOKIESDELETED = WM_APP + $102;
|
MINIBROWSER_COOKIESDELETED = WM_APP + $102;
|
||||||
@ -57,6 +62,7 @@ const
|
|||||||
MINIBROWSER_CONTEXTMENU_SETCOOKIE = MENU_ID_USER_FIRST + 3;
|
MINIBROWSER_CONTEXTMENU_SETCOOKIE = MENU_ID_USER_FIRST + 3;
|
||||||
MINIBROWSER_CONTEXTMENU_GETGOOGLECOOKIES = MENU_ID_USER_FIRST + 4;
|
MINIBROWSER_CONTEXTMENU_GETGOOGLECOOKIES = MENU_ID_USER_FIRST + 4;
|
||||||
MINIBROWSER_CONTEXTMENU_DELETECACHE = MENU_ID_USER_FIRST + 5;
|
MINIBROWSER_CONTEXTMENU_DELETECACHE = MENU_ID_USER_FIRST + 5;
|
||||||
|
|
||||||
type
|
type
|
||||||
TCookieVisitorFrm = class(TForm)
|
TCookieVisitorFrm = class(TForm)
|
||||||
AddressBarPnl: TPanel;
|
AddressBarPnl: TPanel;
|
||||||
@ -65,6 +71,7 @@ type
|
|||||||
CEFWindowParent1: TCEFWindowParent;
|
CEFWindowParent1: TCEFWindowParent;
|
||||||
Chromium1: TChromium;
|
Chromium1: TChromium;
|
||||||
Timer1: TTimer;
|
Timer1: TTimer;
|
||||||
|
|
||||||
procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser);
|
procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser);
|
||||||
procedure Chromium1BeforeContextMenu(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; const model: ICefMenuModel);
|
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 Chromium1ContextMenuCommand(Sender: TObject; const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; commandId: Integer; eventFlags: Cardinal; out Result: Boolean);
|
||||||
@ -80,6 +87,7 @@ type
|
|||||||
procedure FormShow(Sender: TObject);
|
procedure FormShow(Sender: TObject);
|
||||||
procedure FormCreate(Sender: TObject);
|
procedure FormCreate(Sender: TObject);
|
||||||
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
||||||
|
|
||||||
private
|
private
|
||||||
procedure WMMove(var aMessage : TWMMove); message WM_MOVE;
|
procedure WMMove(var aMessage : TWMMove); message WM_MOVE;
|
||||||
procedure WMMoving(var aMessage : TMessage); message WM_MOVING;
|
procedure WMMoving(var aMessage : TMessage); message WM_MOVING;
|
||||||
@ -90,21 +98,29 @@ type
|
|||||||
procedure ShowCookiesMsg(var aMessage : TMessage); message MINIBROWSER_SHOWCOOKIES;
|
procedure ShowCookiesMsg(var aMessage : TMessage); message MINIBROWSER_SHOWCOOKIES;
|
||||||
procedure CookiesDeletedMsg(var aMessage : TMessage); message MINIBROWSER_COOKIESDELETED;
|
procedure CookiesDeletedMsg(var aMessage : TMessage); message MINIBROWSER_COOKIESDELETED;
|
||||||
procedure CookieSetMsg(var aMessage : TMessage); message MINIBROWSER_COOKIESET;
|
procedure CookieSetMsg(var aMessage : TMessage); message MINIBROWSER_COOKIESET;
|
||||||
|
|
||||||
protected
|
protected
|
||||||
FText : string;
|
FText : string;
|
||||||
// Variables to control when can we destroy the form safely
|
// Variables to control when can we destroy the form safely
|
||||||
FCanClose : boolean; // Set to True in TChromium.OnBeforeClose
|
FCanClose : boolean; // Set to True in TChromium.OnBeforeClose
|
||||||
FClosing : boolean; // Set to True in the CloseQuery event.
|
FClosing : boolean; // Set to True in the CloseQuery event.
|
||||||
|
|
||||||
public
|
public
|
||||||
procedure AddCookieInfo(const aCookie : TCookie);
|
procedure AddCookieInfo(const aCookie : TCookie);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
var
|
var
|
||||||
CookieVisitorFrm: TCookieVisitorFrm;
|
CookieVisitorFrm: TCookieVisitorFrm;
|
||||||
|
|
||||||
procedure CreateGlobalCEFApp;
|
procedure CreateGlobalCEFApp;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
{$R *.dfm}
|
{$R *.dfm}
|
||||||
|
|
||||||
uses
|
uses
|
||||||
uSimpleTextViewer, uCEFTask, uCEFMiscFunctions, uCEFDictionaryValue;
|
uSimpleTextViewer, uCEFTask, uCEFMiscFunctions, uCEFDictionaryValue;
|
||||||
|
|
||||||
// This demo has a context menu to test several TChromium functions related to cookies like TChromium.VisitAllCookies,
|
// This demo has a context menu to test several TChromium functions related to cookies like TChromium.VisitAllCookies,
|
||||||
// TChromium.SetCookie, TChromium.DeleteCookies, etc.
|
// TChromium.SetCookie, TChromium.DeleteCookies, etc.
|
||||||
// TChromium.VisitAllCookies and TChromium.VisitURLCookies trigger the TChromium.OnCookiesVisited event for each
|
// TChromium.VisitAllCookies and TChromium.VisitURLCookies trigger the TChromium.OnCookiesVisited event for each
|
||||||
@ -117,6 +133,7 @@ uses
|
|||||||
// 1. FormCloseQuery sets CanClose to FALSE calls TChromium.CloseBrowser which triggers the TChromium.OnClose event.
|
// 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.
|
// 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.
|
// 3. TChromium.OnBeforeClose sets FCanClose := True and sends WM_CLOSE to the form.
|
||||||
|
|
||||||
procedure CreateGlobalCEFApp;
|
procedure CreateGlobalCEFApp;
|
||||||
begin
|
begin
|
||||||
GlobalCEFApp := TCefApplication.Create;
|
GlobalCEFApp := TCefApplication.Create;
|
||||||
@ -124,56 +141,69 @@ begin
|
|||||||
//GlobalCEFApp.LogFile := 'cef.log';
|
//GlobalCEFApp.LogFile := 'cef.log';
|
||||||
//GlobalCEFApp.LogSeverity := LOGSEVERITY_VERBOSE;
|
//GlobalCEFApp.LogSeverity := LOGSEVERITY_VERBOSE;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.AddCookieInfo(const aCookie : TCookie);
|
procedure TCookieVisitorFrm.AddCookieInfo(const aCookie : TCookie);
|
||||||
begin
|
begin
|
||||||
// This should be protected by a mutex.
|
// This should be protected by a mutex.
|
||||||
FText := FText + aCookie.name + ' : ' + aCookie.value + ' (' + aCookie.domain + ')' + #13 + #10;
|
FText := FText + aCookie.name + ' : ' + aCookie.value + ' (' + aCookie.domain + ')' + #13 + #10;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.BrowserCreatedMsg(var aMessage : TMessage);
|
procedure TCookieVisitorFrm.BrowserCreatedMsg(var aMessage : TMessage);
|
||||||
begin
|
begin
|
||||||
CEFWindowParent1.UpdateSize;
|
CEFWindowParent1.UpdateSize;
|
||||||
AddressBarPnl.Enabled := True;
|
AddressBarPnl.Enabled := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.BrowserDestroyMsg(var aMessage : TMessage);
|
procedure TCookieVisitorFrm.BrowserDestroyMsg(var aMessage : TMessage);
|
||||||
begin
|
begin
|
||||||
CEFWindowParent1.Free;
|
CEFWindowParent1.Free;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.ShowCookiesMsg(var aMessage : TMessage);
|
procedure TCookieVisitorFrm.ShowCookiesMsg(var aMessage : TMessage);
|
||||||
begin
|
begin
|
||||||
SimpleTextViewerFrm.Memo1.Lines.Text := FText; // This should be protected by a mutex.
|
SimpleTextViewerFrm.Memo1.Lines.Text := FText; // This should be protected by a mutex.
|
||||||
SimpleTextViewerFrm.ShowModal;
|
SimpleTextViewerFrm.ShowModal;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.CookiesDeletedMsg(var aMessage : TMessage);
|
procedure TCookieVisitorFrm.CookiesDeletedMsg(var aMessage : TMessage);
|
||||||
begin
|
begin
|
||||||
showmessage('Deleted cookies : ' + inttostr(aMessage.lParam));
|
showmessage('Deleted cookies : ' + inttostr(aMessage.lParam));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.CookieSetMsg(var aMessage : TMessage);
|
procedure TCookieVisitorFrm.CookieSetMsg(var aMessage : TMessage);
|
||||||
begin
|
begin
|
||||||
Chromium1.FlushCookieStore;
|
Chromium1.FlushCookieStore;
|
||||||
|
|
||||||
if (aMessage.wParam <> 0) then
|
if (aMessage.wParam <> 0) then
|
||||||
showmessage('Cookie set successfully !')
|
showmessage('Cookie set successfully !')
|
||||||
else
|
else
|
||||||
showmessage('There was a problem setting the cookie');
|
showmessage('There was a problem setting the cookie');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.Timer1Timer(Sender: TObject);
|
procedure TCookieVisitorFrm.Timer1Timer(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Timer1.Enabled := False;
|
Timer1.Enabled := False;
|
||||||
|
|
||||||
if not(Chromium1.CreateBrowser(CEFWindowParent1, '')) and not(Chromium1.Initialized) then
|
if not(Chromium1.CreateBrowser(CEFWindowParent1, '')) and not(Chromium1.Initialized) then
|
||||||
Timer1.Enabled := True;
|
Timer1.Enabled := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.GoBtnClick(Sender: TObject);
|
procedure TCookieVisitorFrm.GoBtnClick(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
Chromium1.LoadURL(Edit1.Text);
|
Chromium1.LoadURL(Edit1.Text);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser);
|
procedure TCookieVisitorFrm.Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser);
|
||||||
begin
|
begin
|
||||||
PostMessage(Handle, CEF_AFTERCREATED, 0, 0);
|
PostMessage(Handle, CEF_AFTERCREATED, 0, 0);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser);
|
procedure TCookieVisitorFrm.Chromium1BeforeClose(Sender: TObject; const browser: ICefBrowser);
|
||||||
begin
|
begin
|
||||||
FCanClose := True;
|
FCanClose := True;
|
||||||
PostMessage(Handle, WM_CLOSE, 0, 0);
|
PostMessage(Handle, WM_CLOSE, 0, 0);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.Chromium1BeforeContextMenu(Sender: TObject;
|
procedure TCookieVisitorFrm.Chromium1BeforeContextMenu(Sender: TObject;
|
||||||
const browser: ICefBrowser; const frame: ICefFrame;
|
const browser: ICefBrowser; const frame: ICefFrame;
|
||||||
const params: ICefContextMenuParams; const model: ICefMenuModel);
|
const params: ICefContextMenuParams; const model: ICefMenuModel);
|
||||||
@ -186,6 +216,7 @@ begin
|
|||||||
model.AddItem(MINIBROWSER_CONTEXTMENU_SETCOOKIE, 'Set cookie');
|
model.AddItem(MINIBROWSER_CONTEXTMENU_SETCOOKIE, 'Set cookie');
|
||||||
model.AddItem(MINIBROWSER_CONTEXTMENU_DELETECACHE, 'Delete cache');
|
model.AddItem(MINIBROWSER_CONTEXTMENU_DELETECACHE, 'Delete cache');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.Chromium1BeforePopup(Sender: TObject;
|
procedure TCookieVisitorFrm.Chromium1BeforePopup(Sender: TObject;
|
||||||
const browser: ICefBrowser; const frame: ICefFrame; const targetUrl,
|
const browser: ICefBrowser; const frame: ICefFrame; const targetUrl,
|
||||||
targetFrameName: ustring; targetDisposition: TCefWindowOpenDisposition;
|
targetFrameName: ustring; targetDisposition: TCefWindowOpenDisposition;
|
||||||
@ -199,12 +230,14 @@ begin
|
|||||||
// For simplicity, this demo blocks all popup windows and new tabs
|
// For simplicity, this demo blocks all popup windows and new tabs
|
||||||
Result := (targetDisposition in [WOD_NEW_FOREGROUND_TAB, WOD_NEW_BACKGROUND_TAB, WOD_NEW_POPUP, WOD_NEW_WINDOW]);
|
Result := (targetDisposition in [WOD_NEW_FOREGROUND_TAB, WOD_NEW_BACKGROUND_TAB, WOD_NEW_POPUP, WOD_NEW_WINDOW]);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.Chromium1Close(Sender: TObject;
|
procedure TCookieVisitorFrm.Chromium1Close(Sender: TObject;
|
||||||
const browser: ICefBrowser; var aAction : TCefCloseBrowserAction);
|
const browser: ICefBrowser; var aAction : TCefCloseBrowserAction);
|
||||||
begin
|
begin
|
||||||
PostMessage(Handle, CEF_DESTROY, 0, 0);
|
PostMessage(Handle, CEF_DESTROY, 0, 0);
|
||||||
aAction := cbaDelay;
|
aAction := cbaDelay;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.Chromium1ContextMenuCommand(Sender: TObject;
|
procedure TCookieVisitorFrm.Chromium1ContextMenuCommand(Sender: TObject;
|
||||||
const browser: ICefBrowser; const frame: ICefFrame;
|
const browser: ICefBrowser; const frame: ICefFrame;
|
||||||
const params: ICefContextMenuParams; commandId: Integer;
|
const params: ICefContextMenuParams; commandId: Integer;
|
||||||
@ -213,18 +246,21 @@ begin
|
|||||||
Result := False;
|
Result := False;
|
||||||
case commandId of
|
case commandId of
|
||||||
MINIBROWSER_CONTEXTMENU_DELETECOOKIES : Chromium1.DeleteCookies;
|
MINIBROWSER_CONTEXTMENU_DELETECOOKIES : Chromium1.DeleteCookies;
|
||||||
|
|
||||||
MINIBROWSER_CONTEXTMENU_GETCOOKIES :
|
MINIBROWSER_CONTEXTMENU_GETCOOKIES :
|
||||||
begin
|
begin
|
||||||
// This should be protected by a mutex
|
// This should be protected by a mutex
|
||||||
FText := '';
|
FText := '';
|
||||||
Chromium1.VisitAllCookies;
|
Chromium1.VisitAllCookies;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
MINIBROWSER_CONTEXTMENU_GETGOOGLECOOKIES :
|
MINIBROWSER_CONTEXTMENU_GETGOOGLECOOKIES :
|
||||||
begin
|
begin
|
||||||
// This should be protected by a mutex
|
// This should be protected by a mutex
|
||||||
FText := '';
|
FText := '';
|
||||||
Chromium1.VisitURLCookies('https://www.google.com');
|
Chromium1.VisitURLCookies('https://www.google.com');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
MINIBROWSER_CONTEXTMENU_SETCOOKIE :
|
MINIBROWSER_CONTEXTMENU_SETCOOKIE :
|
||||||
Chromium1.SetCookie('https://www.example.com',
|
Chromium1.SetCookie('https://www.example.com',
|
||||||
'example_cookie_name',
|
'example_cookie_name',
|
||||||
@ -240,19 +276,23 @@ begin
|
|||||||
CEF_COOKIE_SAME_SITE_UNSPECIFIED,
|
CEF_COOKIE_SAME_SITE_UNSPECIFIED,
|
||||||
CEF_COOKIE_PRIORITY_MEDIUM,
|
CEF_COOKIE_PRIORITY_MEDIUM,
|
||||||
False);
|
False);
|
||||||
|
|
||||||
MINIBROWSER_CONTEXTMENU_DELETECACHE :
|
MINIBROWSER_CONTEXTMENU_DELETECACHE :
|
||||||
Chromium1.ExecuteDevToolsMethod(0, 'Network.clearBrowserCache', nil);
|
Chromium1.ExecuteDevToolsMethod(0, 'Network.clearBrowserCache', nil);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.Chromium1CookiesDeleted(Sender: TObject; numDeleted: Integer);
|
procedure TCookieVisitorFrm.Chromium1CookiesDeleted(Sender: TObject; numDeleted: Integer);
|
||||||
begin
|
begin
|
||||||
PostMessage(Handle, MINIBROWSER_COOKIESDELETED, 0, numDeleted);
|
PostMessage(Handle, MINIBROWSER_COOKIESDELETED, 0, numDeleted);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.Chromium1CookieSet(Sender: TObject;
|
procedure TCookieVisitorFrm.Chromium1CookieSet(Sender: TObject;
|
||||||
aSuccess: Boolean; aID: Integer);
|
aSuccess: Boolean; aID: Integer);
|
||||||
begin
|
begin
|
||||||
PostMessage(Handle, MINIBROWSER_COOKIESET, WPARAM(aSuccess), aID);
|
PostMessage(Handle, MINIBROWSER_COOKIESET, WPARAM(aSuccess), aID);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.Chromium1CookiesVisited(Sender: TObject;
|
procedure TCookieVisitorFrm.Chromium1CookiesVisited(Sender: TObject;
|
||||||
const name_, value, domain, path: ustring; secure, httponly,
|
const name_, value, domain, path: ustring; secure, httponly,
|
||||||
hasExpires: Boolean; const creation, lastAccess, expires: TDateTime; count,
|
hasExpires: Boolean; const creation, lastAccess, expires: TDateTime; count,
|
||||||
@ -262,6 +302,7 @@ var
|
|||||||
TempCookie : TCookie;
|
TempCookie : TCookie;
|
||||||
begin
|
begin
|
||||||
aDeleteCookie := False;
|
aDeleteCookie := False;
|
||||||
|
|
||||||
TempCookie.name := name_;
|
TempCookie.name := name_;
|
||||||
TempCookie.value := value;
|
TempCookie.value := value;
|
||||||
TempCookie.domain := domain;
|
TempCookie.domain := domain;
|
||||||
@ -274,53 +315,71 @@ begin
|
|||||||
TempCookie.expires := expires;
|
TempCookie.expires := expires;
|
||||||
TempCookie.same_site := same_site;
|
TempCookie.same_site := same_site;
|
||||||
TempCookie.priority := priority;
|
TempCookie.priority := priority;
|
||||||
|
|
||||||
AddCookieInfo(TempCookie);
|
AddCookieInfo(TempCookie);
|
||||||
|
|
||||||
aResult := (count <> pred(total));
|
aResult := (count <> pred(total));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.Chromium1CookieVisitorDestroyed(Sender: TObject; aID: Integer);
|
procedure TCookieVisitorFrm.Chromium1CookieVisitorDestroyed(Sender: TObject; aID: Integer);
|
||||||
begin
|
begin
|
||||||
PostMessage(Handle, MINIBROWSER_SHOWCOOKIES, 0, 0);
|
PostMessage(Handle, MINIBROWSER_SHOWCOOKIES, 0, 0);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
procedure TCookieVisitorFrm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
||||||
begin
|
begin
|
||||||
CanClose := FCanClose;
|
CanClose := FCanClose;
|
||||||
|
|
||||||
if not(FClosing) then
|
if not(FClosing) then
|
||||||
begin
|
begin
|
||||||
FClosing := True;
|
FClosing := True;
|
||||||
Visible := False;
|
Visible := False;
|
||||||
|
|
||||||
Chromium1.CloseBrowser(True);
|
Chromium1.CloseBrowser(True);
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.FormCreate(Sender: TObject);
|
procedure TCookieVisitorFrm.FormCreate(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
FCanClose := False;
|
FCanClose := False;
|
||||||
FClosing := False;
|
FClosing := False;
|
||||||
|
|
||||||
Chromium1.DefaultURL := Edit1.Text;
|
Chromium1.DefaultURL := Edit1.Text;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.FormShow(Sender: TObject);
|
procedure TCookieVisitorFrm.FormShow(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
// GlobalCEFApp.GlobalContextInitialized has to be TRUE before creating any browser
|
// GlobalCEFApp.GlobalContextInitialized has to be TRUE before creating any browser
|
||||||
// If it's not initialized yet, we use a simple timer to create the browser later.
|
// If it's not initialized yet, we use a simple timer to create the browser later.
|
||||||
if not(Chromium1.CreateBrowser(CEFWindowParent1, '')) then Timer1.Enabled := True;
|
if not(Chromium1.CreateBrowser(CEFWindowParent1, '')) then Timer1.Enabled := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.WMMove(var aMessage : TWMMove);
|
procedure TCookieVisitorFrm.WMMove(var aMessage : TWMMove);
|
||||||
begin
|
begin
|
||||||
inherited;
|
inherited;
|
||||||
|
|
||||||
if (Chromium1 <> nil) then Chromium1.NotifyMoveOrResizeStarted;
|
if (Chromium1 <> nil) then Chromium1.NotifyMoveOrResizeStarted;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.WMMoving(var aMessage : TMessage);
|
procedure TCookieVisitorFrm.WMMoving(var aMessage : TMessage);
|
||||||
begin
|
begin
|
||||||
inherited;
|
inherited;
|
||||||
|
|
||||||
if (Chromium1 <> nil) then Chromium1.NotifyMoveOrResizeStarted;
|
if (Chromium1 <> nil) then Chromium1.NotifyMoveOrResizeStarted;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.WMEnterMenuLoop(var aMessage: TMessage);
|
procedure TCookieVisitorFrm.WMEnterMenuLoop(var aMessage: TMessage);
|
||||||
begin
|
begin
|
||||||
inherited;
|
inherited;
|
||||||
|
|
||||||
if (aMessage.wParam = 0) and (GlobalCEFApp <> nil) then GlobalCEFApp.OsmodalLoop := True;
|
if (aMessage.wParam = 0) and (GlobalCEFApp <> nil) then GlobalCEFApp.OsmodalLoop := True;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCookieVisitorFrm.WMExitMenuLoop(var aMessage: TMessage);
|
procedure TCookieVisitorFrm.WMExitMenuLoop(var aMessage: TMessage);
|
||||||
begin
|
begin
|
||||||
inherited;
|
inherited;
|
||||||
|
|
||||||
if (aMessage.wParam = 0) and (GlobalCEFApp <> nil) then GlobalCEFApp.OsmodalLoop := False;
|
if (aMessage.wParam = 0) and (GlobalCEFApp <> nil) then GlobalCEFApp.OsmodalLoop := False;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
@ -209,7 +209,6 @@ begin
|
|||||||
|
|
||||||
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_SYSKEYDOWN :
|
WM_SYSKEYDOWN :
|
||||||
@ -225,7 +224,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_SYSKEYUP :
|
WM_SYSKEYUP :
|
||||||
@ -241,7 +239,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_KEYDOWN :
|
WM_KEYDOWN :
|
||||||
@ -280,7 +277,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_CHAR :
|
WM_CHAR :
|
||||||
@ -297,7 +293,6 @@ begin
|
|||||||
|
|
||||||
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_MOUSEWHEEL :
|
WM_MOUSEWHEEL :
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
<ProjectVersion>19.2</ProjectVersion>
|
<ProjectVersion>19.2</ProjectVersion>
|
||||||
<FrameworkType>VCL</FrameworkType>
|
<FrameworkType>VCL</FrameworkType>
|
||||||
<Base>True</Base>
|
<Base>True</Base>
|
||||||
<Platform Condition="'$(Platform)'==''">Win64</Platform>
|
<Platform Condition="'$(Platform)'==''">Win32</Platform>
|
||||||
<TargetedPlatforms>3</TargetedPlatforms>
|
<TargetedPlatforms>3</TargetedPlatforms>
|
||||||
<AppType>Application</AppType>
|
<AppType>Application</AppType>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
@ -289,6 +289,7 @@ begin
|
|||||||
GlobalCEFApp.LogSeverity := LOGSEVERITY_INFO;
|
GlobalCEFApp.LogSeverity := LOGSEVERITY_INFO;
|
||||||
GlobalCEFApp.cache := 'cache';
|
GlobalCEFApp.cache := 'cache';
|
||||||
GlobalCEFApp.EnablePrintPreview := True;
|
GlobalCEFApp.EnablePrintPreview := True;
|
||||||
|
GlobalCEFApp.EnableGPU := True;
|
||||||
|
|
||||||
// This is a workaround for the CEF4Delphi issue #324 :
|
// This is a workaround for the CEF4Delphi issue #324 :
|
||||||
// https://github.com/salvadordf/CEF4Delphi/issues/324
|
// https://github.com/salvadordf/CEF4Delphi/issues/324
|
||||||
|
@ -213,7 +213,6 @@ begin
|
|||||||
|
|
||||||
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_SYSKEYDOWN :
|
WM_SYSKEYDOWN :
|
||||||
@ -229,7 +228,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_SYSKEYUP :
|
WM_SYSKEYUP :
|
||||||
@ -245,7 +243,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_KEYDOWN :
|
WM_KEYDOWN :
|
||||||
@ -277,7 +274,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_CHAR :
|
WM_CHAR :
|
||||||
@ -294,7 +290,6 @@ begin
|
|||||||
|
|
||||||
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_MOUSEWHEEL :
|
WM_MOUSEWHEEL :
|
||||||
|
@ -125,13 +125,13 @@ type
|
|||||||
public
|
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 : string; const popupFeatures : TCefPopupFeatures) : boolean;
|
||||||
procedure ApplyPopupFeatures;
|
procedure ApplyPopupFeatures;
|
||||||
procedure HandleSysCharMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure HandleSysCharMsg(var Msg: tagMSG);
|
||||||
procedure HandleSysKeyDownMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure HandleSysKeyDownMsg(var Msg: tagMSG);
|
||||||
procedure HandleSysKeyUpMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure HandleSysKeyUpMsg(var Msg: tagMSG);
|
||||||
procedure HandleKeyDownMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure HandleKeyDownMsg(var Msg: tagMSG; var Handled: Boolean);
|
||||||
procedure HandleKeyUpMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure HandleKeyUpMsg(var Msg: tagMSG);
|
||||||
procedure HandleCharMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure HandleCharMsg(var Msg: tagMSG);
|
||||||
procedure HandleMouseWheelMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure HandleMouseWheelMsg(var Msg: tagMSG);
|
||||||
|
|
||||||
property ClientInitialized : boolean read FClientInitialized;
|
property ClientInitialized : boolean read FClientInitialized;
|
||||||
property Closing : boolean read FClosing;
|
property Closing : boolean read FClosing;
|
||||||
@ -156,7 +156,7 @@ uses
|
|||||||
// 3- chrmosr.OnBeforeClose is triggered because the internal browser was destroyed.
|
// 3- chrmosr.OnBeforeClose is triggered because the internal browser was destroyed.
|
||||||
// Now we set FCanClose to True and send WM_CLOSE to the form.
|
// Now we set FCanClose to True and send WM_CLOSE to the form.
|
||||||
|
|
||||||
procedure TChildForm.HandleSysCharMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure TChildForm.HandleSysCharMsg(var Msg: tagMSG);
|
||||||
var
|
var
|
||||||
TempKeyEvent : TCefKeyEvent;
|
TempKeyEvent : TCefKeyEvent;
|
||||||
begin
|
begin
|
||||||
@ -173,13 +173,10 @@ begin
|
|||||||
|
|
||||||
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
||||||
Chromium1.SendKeyEvent(@TempKeyEvent);
|
Chromium1.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
end;
|
||||||
end
|
|
||||||
else
|
|
||||||
Handled := False;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TChildForm.HandleSysKeyDownMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure TChildForm.HandleSysKeyDownMsg(var Msg: tagMSG);
|
||||||
var
|
var
|
||||||
TempKeyEvent : TCefKeyEvent;
|
TempKeyEvent : TCefKeyEvent;
|
||||||
begin
|
begin
|
||||||
@ -195,13 +192,10 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
Chromium1.SendKeyEvent(@TempKeyEvent);
|
Chromium1.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
end;
|
||||||
end
|
|
||||||
else
|
|
||||||
Handled := False;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TChildForm.HandleSysKeyUpMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure TChildForm.HandleSysKeyUpMsg(var Msg: tagMSG);
|
||||||
var
|
var
|
||||||
TempKeyEvent : TCefKeyEvent;
|
TempKeyEvent : TCefKeyEvent;
|
||||||
begin
|
begin
|
||||||
@ -217,10 +211,7 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
Chromium1.SendKeyEvent(@TempKeyEvent);
|
Chromium1.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
end;
|
||||||
end
|
|
||||||
else
|
|
||||||
Handled := False;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TChildForm.HandleKeyDownMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure TChildForm.HandleKeyDownMsg(var Msg: tagMSG; var Handled: Boolean);
|
||||||
@ -245,7 +236,7 @@ begin
|
|||||||
Handled := False;
|
Handled := False;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TChildForm.HandleKeyUpMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure TChildForm.HandleKeyUpMsg(var Msg: tagMSG);
|
||||||
var
|
var
|
||||||
TempKeyEvent : TCefKeyEvent;
|
TempKeyEvent : TCefKeyEvent;
|
||||||
begin
|
begin
|
||||||
@ -261,13 +252,10 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
Chromium1.SendKeyEvent(@TempKeyEvent);
|
Chromium1.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
end;
|
||||||
end
|
|
||||||
else
|
|
||||||
Handled := False;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TChildForm.HandleCharMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure TChildForm.HandleCharMsg(var Msg: tagMSG);
|
||||||
var
|
var
|
||||||
TempKeyEvent : TCefKeyEvent;
|
TempKeyEvent : TCefKeyEvent;
|
||||||
begin
|
begin
|
||||||
@ -284,13 +272,10 @@ begin
|
|||||||
|
|
||||||
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
||||||
Chromium1.SendKeyEvent(@TempKeyEvent);
|
Chromium1.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
end;
|
||||||
end
|
|
||||||
else
|
|
||||||
Handled := False;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TChildForm.HandleMouseWheelMsg(var Msg: tagMSG; var Handled: Boolean);
|
procedure TChildForm.HandleMouseWheelMsg(var Msg: tagMSG);
|
||||||
var
|
var
|
||||||
TempMouseEvent : TCefMouseEvent;
|
TempMouseEvent : TCefMouseEvent;
|
||||||
TempPoint : TPoint;
|
TempPoint : TPoint;
|
||||||
@ -309,8 +294,6 @@ begin
|
|||||||
Chromium1.SendMouseWheelEvent(@TempMouseEvent, smallint(Msg.wParam shr 16), 0)
|
Chromium1.SendMouseWheelEvent(@TempMouseEvent, smallint(Msg.wParam shr 16), 0)
|
||||||
else
|
else
|
||||||
Chromium1.SendMouseWheelEvent(@TempMouseEvent, 0, smallint(Msg.wParam shr 16));
|
Chromium1.SendMouseWheelEvent(@TempMouseEvent, 0, smallint(Msg.wParam shr 16));
|
||||||
|
|
||||||
Handled := False;
|
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -317,15 +317,13 @@ end;
|
|||||||
procedure TMainForm.AppEventsMessage(var Msg: tagMSG; var Handled: Boolean);
|
procedure TMainForm.AppEventsMessage(var Msg: tagMSG; var Handled: Boolean);
|
||||||
begin
|
begin
|
||||||
case Msg.message of
|
case Msg.message of
|
||||||
WM_SYSCHAR : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleSysCharMsg(Msg, Handled);
|
WM_SYSCHAR : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleSysCharMsg(Msg);
|
||||||
WM_SYSKEYDOWN : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleSysKeyDownMsg(Msg, Handled);
|
WM_SYSKEYDOWN : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleSysKeyDownMsg(Msg);
|
||||||
WM_SYSKEYUP : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleSysKeyUpMsg(Msg, Handled);
|
WM_SYSKEYUP : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleSysKeyUpMsg(Msg);
|
||||||
WM_KEYDOWN : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleKeyDownMsg(Msg, Handled);
|
WM_KEYDOWN : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleKeyDownMsg(Msg, Handled);
|
||||||
WM_KEYUP : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleKeyUpMsg(Msg, Handled);
|
WM_KEYUP : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleKeyUpMsg(Msg);
|
||||||
WM_CHAR : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleCharMsg(Msg, Handled);
|
WM_CHAR : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleCharMsg(Msg);
|
||||||
WM_MOUSEWHEEL : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleMouseWheelMsg(Msg, Handled);
|
WM_MOUSEWHEEL : if (screen.FocusedForm is TChildForm) then TChildForm(screen.FocusedForm).HandleMouseWheelMsg(Msg);
|
||||||
|
|
||||||
else Handled := False;
|
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -280,7 +280,6 @@ begin
|
|||||||
|
|
||||||
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_SYSKEYDOWN :
|
WM_SYSKEYDOWN :
|
||||||
@ -296,7 +295,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_SYSKEYUP :
|
WM_SYSKEYUP :
|
||||||
@ -312,7 +310,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_KEYDOWN :
|
WM_KEYDOWN :
|
||||||
@ -344,7 +341,6 @@ begin
|
|||||||
TempKeyEvent.focus_on_editable_field := ord(False);
|
TempKeyEvent.focus_on_editable_field := ord(False);
|
||||||
|
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_CHAR :
|
WM_CHAR :
|
||||||
@ -361,7 +357,6 @@ begin
|
|||||||
|
|
||||||
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
CefCheckAltGrPressed(Msg.wParam, TempKeyEvent);
|
||||||
chrmosr.SendKeyEvent(@TempKeyEvent);
|
chrmosr.SendKeyEvent(@TempKeyEvent);
|
||||||
Handled := True;
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
WM_MOUSEWHEEL :
|
WM_MOUSEWHEEL :
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
<MainSource>TabbedBrowser2.dpr</MainSource>
|
<MainSource>TabbedBrowser2.dpr</MainSource>
|
||||||
<Base>True</Base>
|
<Base>True</Base>
|
||||||
<Config Condition="'$(Config)'==''">Debug</Config>
|
<Config Condition="'$(Config)'==''">Debug</Config>
|
||||||
<Platform Condition="'$(Platform)'==''">Win64</Platform>
|
<Platform Condition="'$(Platform)'==''">Win32</Platform>
|
||||||
<TargetedPlatforms>3</TargetedPlatforms>
|
<TargetedPlatforms>3</TargetedPlatforms>
|
||||||
<AppType>Application</AppType>
|
<AppType>Application</AppType>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
@ -137,7 +137,6 @@ contains
|
|||||||
uCEFChromiumOptions in '..\source\uCEFChromiumOptions.pas',
|
uCEFChromiumOptions in '..\source\uCEFChromiumOptions.pas',
|
||||||
uCEFChromiumFontOptions in '..\source\uCEFChromiumFontOptions.pas',
|
uCEFChromiumFontOptions in '..\source\uCEFChromiumFontOptions.pas',
|
||||||
uCEFPDFPrintOptions in '..\source\uCEFPDFPrintOptions.pas',
|
uCEFPDFPrintOptions in '..\source\uCEFPDFPrintOptions.pas',
|
||||||
uCEFRegisterCDMCallback in '..\source\uCEFRegisterCDMCallback.pas',
|
|
||||||
uCEFThread in '..\source\uCEFThread.pas',
|
uCEFThread in '..\source\uCEFThread.pas',
|
||||||
uCEFv8Interceptor in '..\source\uCEFv8Interceptor.pas',
|
uCEFv8Interceptor in '..\source\uCEFv8Interceptor.pas',
|
||||||
uCEFWaitableEvent in '..\source\uCEFWaitableEvent.pas',
|
uCEFWaitableEvent in '..\source\uCEFWaitableEvent.pas',
|
||||||
|
@ -231,7 +231,6 @@
|
|||||||
<DCCReference Include="..\source\uCEFChromiumOptions.pas"/>
|
<DCCReference Include="..\source\uCEFChromiumOptions.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFChromiumFontOptions.pas"/>
|
<DCCReference Include="..\source\uCEFChromiumFontOptions.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFPDFPrintOptions.pas"/>
|
<DCCReference Include="..\source\uCEFPDFPrintOptions.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFRegisterCDMCallback.pas"/>
|
|
||||||
<DCCReference Include="..\source\uCEFThread.pas"/>
|
<DCCReference Include="..\source\uCEFThread.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFv8Interceptor.pas"/>
|
<DCCReference Include="..\source\uCEFv8Interceptor.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFWaitableEvent.pas"/>
|
<DCCReference Include="..\source\uCEFWaitableEvent.pas"/>
|
||||||
@ -319,6 +318,7 @@
|
|||||||
<DCCReference Include="..\source\uCEFWorkSchedulerQueueThread.pas"/>
|
<DCCReference Include="..\source\uCEFWorkSchedulerQueueThread.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFLinkedWinControlBase.pas"/>
|
<DCCReference Include="..\source\uCEFLinkedWinControlBase.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFTimerWorkScheduler.pas"/>
|
<DCCReference Include="..\source\uCEFTimerWorkScheduler.pas"/>
|
||||||
|
<DCCReference Include="..\source\uCEFFrameHandler.pas"/>
|
||||||
<BuildConfiguration Include="Base">
|
<BuildConfiguration Include="Base">
|
||||||
<Key>Base</Key>
|
<Key>Base</Key>
|
||||||
</BuildConfiguration>
|
</BuildConfiguration>
|
||||||
|
@ -135,7 +135,6 @@ contains
|
|||||||
uCEFChromiumOptions in '..\source\uCEFChromiumOptions.pas',
|
uCEFChromiumOptions in '..\source\uCEFChromiumOptions.pas',
|
||||||
uCEFChromiumFontOptions in '..\source\uCEFChromiumFontOptions.pas',
|
uCEFChromiumFontOptions in '..\source\uCEFChromiumFontOptions.pas',
|
||||||
uCEFPDFPrintOptions in '..\source\uCEFPDFPrintOptions.pas',
|
uCEFPDFPrintOptions in '..\source\uCEFPDFPrintOptions.pas',
|
||||||
uCEFRegisterCDMCallback in '..\source\uCEFRegisterCDMCallback.pas',
|
|
||||||
uCEFThread in '..\source\uCEFThread.pas',
|
uCEFThread in '..\source\uCEFThread.pas',
|
||||||
uCEFv8Interceptor in '..\source\uCEFv8Interceptor.pas',
|
uCEFv8Interceptor in '..\source\uCEFv8Interceptor.pas',
|
||||||
uCEFWaitableEvent in '..\source\uCEFWaitableEvent.pas',
|
uCEFWaitableEvent in '..\source\uCEFWaitableEvent.pas',
|
||||||
|
@ -138,7 +138,6 @@ contains
|
|||||||
uCEFChromiumOptions in '..\source\uCEFChromiumOptions.pas',
|
uCEFChromiumOptions in '..\source\uCEFChromiumOptions.pas',
|
||||||
uCEFChromiumFontOptions in '..\source\uCEFChromiumFontOptions.pas',
|
uCEFChromiumFontOptions in '..\source\uCEFChromiumFontOptions.pas',
|
||||||
uCEFPDFPrintOptions in '..\source\uCEFPDFPrintOptions.pas',
|
uCEFPDFPrintOptions in '..\source\uCEFPDFPrintOptions.pas',
|
||||||
uCEFRegisterCDMCallback in '..\source\uCEFRegisterCDMCallback.pas',
|
|
||||||
uCEFThread in '..\source\uCEFThread.pas',
|
uCEFThread in '..\source\uCEFThread.pas',
|
||||||
uCEFv8Interceptor in '..\source\uCEFv8Interceptor.pas',
|
uCEFv8Interceptor in '..\source\uCEFv8Interceptor.pas',
|
||||||
uCEFWaitableEvent in '..\source\uCEFWaitableEvent.pas',
|
uCEFWaitableEvent in '..\source\uCEFWaitableEvent.pas',
|
||||||
|
@ -253,7 +253,6 @@
|
|||||||
<DCCReference Include="..\source\uCEFChromiumOptions.pas"/>
|
<DCCReference Include="..\source\uCEFChromiumOptions.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFChromiumFontOptions.pas"/>
|
<DCCReference Include="..\source\uCEFChromiumFontOptions.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFPDFPrintOptions.pas"/>
|
<DCCReference Include="..\source\uCEFPDFPrintOptions.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFRegisterCDMCallback.pas"/>
|
|
||||||
<DCCReference Include="..\source\uCEFThread.pas"/>
|
<DCCReference Include="..\source\uCEFThread.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFv8Interceptor.pas"/>
|
<DCCReference Include="..\source\uCEFv8Interceptor.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFWaitableEvent.pas"/>
|
<DCCReference Include="..\source\uCEFWaitableEvent.pas"/>
|
||||||
@ -390,14 +389,14 @@
|
|||||||
</Delphi.Personality>
|
</Delphi.Personality>
|
||||||
<Deployment Version="3">
|
<Deployment Version="3">
|
||||||
<DeployFile LocalName="$(BDS)\Redist\iossimulator\libcgunwind.1.0.dylib" Class="DependencyModule"/>
|
<DeployFile LocalName="$(BDS)\Redist\iossimulator\libcgunwind.1.0.dylib" Class="DependencyModule"/>
|
||||||
<DeployFile LocalName="..\..\..\..\..\..\..\Public\Documents\Embarcadero\Studio\20.0\Bpl\CEF4Delphi_FMX.bpl" Configuration="Debug" Class="ProjectOutput">
|
<DeployFile LocalName="$(BDS)\Redist\osx32\libcgunwind.1.0.dylib" Class="DependencyModule"/>
|
||||||
|
<DeployFile LocalName="..\..\..\..\..\..\..\Public\Documents\Embarcadero\Studio\19.0\Bpl\CEF4Delphi_FMX.bpl" Configuration="Release" Class="ProjectOutput">
|
||||||
<Platform Name="Win32">
|
<Platform Name="Win32">
|
||||||
<RemoteName>CEF4Delphi_FMX.bpl</RemoteName>
|
<RemoteName>CEF4Delphi_FMX.bpl</RemoteName>
|
||||||
<Overwrite>true</Overwrite>
|
<Overwrite>true</Overwrite>
|
||||||
</Platform>
|
</Platform>
|
||||||
</DeployFile>
|
</DeployFile>
|
||||||
<DeployFile LocalName="$(BDS)\Redist\osx32\libcgunwind.1.0.dylib" Class="DependencyModule"/>
|
<DeployFile LocalName="..\..\..\..\..\..\..\Public\Documents\Embarcadero\Studio\21.0\Bpl\CEF4Delphi_FMX.bpl" Configuration="Debug" Class="ProjectOutput">
|
||||||
<DeployFile LocalName="..\..\..\..\..\..\..\Public\Documents\Embarcadero\Studio\19.0\Bpl\CEF4Delphi_FMX.bpl" Configuration="Release" Class="ProjectOutput">
|
|
||||||
<Platform Name="Win32">
|
<Platform Name="Win32">
|
||||||
<RemoteName>CEF4Delphi_FMX.bpl</RemoteName>
|
<RemoteName>CEF4Delphi_FMX.bpl</RemoteName>
|
||||||
<Overwrite>true</Overwrite>
|
<Overwrite>true</Overwrite>
|
||||||
|
@ -21,8 +21,8 @@
|
|||||||
</CompilerOptions>
|
</CompilerOptions>
|
||||||
<Description Value="CEF4Delphi is an open source project created by Salvador Díaz Fau to embed Chromium-based browsers in applications made with Delphi or Lazarus/FPC."/>
|
<Description Value="CEF4Delphi is an open source project created by Salvador Díaz Fau to embed Chromium-based browsers in applications made with Delphi or Lazarus/FPC."/>
|
||||||
<License Value="MPL 1.1"/>
|
<License Value="MPL 1.1"/>
|
||||||
<Version Major="92" Release="27"/>
|
<Version Major="93" Minor="1" Release="11"/>
|
||||||
<Files Count="203">
|
<Files Count="202">
|
||||||
<Item1>
|
<Item1>
|
||||||
<Filename Value="..\source\uCEFAccessibilityHandler.pas"/>
|
<Filename Value="..\source\uCEFAccessibilityHandler.pas"/>
|
||||||
<UnitName Value="uCEFAccessibilityHandler"/>
|
<UnitName Value="uCEFAccessibilityHandler"/>
|
||||||
@ -285,574 +285,570 @@
|
|||||||
<UnitName Value="uCEFProcessMessage"/>
|
<UnitName Value="uCEFProcessMessage"/>
|
||||||
</Item65>
|
</Item65>
|
||||||
<Item66>
|
<Item66>
|
||||||
<Filename Value="..\source\uCEFRegisterCDMCallback.pas"/>
|
|
||||||
<UnitName Value="uCEFRegisterCDMCallback"/>
|
|
||||||
</Item66>
|
|
||||||
<Item67>
|
|
||||||
<Filename Value="..\source\uCEFRenderHandler.pas"/>
|
<Filename Value="..\source\uCEFRenderHandler.pas"/>
|
||||||
<UnitName Value="uCEFRenderHandler"/>
|
<UnitName Value="uCEFRenderHandler"/>
|
||||||
</Item67>
|
</Item66>
|
||||||
<Item68>
|
<Item67>
|
||||||
<Filename Value="..\source\uCEFRenderProcessHandler.pas"/>
|
<Filename Value="..\source\uCEFRenderProcessHandler.pas"/>
|
||||||
<UnitName Value="uCEFRenderProcessHandler"/>
|
<UnitName Value="uCEFRenderProcessHandler"/>
|
||||||
</Item68>
|
</Item67>
|
||||||
<Item69>
|
<Item68>
|
||||||
<Filename Value="..\source\uCEFRequest.pas"/>
|
<Filename Value="..\source\uCEFRequest.pas"/>
|
||||||
<UnitName Value="uCEFRequest"/>
|
<UnitName Value="uCEFRequest"/>
|
||||||
</Item69>
|
</Item68>
|
||||||
<Item70>
|
<Item69>
|
||||||
<Filename Value="..\source\uCEFRequestCallback.pas"/>
|
<Filename Value="..\source\uCEFRequestCallback.pas"/>
|
||||||
<UnitName Value="uCEFRequestCallback"/>
|
<UnitName Value="uCEFRequestCallback"/>
|
||||||
</Item70>
|
</Item69>
|
||||||
<Item71>
|
<Item70>
|
||||||
<Filename Value="..\source\uCEFRequestContext.pas"/>
|
<Filename Value="..\source\uCEFRequestContext.pas"/>
|
||||||
<UnitName Value="uCEFRequestContext"/>
|
<UnitName Value="uCEFRequestContext"/>
|
||||||
</Item71>
|
</Item70>
|
||||||
<Item72>
|
<Item71>
|
||||||
<Filename Value="..\source\uCEFRequestContextHandler.pas"/>
|
<Filename Value="..\source\uCEFRequestContextHandler.pas"/>
|
||||||
<UnitName Value="uCEFRequestContextHandler"/>
|
<UnitName Value="uCEFRequestContextHandler"/>
|
||||||
</Item72>
|
</Item71>
|
||||||
<Item73>
|
<Item72>
|
||||||
<Filename Value="..\source\uCEFRequestHandler.pas"/>
|
<Filename Value="..\source\uCEFRequestHandler.pas"/>
|
||||||
<UnitName Value="uCEFRequestHandler"/>
|
<UnitName Value="uCEFRequestHandler"/>
|
||||||
</Item73>
|
</Item72>
|
||||||
<Item74>
|
<Item73>
|
||||||
<Filename Value="..\source\uCEFResolveCallback.pas"/>
|
<Filename Value="..\source\uCEFResolveCallback.pas"/>
|
||||||
<UnitName Value="uCEFResolveCallback"/>
|
<UnitName Value="uCEFResolveCallback"/>
|
||||||
</Item74>
|
</Item73>
|
||||||
<Item75>
|
<Item74>
|
||||||
<Filename Value="..\source\uCEFResourceBundle.pas"/>
|
<Filename Value="..\source\uCEFResourceBundle.pas"/>
|
||||||
<UnitName Value="uCEFResourceBundle"/>
|
<UnitName Value="uCEFResourceBundle"/>
|
||||||
</Item75>
|
</Item74>
|
||||||
<Item76>
|
<Item75>
|
||||||
<Filename Value="..\source\uCEFResourceBundleHandler.pas"/>
|
<Filename Value="..\source\uCEFResourceBundleHandler.pas"/>
|
||||||
<UnitName Value="uCEFResourceBundleHandler"/>
|
<UnitName Value="uCEFResourceBundleHandler"/>
|
||||||
</Item76>
|
</Item75>
|
||||||
<Item77>
|
<Item76>
|
||||||
<Filename Value="..\source\uCEFResourceHandler.pas"/>
|
<Filename Value="..\source\uCEFResourceHandler.pas"/>
|
||||||
<UnitName Value="uCEFResourceHandler"/>
|
<UnitName Value="uCEFResourceHandler"/>
|
||||||
</Item77>
|
</Item76>
|
||||||
<Item78>
|
<Item77>
|
||||||
<Filename Value="..\source\uCEFResponse.pas"/>
|
<Filename Value="..\source\uCEFResponse.pas"/>
|
||||||
<UnitName Value="uCEFResponse"/>
|
<UnitName Value="uCEFResponse"/>
|
||||||
</Item78>
|
</Item77>
|
||||||
<Item79>
|
<Item78>
|
||||||
<Filename Value="..\source\uCEFResponseFilter.pas"/>
|
<Filename Value="..\source\uCEFResponseFilter.pas"/>
|
||||||
<UnitName Value="uCEFResponseFilter"/>
|
<UnitName Value="uCEFResponseFilter"/>
|
||||||
</Item79>
|
</Item78>
|
||||||
<Item80>
|
<Item79>
|
||||||
<Filename Value="..\source\uCEFRunContextMenuCallback.pas"/>
|
<Filename Value="..\source\uCEFRunContextMenuCallback.pas"/>
|
||||||
<UnitName Value="uCEFRunContextMenuCallback"/>
|
<UnitName Value="uCEFRunContextMenuCallback"/>
|
||||||
</Item80>
|
</Item79>
|
||||||
<Item81>
|
<Item80>
|
||||||
<Filename Value="..\source\uCEFRunFileDialogCallback.pas"/>
|
<Filename Value="..\source\uCEFRunFileDialogCallback.pas"/>
|
||||||
<UnitName Value="uCEFRunFileDialogCallback"/>
|
<UnitName Value="uCEFRunFileDialogCallback"/>
|
||||||
</Item81>
|
</Item80>
|
||||||
<Item82>
|
<Item81>
|
||||||
<Filename Value="..\source\uCEFSchemeHandlerFactory.pas"/>
|
<Filename Value="..\source\uCEFSchemeHandlerFactory.pas"/>
|
||||||
<UnitName Value="uCEFSchemeHandlerFactory"/>
|
<UnitName Value="uCEFSchemeHandlerFactory"/>
|
||||||
</Item82>
|
</Item81>
|
||||||
<Item83>
|
<Item82>
|
||||||
<Filename Value="..\source\uCEFSchemeRegistrar.pas"/>
|
<Filename Value="..\source\uCEFSchemeRegistrar.pas"/>
|
||||||
<UnitName Value="uCEFSchemeRegistrar"/>
|
<UnitName Value="uCEFSchemeRegistrar"/>
|
||||||
</Item83>
|
</Item82>
|
||||||
<Item84>
|
<Item83>
|
||||||
<Filename Value="..\source\uCEFSelectClientCertificateCallback.pas"/>
|
<Filename Value="..\source\uCEFSelectClientCertificateCallback.pas"/>
|
||||||
<UnitName Value="uCEFSelectClientCertificateCallback"/>
|
<UnitName Value="uCEFSelectClientCertificateCallback"/>
|
||||||
</Item84>
|
</Item83>
|
||||||
<Item85>
|
<Item84>
|
||||||
<Filename Value="..\source\uCEFSetCookieCallback.pas"/>
|
<Filename Value="..\source\uCEFSetCookieCallback.pas"/>
|
||||||
<UnitName Value="uCEFSetCookieCallback"/>
|
<UnitName Value="uCEFSetCookieCallback"/>
|
||||||
</Item85>
|
</Item84>
|
||||||
<Item86>
|
<Item85>
|
||||||
<Filename Value="..\source\uCEFSslInfo.pas"/>
|
<Filename Value="..\source\uCEFSslInfo.pas"/>
|
||||||
<UnitName Value="uCEFSslInfo"/>
|
<UnitName Value="uCEFSslInfo"/>
|
||||||
</Item86>
|
</Item85>
|
||||||
<Item87>
|
<Item86>
|
||||||
<Filename Value="..\source\uCEFSSLStatus.pas"/>
|
<Filename Value="..\source\uCEFSSLStatus.pas"/>
|
||||||
<UnitName Value="uCEFSSLStatus"/>
|
<UnitName Value="uCEFSSLStatus"/>
|
||||||
</Item87>
|
</Item86>
|
||||||
<Item88>
|
<Item87>
|
||||||
<Filename Value="..\source\uCEFStreamReader.pas"/>
|
<Filename Value="..\source\uCEFStreamReader.pas"/>
|
||||||
<UnitName Value="uCEFStreamReader"/>
|
<UnitName Value="uCEFStreamReader"/>
|
||||||
</Item88>
|
</Item87>
|
||||||
<Item89>
|
<Item88>
|
||||||
<Filename Value="..\source\uCEFStreamWriter.pas"/>
|
<Filename Value="..\source\uCEFStreamWriter.pas"/>
|
||||||
<UnitName Value="uCEFStreamWriter"/>
|
<UnitName Value="uCEFStreamWriter"/>
|
||||||
</Item89>
|
</Item88>
|
||||||
<Item90>
|
<Item89>
|
||||||
<Filename Value="..\source\uCEFStringList.pas"/>
|
<Filename Value="..\source\uCEFStringList.pas"/>
|
||||||
<UnitName Value="uCEFStringList"/>
|
<UnitName Value="uCEFStringList"/>
|
||||||
</Item90>
|
</Item89>
|
||||||
<Item91>
|
<Item90>
|
||||||
<Filename Value="..\source\uCEFStringMap.pas"/>
|
<Filename Value="..\source\uCEFStringMap.pas"/>
|
||||||
<UnitName Value="uCEFStringMap"/>
|
<UnitName Value="uCEFStringMap"/>
|
||||||
</Item91>
|
</Item90>
|
||||||
<Item92>
|
<Item91>
|
||||||
<Filename Value="..\source\uCEFStringMultimap.pas"/>
|
<Filename Value="..\source\uCEFStringMultimap.pas"/>
|
||||||
<UnitName Value="uCEFStringMultimap"/>
|
<UnitName Value="uCEFStringMultimap"/>
|
||||||
</Item92>
|
</Item91>
|
||||||
<Item93>
|
<Item92>
|
||||||
<Filename Value="..\source\uCEFStringVisitor.pas"/>
|
<Filename Value="..\source\uCEFStringVisitor.pas"/>
|
||||||
<UnitName Value="uCEFStringVisitor"/>
|
<UnitName Value="uCEFStringVisitor"/>
|
||||||
</Item93>
|
</Item92>
|
||||||
<Item94>
|
<Item93>
|
||||||
<Filename Value="..\source\uCEFTask.pas"/>
|
<Filename Value="..\source\uCEFTask.pas"/>
|
||||||
<UnitName Value="uCEFTask"/>
|
<UnitName Value="uCEFTask"/>
|
||||||
</Item94>
|
</Item93>
|
||||||
<Item95>
|
<Item94>
|
||||||
<Filename Value="..\source\uCEFTaskRunner.pas"/>
|
<Filename Value="..\source\uCEFTaskRunner.pas"/>
|
||||||
<UnitName Value="uCEFTaskRunner"/>
|
<UnitName Value="uCEFTaskRunner"/>
|
||||||
</Item95>
|
</Item94>
|
||||||
<Item96>
|
<Item95>
|
||||||
<Filename Value="..\source\uCEFThread.pas"/>
|
<Filename Value="..\source\uCEFThread.pas"/>
|
||||||
<UnitName Value="uCEFThread"/>
|
<UnitName Value="uCEFThread"/>
|
||||||
</Item96>
|
</Item95>
|
||||||
<Item97>
|
<Item96>
|
||||||
<Filename Value="..\source\uCEFTypes.pas"/>
|
<Filename Value="..\source\uCEFTypes.pas"/>
|
||||||
<UnitName Value="uCEFTypes"/>
|
<UnitName Value="uCEFTypes"/>
|
||||||
</Item97>
|
</Item96>
|
||||||
<Item98>
|
<Item97>
|
||||||
<Filename Value="..\source\uCEFUrlRequest.pas"/>
|
<Filename Value="..\source\uCEFUrlRequest.pas"/>
|
||||||
<UnitName Value="uCEFUrlRequest"/>
|
<UnitName Value="uCEFUrlRequest"/>
|
||||||
</Item98>
|
</Item97>
|
||||||
<Item99>
|
<Item98>
|
||||||
<Filename Value="..\source\uCEFUrlrequestClient.pas"/>
|
<Filename Value="..\source\uCEFUrlrequestClient.pas"/>
|
||||||
<UnitName Value="uCEFUrlrequestClient"/>
|
<UnitName Value="uCEFUrlrequestClient"/>
|
||||||
</Item99>
|
</Item98>
|
||||||
<Item100>
|
<Item99>
|
||||||
<Filename Value="..\source\uCEFv8Accessor.pas"/>
|
<Filename Value="..\source\uCEFv8Accessor.pas"/>
|
||||||
<UnitName Value="uCEFv8Accessor"/>
|
<UnitName Value="uCEFv8Accessor"/>
|
||||||
</Item100>
|
</Item99>
|
||||||
<Item101>
|
<Item100>
|
||||||
<Filename Value="..\source\uCEFv8ArrayBufferReleaseCallback.pas"/>
|
<Filename Value="..\source\uCEFv8ArrayBufferReleaseCallback.pas"/>
|
||||||
<UnitName Value="uCEFv8ArrayBufferReleaseCallback"/>
|
<UnitName Value="uCEFv8ArrayBufferReleaseCallback"/>
|
||||||
</Item101>
|
</Item100>
|
||||||
<Item102>
|
<Item101>
|
||||||
<Filename Value="..\source\uCEFv8Context.pas"/>
|
<Filename Value="..\source\uCEFv8Context.pas"/>
|
||||||
<UnitName Value="uCEFv8Context"/>
|
<UnitName Value="uCEFv8Context"/>
|
||||||
</Item102>
|
</Item101>
|
||||||
<Item103>
|
<Item102>
|
||||||
<Filename Value="..\source\uCEFv8Exception.pas"/>
|
<Filename Value="..\source\uCEFv8Exception.pas"/>
|
||||||
<UnitName Value="uCEFv8Exception"/>
|
<UnitName Value="uCEFv8Exception"/>
|
||||||
</Item103>
|
</Item102>
|
||||||
<Item104>
|
<Item103>
|
||||||
<Filename Value="..\source\uCEFv8Handler.pas"/>
|
<Filename Value="..\source\uCEFv8Handler.pas"/>
|
||||||
<UnitName Value="uCEFv8Handler"/>
|
<UnitName Value="uCEFv8Handler"/>
|
||||||
</Item104>
|
</Item103>
|
||||||
<Item105>
|
<Item104>
|
||||||
<Filename Value="..\source\uCEFv8Interceptor.pas"/>
|
<Filename Value="..\source\uCEFv8Interceptor.pas"/>
|
||||||
<UnitName Value="uCEFv8Interceptor"/>
|
<UnitName Value="uCEFv8Interceptor"/>
|
||||||
</Item105>
|
</Item104>
|
||||||
<Item106>
|
<Item105>
|
||||||
<Filename Value="..\source\uCEFv8StackFrame.pas"/>
|
<Filename Value="..\source\uCEFv8StackFrame.pas"/>
|
||||||
<UnitName Value="uCEFv8StackFrame"/>
|
<UnitName Value="uCEFv8StackFrame"/>
|
||||||
</Item106>
|
</Item105>
|
||||||
<Item107>
|
<Item106>
|
||||||
<Filename Value="..\source\uCEFv8StackTrace.pas"/>
|
<Filename Value="..\source\uCEFv8StackTrace.pas"/>
|
||||||
<UnitName Value="uCEFv8StackTrace"/>
|
<UnitName Value="uCEFv8StackTrace"/>
|
||||||
</Item107>
|
</Item106>
|
||||||
<Item108>
|
<Item107>
|
||||||
<Filename Value="..\source\uCEFv8Value.pas"/>
|
<Filename Value="..\source\uCEFv8Value.pas"/>
|
||||||
<UnitName Value="uCEFv8Value"/>
|
<UnitName Value="uCEFv8Value"/>
|
||||||
</Item108>
|
</Item107>
|
||||||
<Item109>
|
<Item108>
|
||||||
<Filename Value="..\source\uCEFValue.pas"/>
|
<Filename Value="..\source\uCEFValue.pas"/>
|
||||||
<UnitName Value="uCEFValue"/>
|
<UnitName Value="uCEFValue"/>
|
||||||
</Item109>
|
</Item108>
|
||||||
<Item110>
|
<Item109>
|
||||||
<Filename Value="..\source\uCEFWaitableEvent.pas"/>
|
<Filename Value="..\source\uCEFWaitableEvent.pas"/>
|
||||||
<UnitName Value="uCEFWaitableEvent"/>
|
<UnitName Value="uCEFWaitableEvent"/>
|
||||||
</Item110>
|
</Item109>
|
||||||
<Item111>
|
<Item110>
|
||||||
<Filename Value="..\source\uCEFWebPluginInfo.pas"/>
|
<Filename Value="..\source\uCEFWebPluginInfo.pas"/>
|
||||||
<UnitName Value="uCEFWebPluginInfo"/>
|
<UnitName Value="uCEFWebPluginInfo"/>
|
||||||
</Item111>
|
</Item110>
|
||||||
<Item112>
|
<Item111>
|
||||||
<Filename Value="..\source\uCEFWebPluginInfoVisitor.pas"/>
|
<Filename Value="..\source\uCEFWebPluginInfoVisitor.pas"/>
|
||||||
<UnitName Value="uCEFWebPluginInfoVisitor"/>
|
<UnitName Value="uCEFWebPluginInfoVisitor"/>
|
||||||
</Item112>
|
</Item111>
|
||||||
<Item113>
|
<Item112>
|
||||||
<Filename Value="..\source\uCEFWebPluginUnstableCallback.pas"/>
|
<Filename Value="..\source\uCEFWebPluginUnstableCallback.pas"/>
|
||||||
<UnitName Value="uCEFWebPluginUnstableCallback"/>
|
<UnitName Value="uCEFWebPluginUnstableCallback"/>
|
||||||
</Item113>
|
</Item112>
|
||||||
<Item114>
|
<Item113>
|
||||||
<Filename Value="..\source\uCEFWindowParent.pas"/>
|
<Filename Value="..\source\uCEFWindowParent.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFWindowParent"/>
|
<UnitName Value="uCEFWindowParent"/>
|
||||||
</Item114>
|
</Item113>
|
||||||
<Item115>
|
<Item114>
|
||||||
<Filename Value="..\source\uCEFWorkScheduler.pas"/>
|
<Filename Value="..\source\uCEFWorkScheduler.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFWorkScheduler"/>
|
<UnitName Value="uCEFWorkScheduler"/>
|
||||||
</Item115>
|
</Item114>
|
||||||
<Item116>
|
<Item115>
|
||||||
<Filename Value="..\source\uCEFWorkSchedulerThread.pas"/>
|
<Filename Value="..\source\uCEFWorkSchedulerThread.pas"/>
|
||||||
<UnitName Value="uCEFWorkSchedulerThread"/>
|
<UnitName Value="uCEFWorkSchedulerThread"/>
|
||||||
</Item116>
|
</Item115>
|
||||||
<Item117>
|
<Item116>
|
||||||
<Filename Value="..\source\uCEFWriteHandler.pas"/>
|
<Filename Value="..\source\uCEFWriteHandler.pas"/>
|
||||||
<UnitName Value="uCEFWriteHandler"/>
|
<UnitName Value="uCEFWriteHandler"/>
|
||||||
</Item117>
|
</Item116>
|
||||||
<Item118>
|
<Item117>
|
||||||
<Filename Value="..\source\uCEFX509Certificate.pas"/>
|
<Filename Value="..\source\uCEFX509Certificate.pas"/>
|
||||||
<UnitName Value="uCEFX509Certificate"/>
|
<UnitName Value="uCEFX509Certificate"/>
|
||||||
</Item118>
|
</Item117>
|
||||||
<Item119>
|
<Item118>
|
||||||
<Filename Value="..\source\uCEFX509CertPrincipal.pas"/>
|
<Filename Value="..\source\uCEFX509CertPrincipal.pas"/>
|
||||||
<UnitName Value="uCEFX509CertPrincipal"/>
|
<UnitName Value="uCEFX509CertPrincipal"/>
|
||||||
</Item119>
|
</Item118>
|
||||||
<Item120>
|
<Item119>
|
||||||
<Filename Value="..\source\uCEFXmlReader.pas"/>
|
<Filename Value="..\source\uCEFXmlReader.pas"/>
|
||||||
<UnitName Value="uCEFXmlReader"/>
|
<UnitName Value="uCEFXmlReader"/>
|
||||||
</Item120>
|
</Item119>
|
||||||
<Item121>
|
<Item120>
|
||||||
<Filename Value="..\source\uCEFZipReader.pas"/>
|
<Filename Value="..\source\uCEFZipReader.pas"/>
|
||||||
<UnitName Value="uCEFZipReader"/>
|
<UnitName Value="uCEFZipReader"/>
|
||||||
</Item121>
|
</Item120>
|
||||||
<Item122>
|
<Item121>
|
||||||
<Filename Value="..\source\uCEFChromiumCore.pas"/>
|
<Filename Value="..\source\uCEFChromiumCore.pas"/>
|
||||||
<UnitName Value="uCEFChromiumCore"/>
|
<UnitName Value="uCEFChromiumCore"/>
|
||||||
</Item122>
|
</Item121>
|
||||||
<Item123>
|
<Item122>
|
||||||
<Filename Value="..\source\uCEFChromium.pas"/>
|
<Filename Value="..\source\uCEFChromium.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFChromium"/>
|
<UnitName Value="uCEFChromium"/>
|
||||||
</Item123>
|
</Item122>
|
||||||
<Item124>
|
<Item123>
|
||||||
<Filename Value="..\source\uCEFBufferPanel.pas"/>
|
<Filename Value="..\source\uCEFBufferPanel.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFBufferPanel"/>
|
<UnitName Value="uCEFBufferPanel"/>
|
||||||
</Item124>
|
</Item123>
|
||||||
<Item125>
|
<Item124>
|
||||||
<Filename Value="..\source\uCEFServer.pas"/>
|
<Filename Value="..\source\uCEFServer.pas"/>
|
||||||
<UnitName Value="uCEFServer"/>
|
<UnitName Value="uCEFServer"/>
|
||||||
</Item125>
|
</Item124>
|
||||||
<Item126>
|
<Item125>
|
||||||
<Filename Value="..\source\uCEFServerComponent.pas"/>
|
<Filename Value="..\source\uCEFServerComponent.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFServerComponent"/>
|
<UnitName Value="uCEFServerComponent"/>
|
||||||
</Item126>
|
</Item125>
|
||||||
<Item127>
|
<Item126>
|
||||||
<Filename Value="..\source\uCEFServerEvents.pas"/>
|
<Filename Value="..\source\uCEFServerEvents.pas"/>
|
||||||
<UnitName Value="uCEFServerEvents"/>
|
<UnitName Value="uCEFServerEvents"/>
|
||||||
</Item127>
|
</Item126>
|
||||||
<Item128>
|
<Item127>
|
||||||
<Filename Value="..\source\uCEFServerHandler.pas"/>
|
<Filename Value="..\source\uCEFServerHandler.pas"/>
|
||||||
<UnitName Value="uCEFServerHandler"/>
|
<UnitName Value="uCEFServerHandler"/>
|
||||||
|
</Item127>
|
||||||
|
<Item128>
|
||||||
|
<Filename Value="..\source\res\tbufferpanel.lrs"/>
|
||||||
|
<Type Value="LRS"/>
|
||||||
</Item128>
|
</Item128>
|
||||||
<Item129>
|
<Item129>
|
||||||
<Filename Value="..\source\res\tbufferpanel.lrs"/>
|
<Filename Value="..\source\res\tcefservercomponent.lrs"/>
|
||||||
<Type Value="LRS"/>
|
<Type Value="LRS"/>
|
||||||
</Item129>
|
</Item129>
|
||||||
<Item130>
|
<Item130>
|
||||||
<Filename Value="..\source\res\tcefservercomponent.lrs"/>
|
<Filename Value="..\source\res\tcefwindowparent.lrs"/>
|
||||||
<Type Value="LRS"/>
|
<Type Value="LRS"/>
|
||||||
</Item130>
|
</Item130>
|
||||||
<Item131>
|
<Item131>
|
||||||
<Filename Value="..\source\res\tcefwindowparent.lrs"/>
|
<Filename Value="..\source\res\tcefworkscheduler.lrs"/>
|
||||||
<Type Value="LRS"/>
|
<Type Value="LRS"/>
|
||||||
</Item131>
|
</Item131>
|
||||||
<Item132>
|
<Item132>
|
||||||
<Filename Value="..\source\res\tcefworkscheduler.lrs"/>
|
<Filename Value="..\source\res\tchromium.lrs"/>
|
||||||
<Type Value="LRS"/>
|
<Type Value="LRS"/>
|
||||||
</Item132>
|
</Item132>
|
||||||
<Item133>
|
<Item133>
|
||||||
<Filename Value="..\source\res\tchromium.lrs"/>
|
<Filename Value="..\source\res\tchromiumwindow.lrs"/>
|
||||||
<Type Value="LRS"/>
|
<Type Value="LRS"/>
|
||||||
</Item133>
|
</Item133>
|
||||||
<Item134>
|
<Item134>
|
||||||
<Filename Value="..\source\res\tchromiumwindow.lrs"/>
|
|
||||||
<Type Value="LRS"/>
|
|
||||||
</Item134>
|
|
||||||
<Item135>
|
|
||||||
<Filename Value="..\source\uCEFWinControl.pas"/>
|
<Filename Value="..\source\uCEFWinControl.pas"/>
|
||||||
<UnitName Value="uCEFWinControl"/>
|
<UnitName Value="uCEFWinControl"/>
|
||||||
</Item135>
|
</Item134>
|
||||||
<Item136>
|
<Item135>
|
||||||
<Filename Value="..\source\uCEFLinkedWindowParent.pas"/>
|
<Filename Value="..\source\uCEFLinkedWindowParent.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFLinkedWindowParent"/>
|
<UnitName Value="uCEFLinkedWindowParent"/>
|
||||||
</Item136>
|
</Item135>
|
||||||
<Item137>
|
<Item136>
|
||||||
<Filename Value="..\source\uCEFUrlRequestClientEvents.pas"/>
|
<Filename Value="..\source\uCEFUrlRequestClientEvents.pas"/>
|
||||||
<UnitName Value="uCEFUrlRequestClientEvents"/>
|
<UnitName Value="uCEFUrlRequestClientEvents"/>
|
||||||
</Item137>
|
</Item136>
|
||||||
<Item138>
|
<Item137>
|
||||||
<Filename Value="..\source\uCEFUrlRequestClientComponent.pas"/>
|
<Filename Value="..\source\uCEFUrlRequestClientComponent.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFUrlRequestClientComponent"/>
|
<UnitName Value="uCEFUrlRequestClientComponent"/>
|
||||||
</Item138>
|
</Item137>
|
||||||
<Item139>
|
<Item138>
|
||||||
<Filename Value="..\source\uCEFOSRIMEHandler.pas"/>
|
<Filename Value="..\source\uCEFOSRIMEHandler.pas"/>
|
||||||
<UnitName Value="uCEFOSRIMEHandler"/>
|
<UnitName Value="uCEFOSRIMEHandler"/>
|
||||||
</Item139>
|
</Item138>
|
||||||
<Item140>
|
<Item139>
|
||||||
<Filename Value="..\source\uCEFCookieAccessFilter.pas"/>
|
<Filename Value="..\source\uCEFCookieAccessFilter.pas"/>
|
||||||
<UnitName Value="uCEFCookieAccessFilter"/>
|
<UnitName Value="uCEFCookieAccessFilter"/>
|
||||||
</Item140>
|
</Item139>
|
||||||
<Item141>
|
<Item140>
|
||||||
<Filename Value="..\source\uCEFResourceReadCallback.pas"/>
|
<Filename Value="..\source\uCEFResourceReadCallback.pas"/>
|
||||||
<UnitName Value="uCEFResourceReadCallback"/>
|
<UnitName Value="uCEFResourceReadCallback"/>
|
||||||
</Item141>
|
</Item140>
|
||||||
<Item142>
|
<Item141>
|
||||||
<Filename Value="..\source\uCEFResourceRequestHandler.pas"/>
|
<Filename Value="..\source\uCEFResourceRequestHandler.pas"/>
|
||||||
<UnitName Value="uCEFResourceRequestHandler"/>
|
<UnitName Value="uCEFResourceRequestHandler"/>
|
||||||
</Item142>
|
</Item141>
|
||||||
<Item143>
|
<Item142>
|
||||||
<Filename Value="..\source\uCEFResourceSkipCallback.pas"/>
|
<Filename Value="..\source\uCEFResourceSkipCallback.pas"/>
|
||||||
<UnitName Value="uCEFResourceSkipCallback"/>
|
<UnitName Value="uCEFResourceSkipCallback"/>
|
||||||
</Item143>
|
</Item142>
|
||||||
<Item144>
|
<Item143>
|
||||||
<Filename Value="..\source\res\tcefsentinel.lrs"/>
|
<Filename Value="..\source\res\tcefsentinel.lrs"/>
|
||||||
<Type Value="LRS"/>
|
<Type Value="LRS"/>
|
||||||
</Item144>
|
</Item143>
|
||||||
<Item145>
|
<Item144>
|
||||||
<Filename Value="..\source\uCEFSentinel.pas"/>
|
<Filename Value="..\source\uCEFSentinel.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFSentinel"/>
|
<UnitName Value="uCEFSentinel"/>
|
||||||
</Item145>
|
</Item144>
|
||||||
<Item146>
|
<Item145>
|
||||||
<Filename Value="..\source\uCEFApplicationCore.pas"/>
|
<Filename Value="..\source\uCEFApplicationCore.pas"/>
|
||||||
<UnitName Value="uCEFApplicationCore"/>
|
<UnitName Value="uCEFApplicationCore"/>
|
||||||
</Item146>
|
</Item145>
|
||||||
<Item147>
|
<Item146>
|
||||||
<Filename Value="..\source\uCEFOAuth2Helper.pas"/>
|
<Filename Value="..\source\uCEFOAuth2Helper.pas"/>
|
||||||
<UnitName Value="uCEFOAuth2Helper"/>
|
<UnitName Value="uCEFOAuth2Helper"/>
|
||||||
</Item147>
|
</Item146>
|
||||||
<Item148>
|
<Item147>
|
||||||
<Filename Value="..\source\uCEFMediaObserver.pas"/>
|
<Filename Value="..\source\uCEFMediaObserver.pas"/>
|
||||||
<UnitName Value="uCEFMediaObserver"/>
|
<UnitName Value="uCEFMediaObserver"/>
|
||||||
</Item148>
|
</Item147>
|
||||||
<Item149>
|
<Item148>
|
||||||
<Filename Value="..\source\uCEFMediaRoute.pas"/>
|
<Filename Value="..\source\uCEFMediaRoute.pas"/>
|
||||||
<UnitName Value="uCEFMediaRoute"/>
|
<UnitName Value="uCEFMediaRoute"/>
|
||||||
</Item149>
|
</Item148>
|
||||||
<Item150>
|
<Item149>
|
||||||
<Filename Value="..\source\uCEFMediaRouteCreateCallback.pas"/>
|
<Filename Value="..\source\uCEFMediaRouteCreateCallback.pas"/>
|
||||||
<UnitName Value="uCEFMediaRouteCreateCallback"/>
|
<UnitName Value="uCEFMediaRouteCreateCallback"/>
|
||||||
</Item150>
|
</Item149>
|
||||||
<Item151>
|
<Item150>
|
||||||
<Filename Value="..\source\uCEFMediaRouter.pas"/>
|
<Filename Value="..\source\uCEFMediaRouter.pas"/>
|
||||||
<UnitName Value="uCEFMediaRouter"/>
|
<UnitName Value="uCEFMediaRouter"/>
|
||||||
</Item151>
|
</Item150>
|
||||||
<Item152>
|
<Item151>
|
||||||
<Filename Value="..\source\uCEFMediaSink.pas"/>
|
<Filename Value="..\source\uCEFMediaSink.pas"/>
|
||||||
<UnitName Value="uCEFMediaSink"/>
|
<UnitName Value="uCEFMediaSink"/>
|
||||||
</Item152>
|
</Item151>
|
||||||
<Item153>
|
<Item152>
|
||||||
<Filename Value="..\source\uCEFMediaSource.pas"/>
|
<Filename Value="..\source\uCEFMediaSource.pas"/>
|
||||||
<UnitName Value="uCEFMediaSource"/>
|
<UnitName Value="uCEFMediaSource"/>
|
||||||
</Item153>
|
</Item152>
|
||||||
<Item154>
|
<Item153>
|
||||||
<Filename Value="..\source\uCEFRegistration.pas"/>
|
<Filename Value="..\source\uCEFRegistration.pas"/>
|
||||||
<UnitName Value="uCEFRegistration"/>
|
<UnitName Value="uCEFRegistration"/>
|
||||||
</Item154>
|
</Item153>
|
||||||
<Item155>
|
<Item154>
|
||||||
<Filename Value="..\source\uCEFWindowDelegate.pas"/>
|
<Filename Value="..\source\uCEFWindowDelegate.pas"/>
|
||||||
<UnitName Value="uCEFWindowDelegate"/>
|
<UnitName Value="uCEFWindowDelegate"/>
|
||||||
</Item155>
|
</Item154>
|
||||||
<Item156>
|
<Item155>
|
||||||
<Filename Value="..\source\uCEFWindow.pas"/>
|
<Filename Value="..\source\uCEFWindow.pas"/>
|
||||||
<UnitName Value="uCEFWindow"/>
|
<UnitName Value="uCEFWindow"/>
|
||||||
</Item156>
|
</Item155>
|
||||||
<Item157>
|
<Item156>
|
||||||
<Filename Value="..\source\uCEFMenuButtonDelegate.pas"/>
|
<Filename Value="..\source\uCEFMenuButtonDelegate.pas"/>
|
||||||
<UnitName Value="uCEFMenuButtonDelegate"/>
|
<UnitName Value="uCEFMenuButtonDelegate"/>
|
||||||
</Item157>
|
</Item156>
|
||||||
<Item158>
|
<Item157>
|
||||||
<Filename Value="..\source\uCEFMenuButtonPressedLock.pas"/>
|
<Filename Value="..\source\uCEFMenuButtonPressedLock.pas"/>
|
||||||
<UnitName Value="uCEFMenuButtonPressedLock"/>
|
<UnitName Value="uCEFMenuButtonPressedLock"/>
|
||||||
</Item158>
|
</Item157>
|
||||||
<Item159>
|
<Item158>
|
||||||
<Filename Value="..\source\uCEFMenuButton.pas"/>
|
<Filename Value="..\source\uCEFMenuButton.pas"/>
|
||||||
<UnitName Value="uCEFMenuButton"/>
|
<UnitName Value="uCEFMenuButton"/>
|
||||||
</Item159>
|
</Item158>
|
||||||
<Item160>
|
<Item159>
|
||||||
<Filename Value="..\source\uCEFLabelButton.pas"/>
|
<Filename Value="..\source\uCEFLabelButton.pas"/>
|
||||||
<UnitName Value="uCEFLabelButton"/>
|
<UnitName Value="uCEFLabelButton"/>
|
||||||
</Item160>
|
</Item159>
|
||||||
<Item161>
|
<Item160>
|
||||||
<Filename Value="..\source\uCEFButtonDelegate.pas"/>
|
<Filename Value="..\source\uCEFButtonDelegate.pas"/>
|
||||||
<UnitName Value="uCEFButtonDelegate"/>
|
<UnitName Value="uCEFButtonDelegate"/>
|
||||||
</Item161>
|
</Item160>
|
||||||
<Item162>
|
<Item161>
|
||||||
<Filename Value="..\source\uCEFButton.pas"/>
|
<Filename Value="..\source\uCEFButton.pas"/>
|
||||||
<UnitName Value="uCEFButton"/>
|
<UnitName Value="uCEFButton"/>
|
||||||
</Item162>
|
</Item161>
|
||||||
<Item163>
|
<Item162>
|
||||||
<Filename Value="..\source\uCEFBrowserViewDelegate.pas"/>
|
<Filename Value="..\source\uCEFBrowserViewDelegate.pas"/>
|
||||||
<UnitName Value="uCEFBrowserViewDelegate"/>
|
<UnitName Value="uCEFBrowserViewDelegate"/>
|
||||||
</Item163>
|
</Item162>
|
||||||
<Item164>
|
<Item163>
|
||||||
<Filename Value="..\source\uCEFBrowserView.pas"/>
|
<Filename Value="..\source\uCEFBrowserView.pas"/>
|
||||||
<UnitName Value="uCEFBrowserView"/>
|
<UnitName Value="uCEFBrowserView"/>
|
||||||
</Item164>
|
</Item163>
|
||||||
<Item165>
|
<Item164>
|
||||||
<Filename Value="..\source\uCEFPanelDelegate.pas"/>
|
<Filename Value="..\source\uCEFPanelDelegate.pas"/>
|
||||||
<UnitName Value="uCEFPanelDelegate"/>
|
<UnitName Value="uCEFPanelDelegate"/>
|
||||||
</Item165>
|
</Item164>
|
||||||
<Item166>
|
<Item165>
|
||||||
<Filename Value="..\source\uCEFPanel.pas"/>
|
<Filename Value="..\source\uCEFPanel.pas"/>
|
||||||
<UnitName Value="uCEFPanel"/>
|
<UnitName Value="uCEFPanel"/>
|
||||||
</Item166>
|
</Item165>
|
||||||
<Item167>
|
<Item166>
|
||||||
<Filename Value="..\source\uCEFScrollView.pas"/>
|
<Filename Value="..\source\uCEFScrollView.pas"/>
|
||||||
<UnitName Value="uCEFScrollView"/>
|
<UnitName Value="uCEFScrollView"/>
|
||||||
</Item167>
|
</Item166>
|
||||||
<Item168>
|
<Item167>
|
||||||
<Filename Value="..\source\uCEFTextfieldDelegate.pas"/>
|
<Filename Value="..\source\uCEFTextfieldDelegate.pas"/>
|
||||||
<UnitName Value="uCEFTextfieldDelegate"/>
|
<UnitName Value="uCEFTextfieldDelegate"/>
|
||||||
</Item168>
|
</Item167>
|
||||||
<Item169>
|
<Item168>
|
||||||
<Filename Value="..\source\uCEFTextfield.pas"/>
|
<Filename Value="..\source\uCEFTextfield.pas"/>
|
||||||
<UnitName Value="uCEFTextfield"/>
|
<UnitName Value="uCEFTextfield"/>
|
||||||
</Item169>
|
</Item168>
|
||||||
<Item170>
|
<Item169>
|
||||||
<Filename Value="..\source\uCEFViewDelegate.pas"/>
|
<Filename Value="..\source\uCEFViewDelegate.pas"/>
|
||||||
<UnitName Value="uCEFViewDelegate"/>
|
<UnitName Value="uCEFViewDelegate"/>
|
||||||
</Item170>
|
</Item169>
|
||||||
<Item171>
|
<Item170>
|
||||||
<Filename Value="..\source\uCEFView.pas"/>
|
<Filename Value="..\source\uCEFView.pas"/>
|
||||||
<UnitName Value="uCEFView"/>
|
<UnitName Value="uCEFView"/>
|
||||||
</Item171>
|
</Item170>
|
||||||
<Item172>
|
<Item171>
|
||||||
<Filename Value="..\source\uCEFFillLayout.pas"/>
|
<Filename Value="..\source\uCEFFillLayout.pas"/>
|
||||||
<UnitName Value="uCEFFillLayout"/>
|
<UnitName Value="uCEFFillLayout"/>
|
||||||
</Item172>
|
</Item171>
|
||||||
<Item173>
|
<Item172>
|
||||||
<Filename Value="..\source\uCEFBoxLayout.pas"/>
|
<Filename Value="..\source\uCEFBoxLayout.pas"/>
|
||||||
<UnitName Value="uCEFBoxLayout"/>
|
<UnitName Value="uCEFBoxLayout"/>
|
||||||
</Item173>
|
</Item172>
|
||||||
<Item174>
|
<Item173>
|
||||||
<Filename Value="..\source\uCEFLayout.pas"/>
|
<Filename Value="..\source\uCEFLayout.pas"/>
|
||||||
<UnitName Value="uCEFLayout"/>
|
<UnitName Value="uCEFLayout"/>
|
||||||
</Item174>
|
</Item173>
|
||||||
<Item175>
|
<Item174>
|
||||||
<Filename Value="..\source\uCEFDisplay.pas"/>
|
<Filename Value="..\source\uCEFDisplay.pas"/>
|
||||||
<UnitName Value="uCEFDisplay"/>
|
<UnitName Value="uCEFDisplay"/>
|
||||||
</Item175>
|
</Item174>
|
||||||
<Item176>
|
<Item175>
|
||||||
<Filename Value="..\source\uCEFMenuButtonComponent.pas"/>
|
<Filename Value="..\source\uCEFMenuButtonComponent.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFMenuButtonComponent"/>
|
<UnitName Value="uCEFMenuButtonComponent"/>
|
||||||
</Item176>
|
</Item175>
|
||||||
<Item177>
|
<Item176>
|
||||||
<Filename Value="..\source\uCEFLabelButtonComponent.pas"/>
|
<Filename Value="..\source\uCEFLabelButtonComponent.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFLabelButtonComponent"/>
|
<UnitName Value="uCEFLabelButtonComponent"/>
|
||||||
</Item177>
|
</Item176>
|
||||||
<Item178>
|
<Item177>
|
||||||
<Filename Value="..\source\uCEFButtonComponent.pas"/>
|
<Filename Value="..\source\uCEFButtonComponent.pas"/>
|
||||||
<UnitName Value="uCEFButtonComponent"/>
|
<UnitName Value="uCEFButtonComponent"/>
|
||||||
</Item178>
|
</Item177>
|
||||||
<Item179>
|
<Item178>
|
||||||
<Filename Value="..\source\uCEFBrowserViewComponent.pas"/>
|
<Filename Value="..\source\uCEFBrowserViewComponent.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFBrowserViewComponent"/>
|
<UnitName Value="uCEFBrowserViewComponent"/>
|
||||||
</Item179>
|
</Item178>
|
||||||
<Item180>
|
<Item179>
|
||||||
<Filename Value="..\source\uCEFWindowComponent.pas"/>
|
<Filename Value="..\source\uCEFWindowComponent.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFWindowComponent"/>
|
<UnitName Value="uCEFWindowComponent"/>
|
||||||
</Item180>
|
</Item179>
|
||||||
<Item181>
|
<Item180>
|
||||||
<Filename Value="..\source\uCEFPanelComponent.pas"/>
|
<Filename Value="..\source\uCEFPanelComponent.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFPanelComponent"/>
|
<UnitName Value="uCEFPanelComponent"/>
|
||||||
</Item181>
|
</Item180>
|
||||||
<Item182>
|
<Item181>
|
||||||
<Filename Value="..\source\uCEFScrollViewComponent.pas"/>
|
<Filename Value="..\source\uCEFScrollViewComponent.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFScrollViewComponent"/>
|
<UnitName Value="uCEFScrollViewComponent"/>
|
||||||
</Item182>
|
</Item181>
|
||||||
<Item183>
|
<Item182>
|
||||||
<Filename Value="..\source\uCEFTextfieldComponent.pas"/>
|
<Filename Value="..\source\uCEFTextfieldComponent.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFTextfieldComponent"/>
|
<UnitName Value="uCEFTextfieldComponent"/>
|
||||||
</Item183>
|
</Item182>
|
||||||
<Item184>
|
<Item183>
|
||||||
<Filename Value="..\source\uCEFViewComponent.pas"/>
|
<Filename Value="..\source\uCEFViewComponent.pas"/>
|
||||||
<UnitName Value="uCEFViewComponent"/>
|
<UnitName Value="uCEFViewComponent"/>
|
||||||
</Item184>
|
</Item183>
|
||||||
<Item185>
|
<Item184>
|
||||||
<Filename Value="..\source\uCEFViewsFrameworkEvents.pas"/>
|
<Filename Value="..\source\uCEFViewsFrameworkEvents.pas"/>
|
||||||
<UnitName Value="uCEFViewsFrameworkEvents"/>
|
<UnitName Value="uCEFViewsFrameworkEvents"/>
|
||||||
</Item185>
|
</Item184>
|
||||||
<Item186>
|
<Item185>
|
||||||
<Filename Value="..\source\uCEFAudioHandler.pas"/>
|
<Filename Value="..\source\uCEFAudioHandler.pas"/>
|
||||||
<UnitName Value="uCEFAudioHandler"/>
|
<UnitName Value="uCEFAudioHandler"/>
|
||||||
</Item186>
|
</Item185>
|
||||||
<Item187>
|
<Item186>
|
||||||
<Filename Value="..\source\uCEFDevToolsMessageObserver.pas"/>
|
<Filename Value="..\source\uCEFDevToolsMessageObserver.pas"/>
|
||||||
<UnitName Value="uCEFDevToolsMessageObserver"/>
|
<UnitName Value="uCEFDevToolsMessageObserver"/>
|
||||||
</Item187>
|
</Item186>
|
||||||
<Item188>
|
<Item187>
|
||||||
<Filename Value="..\source\uCEFMediaSinkDeviceInfoCallback.pas"/>
|
<Filename Value="..\source\uCEFMediaSinkDeviceInfoCallback.pas"/>
|
||||||
<UnitName Value="uCEFMediaSinkDeviceInfoCallback"/>
|
<UnitName Value="uCEFMediaSinkDeviceInfoCallback"/>
|
||||||
</Item188>
|
</Item187>
|
||||||
<Item189>
|
<Item188>
|
||||||
<Filename Value="..\source\uCEFJson.pas"/>
|
<Filename Value="..\source\uCEFJson.pas"/>
|
||||||
<UnitName Value="uCEFJson"/>
|
<UnitName Value="uCEFJson"/>
|
||||||
</Item189>
|
</Item188>
|
||||||
<Item190>
|
<Item189>
|
||||||
<Filename Value="..\source\uCEFBitmapBitBuffer.pas"/>
|
<Filename Value="..\source\uCEFBitmapBitBuffer.pas"/>
|
||||||
<UnitName Value="uCEFBitmapBitBuffer"/>
|
<UnitName Value="uCEFBitmapBitBuffer"/>
|
||||||
</Item190>
|
</Item189>
|
||||||
<Item191>
|
<Item190>
|
||||||
<Filename Value="..\source\uCEFPrintDialogCallback.pas"/>
|
<Filename Value="..\source\uCEFPrintDialogCallback.pas"/>
|
||||||
<UnitName Value="uCEFPrintDialogCallback"/>
|
<UnitName Value="uCEFPrintDialogCallback"/>
|
||||||
</Item191>
|
</Item190>
|
||||||
<Item192>
|
<Item191>
|
||||||
<Filename Value="..\source\uCEFPrintHandler.pas"/>
|
<Filename Value="..\source\uCEFPrintHandler.pas"/>
|
||||||
<UnitName Value="uCEFPrintHandler"/>
|
<UnitName Value="uCEFPrintHandler"/>
|
||||||
</Item192>
|
</Item191>
|
||||||
<Item193>
|
<Item192>
|
||||||
<Filename Value="..\source\uCEFPrintJobCallback.pas"/>
|
<Filename Value="..\source\uCEFPrintJobCallback.pas"/>
|
||||||
<UnitName Value="uCEFPrintJobCallback"/>
|
<UnitName Value="uCEFPrintJobCallback"/>
|
||||||
</Item193>
|
</Item192>
|
||||||
<Item194>
|
<Item193>
|
||||||
<Filename Value="..\source\uCEFLinuxFunctions.pas"/>
|
<Filename Value="..\source\uCEFLinuxFunctions.pas"/>
|
||||||
<UnitName Value="uCEFLinuxFunctions"/>
|
<UnitName Value="uCEFLinuxFunctions"/>
|
||||||
</Item194>
|
</Item193>
|
||||||
<Item195>
|
<Item194>
|
||||||
<Filename Value="..\source\uCEFLinuxTypes.pas"/>
|
<Filename Value="..\source\uCEFLinuxTypes.pas"/>
|
||||||
<UnitName Value="uCEFLinuxTypes"/>
|
<UnitName Value="uCEFLinuxTypes"/>
|
||||||
</Item195>
|
</Item194>
|
||||||
<Item196>
|
<Item195>
|
||||||
<Filename Value="..\source\uCEFLinuxConstants.pas"/>
|
<Filename Value="..\source\uCEFLinuxConstants.pas"/>
|
||||||
<UnitName Value="uCEFLinuxConstants"/>
|
<UnitName Value="uCEFLinuxConstants"/>
|
||||||
</Item196>
|
</Item195>
|
||||||
<Item197>
|
<Item196>
|
||||||
<Filename Value="..\source\uCEFWorkSchedulerQueueThread.pas"/>
|
<Filename Value="..\source\uCEFWorkSchedulerQueueThread.pas"/>
|
||||||
<UnitName Value="uCEFWorkSchedulerQueueThread"/>
|
<UnitName Value="uCEFWorkSchedulerQueueThread"/>
|
||||||
</Item197>
|
</Item196>
|
||||||
<Item198>
|
<Item197>
|
||||||
<Filename Value="..\source\uCEFLinkedWinControlBase.pas"/>
|
<Filename Value="..\source\uCEFLinkedWinControlBase.pas"/>
|
||||||
<UnitName Value="uCEFLinkedWinControlBase"/>
|
<UnitName Value="uCEFLinkedWinControlBase"/>
|
||||||
</Item198>
|
</Item197>
|
||||||
<Item199>
|
<Item198>
|
||||||
<Filename Value="..\source\uceflazaruscocoa.pas"/>
|
<Filename Value="..\source\uceflazaruscocoa.pas"/>
|
||||||
<UnitName Value="uCEFLazarusCocoa"/>
|
<UnitName Value="uCEFLazarusCocoa"/>
|
||||||
</Item199>
|
</Item198>
|
||||||
<Item200>
|
<Item199>
|
||||||
<Filename Value="..\source\uCEFBrowserWindow.pas"/>
|
<Filename Value="..\source\uCEFBrowserWindow.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFBrowserWindow"/>
|
<UnitName Value="uCEFBrowserWindow"/>
|
||||||
</Item200>
|
</Item199>
|
||||||
<Item201>
|
<Item200>
|
||||||
<Filename Value="..\source\uCEFOsrBrowserWindow.pas"/>
|
<Filename Value="..\source\uCEFOsrBrowserWindow.pas"/>
|
||||||
<HasRegisterProc Value="True"/>
|
<HasRegisterProc Value="True"/>
|
||||||
<UnitName Value="uCEFOsrBrowserWindow"/>
|
<UnitName Value="uCEFOsrBrowserWindow"/>
|
||||||
</Item201>
|
</Item200>
|
||||||
<Item202>
|
<Item201>
|
||||||
<Filename Value="..\source\uCEFTimerWorkScheduler.pas"/>
|
<Filename Value="..\source\uCEFTimerWorkScheduler.pas"/>
|
||||||
<UnitName Value="uCEFTimerWorkScheduler"/>
|
<UnitName Value="uCEFTimerWorkScheduler"/>
|
||||||
</Item202>
|
</Item201>
|
||||||
<Item203>
|
<Item202>
|
||||||
<Filename Value="..\source\uCEFFrameHandler.pas"/>
|
<Filename Value="..\source\uCEFFrameHandler.pas"/>
|
||||||
<UnitName Value="uCEFFrameHandler"/>
|
<UnitName Value="uCEFFrameHandler"/>
|
||||||
</Item203>
|
</Item202>
|
||||||
</Files>
|
</Files>
|
||||||
<RequiredPkgs Count="5">
|
<RequiredPkgs Count="5">
|
||||||
<Item1>
|
<Item1>
|
||||||
|
@ -27,13 +27,12 @@ uses
|
|||||||
uCEFMenuModel, uCEFMenuModelDelegate, uCEFMiscFunctions,
|
uCEFMenuModel, uCEFMenuModelDelegate, uCEFMiscFunctions,
|
||||||
uCEFNavigationEntry, uCEFNavigationEntryVisitor, uCEFPDFPrintCallback,
|
uCEFNavigationEntry, uCEFNavigationEntryVisitor, uCEFPDFPrintCallback,
|
||||||
uCEFPDFPrintOptions, uCEFPostData, uCEFPostDataElement, uCEFPrintSettings,
|
uCEFPDFPrintOptions, uCEFPostData, uCEFPostDataElement, uCEFPrintSettings,
|
||||||
uCEFProcessMessage, uCEFRegisterCDMCallback, uCEFRenderHandler,
|
uCEFProcessMessage, uCEFRenderHandler, uCEFRenderProcessHandler,
|
||||||
uCEFRenderProcessHandler, uCEFRequest, uCEFRequestCallback,
|
uCEFRequest, uCEFRequestCallback, uCEFRequestContext,
|
||||||
uCEFRequestContext, uCEFRequestContextHandler, uCEFRequestHandler,
|
uCEFRequestContextHandler, uCEFRequestHandler, uCEFResolveCallback,
|
||||||
uCEFResolveCallback, uCEFResourceBundle, uCEFResourceBundleHandler,
|
uCEFResourceBundle, uCEFResourceBundleHandler, uCEFResourceHandler,
|
||||||
uCEFResourceHandler, uCEFResponse, uCEFResponseFilter,
|
uCEFResponse, uCEFResponseFilter, uCEFRunContextMenuCallback,
|
||||||
uCEFRunContextMenuCallback, uCEFRunFileDialogCallback,
|
uCEFRunFileDialogCallback, uCEFSchemeHandlerFactory, uCEFSchemeRegistrar,
|
||||||
uCEFSchemeHandlerFactory, uCEFSchemeRegistrar,
|
|
||||||
uCEFSelectClientCertificateCallback, uCEFSetCookieCallback, uCEFSslInfo,
|
uCEFSelectClientCertificateCallback, uCEFSetCookieCallback, uCEFSslInfo,
|
||||||
uCEFSSLStatus, uCEFStreamReader, uCEFStreamWriter, uCEFStringList,
|
uCEFSSLStatus, uCEFStreamReader, uCEFStreamWriter, uCEFStringList,
|
||||||
uCEFStringMap, uCEFStringMultimap, uCEFStringVisitor, uCEFTask,
|
uCEFStringMap, uCEFStringMultimap, uCEFStringVisitor, uCEFTask,
|
||||||
|
@ -64,15 +64,15 @@ uses
|
|||||||
uCEFTypes, uCEFInterfaces, uCEFBaseRefCounted, uCEFSchemeRegistrar;
|
uCEFTypes, uCEFInterfaces, uCEFBaseRefCounted, uCEFSchemeRegistrar;
|
||||||
|
|
||||||
const
|
const
|
||||||
CEF_SUPPORTED_VERSION_MAJOR = 92;
|
CEF_SUPPORTED_VERSION_MAJOR = 93;
|
||||||
CEF_SUPPORTED_VERSION_MINOR = 0;
|
CEF_SUPPORTED_VERSION_MINOR = 1;
|
||||||
CEF_SUPPORTED_VERSION_RELEASE = 27;
|
CEF_SUPPORTED_VERSION_RELEASE = 11;
|
||||||
CEF_SUPPORTED_VERSION_BUILD = 0;
|
CEF_SUPPORTED_VERSION_BUILD = 0;
|
||||||
|
|
||||||
CEF_CHROMEELF_VERSION_MAJOR = 92;
|
CEF_CHROMEELF_VERSION_MAJOR = 93;
|
||||||
CEF_CHROMEELF_VERSION_MINOR = 0;
|
CEF_CHROMEELF_VERSION_MINOR = 0;
|
||||||
CEF_CHROMEELF_VERSION_RELEASE = 4515;
|
CEF_CHROMEELF_VERSION_RELEASE = 4577;
|
||||||
CEF_CHROMEELF_VERSION_BUILD = 159;
|
CEF_CHROMEELF_VERSION_BUILD = 63;
|
||||||
|
|
||||||
{$IFDEF MSWINDOWS}
|
{$IFDEF MSWINDOWS}
|
||||||
LIBCEF_DLL = 'libcef.dll';
|
LIBCEF_DLL = 'libcef.dll';
|
||||||
@ -187,6 +187,7 @@ type
|
|||||||
FDisableRequestHandlingForTesting : boolean;
|
FDisableRequestHandlingForTesting : boolean;
|
||||||
FDisablePopupBlocking : boolean;
|
FDisablePopupBlocking : boolean;
|
||||||
FDisableBackForwardCache : boolean;
|
FDisableBackForwardCache : boolean;
|
||||||
|
FDisableComponentUpdate : boolean;
|
||||||
|
|
||||||
// Fields used during the CEF initialization
|
// Fields used during the CEF initialization
|
||||||
FWindowsSandboxInfo : pointer;
|
FWindowsSandboxInfo : pointer;
|
||||||
@ -213,7 +214,6 @@ type
|
|||||||
FMustCreateLoadHandler : boolean;
|
FMustCreateLoadHandler : boolean;
|
||||||
FStatus : TCefAplicationStatus;
|
FStatus : TCefAplicationStatus;
|
||||||
FMissingLibFiles : string;
|
FMissingLibFiles : string;
|
||||||
FWidevinePath : ustring;
|
|
||||||
FMustFreeLibrary : boolean;
|
FMustFreeLibrary : boolean;
|
||||||
FLastErrorMessage : ustring;
|
FLastErrorMessage : ustring;
|
||||||
|
|
||||||
@ -248,9 +248,6 @@ type
|
|||||||
FOnFocusedNodeChanged : TOnFocusedNodeChangedEvent;
|
FOnFocusedNodeChanged : TOnFocusedNodeChangedEvent;
|
||||||
FOnProcessMessageReceived : TOnProcessMessageReceivedEvent;
|
FOnProcessMessageReceived : TOnProcessMessageReceivedEvent;
|
||||||
|
|
||||||
// ICefRegisterCDMCallback
|
|
||||||
FOnCDMRegistrationComplete : TOnCDMRegistrationCompleteEvent;
|
|
||||||
|
|
||||||
// ICefLoadHandler
|
// ICefLoadHandler
|
||||||
FOnLoadingStateChange : TOnRenderLoadingStateChange;
|
FOnLoadingStateChange : TOnRenderLoadingStateChange;
|
||||||
FOnLoadStart : TOnRenderLoadStart;
|
FOnLoadStart : TOnRenderLoadStart;
|
||||||
@ -359,7 +356,6 @@ type
|
|||||||
function CheckCEFDLL : boolean;
|
function CheckCEFDLL : boolean;
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
function CheckCEFLibrary : boolean;
|
function CheckCEFLibrary : boolean;
|
||||||
procedure RegisterWidevineCDM;
|
|
||||||
procedure ShowErrorMessageDlg(const aError : string); virtual;
|
procedure ShowErrorMessageDlg(const aError : string); virtual;
|
||||||
function ParseProcessType : TCefProcessType;
|
function ParseProcessType : TCefProcessType;
|
||||||
procedure AddCustomCommandLineSwitches(var aKeys, aValues : TStringList); virtual;
|
procedure AddCustomCommandLineSwitches(var aKeys, aValues : TStringList); virtual;
|
||||||
@ -403,7 +399,6 @@ type
|
|||||||
procedure Internal_OnUncaughtException(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace);
|
procedure Internal_OnUncaughtException(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace);
|
||||||
procedure Internal_OnFocusedNodeChanged(const browser: ICefBrowser; const frame: ICefFrame; const node: ICefDomNode);
|
procedure Internal_OnFocusedNodeChanged(const browser: ICefBrowser; const frame: ICefFrame; const node: ICefDomNode);
|
||||||
procedure Internal_OnProcessMessageReceived(const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const aMessage: ICefProcessMessage; var aHandled : boolean);
|
procedure Internal_OnProcessMessageReceived(const browser: ICefBrowser; const frame: ICefFrame; sourceProcess: TCefProcessId; const aMessage: ICefProcessMessage; var aHandled : boolean);
|
||||||
procedure Internal_OnCDMRegistrationComplete(result : TCefCDMRegistrationError; const error_message : ustring);
|
|
||||||
procedure Internal_OnLoadingStateChange(const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean);
|
procedure Internal_OnLoadingStateChange(const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean);
|
||||||
procedure Internal_OnLoadStart(const browser: ICefBrowser; const frame: ICefFrame; transitionType: TCefTransitionType);
|
procedure Internal_OnLoadStart(const browser: ICefBrowser; const frame: ICefFrame; transitionType: TCefTransitionType);
|
||||||
procedure Internal_OnLoadEnd(const browser: ICefBrowser; const frame: ICefFrame; httpStatusCode: Integer);
|
procedure Internal_OnLoadEnd(const browser: ICefBrowser; const frame: ICefFrame; httpStatusCode: Integer);
|
||||||
@ -499,6 +494,7 @@ type
|
|||||||
property DisableRequestHandlingForTesting : boolean read FDisableRequestHandlingForTesting write FDisableRequestHandlingForTesting; // --disable-request-handling-for-testing
|
property DisableRequestHandlingForTesting : boolean read FDisableRequestHandlingForTesting write FDisableRequestHandlingForTesting; // --disable-request-handling-for-testing
|
||||||
property DisablePopupBlocking : boolean read FDisablePopupBlocking write FDisablePopupBlocking; // --disable-popup-blocking
|
property DisablePopupBlocking : boolean read FDisablePopupBlocking write FDisablePopupBlocking; // --disable-popup-blocking
|
||||||
property DisableBackForwardCache : boolean read FDisableBackForwardCache write FDisableBackForwardCache; // --disable-back-forward-cache
|
property DisableBackForwardCache : boolean read FDisableBackForwardCache write FDisableBackForwardCache; // --disable-back-forward-cache
|
||||||
|
property DisableComponentUpdate : boolean read FDisableComponentUpdate write FDisableComponentUpdate; // --disable-component-update
|
||||||
|
|
||||||
// Properties used during the CEF initialization
|
// Properties used during the CEF initialization
|
||||||
property WindowsSandboxInfo : Pointer read FWindowsSandboxInfo write FWindowsSandboxInfo;
|
property WindowsSandboxInfo : Pointer read FWindowsSandboxInfo write FWindowsSandboxInfo;
|
||||||
@ -533,7 +529,6 @@ type
|
|||||||
property OsmodalLoop : boolean write SetOsmodalLoop;
|
property OsmodalLoop : boolean write SetOsmodalLoop;
|
||||||
property Status : TCefAplicationStatus read FStatus;
|
property Status : TCefAplicationStatus read FStatus;
|
||||||
property MissingLibFiles : string read FMissingLibFiles;
|
property MissingLibFiles : string read FMissingLibFiles;
|
||||||
property WidevinePath : ustring read FWidevinePath write FWidevinePath;
|
|
||||||
property MustFreeLibrary : boolean read FMustFreeLibrary write FMustFreeLibrary;
|
property MustFreeLibrary : boolean read FMustFreeLibrary write FMustFreeLibrary;
|
||||||
property ChildProcessesCount : integer read GetChildProcessesCount;
|
property ChildProcessesCount : integer read GetChildProcessesCount;
|
||||||
property UsedMemory : uint64 read GetUsedMemory;
|
property UsedMemory : uint64 read GetUsedMemory;
|
||||||
@ -572,9 +567,6 @@ type
|
|||||||
property OnFocusedNodeChanged : TOnFocusedNodeChangedEvent read FOnFocusedNodeChanged write FOnFocusedNodeChanged;
|
property OnFocusedNodeChanged : TOnFocusedNodeChangedEvent read FOnFocusedNodeChanged write FOnFocusedNodeChanged;
|
||||||
property OnProcessMessageReceived : TOnProcessMessageReceivedEvent read FOnProcessMessageReceived write FOnProcessMessageReceived;
|
property OnProcessMessageReceived : TOnProcessMessageReceivedEvent read FOnProcessMessageReceived write FOnProcessMessageReceived;
|
||||||
|
|
||||||
// ICefRegisterCDMCallback
|
|
||||||
property OnCDMRegistrationComplete : TOnCDMRegistrationCompleteEvent read FOnCDMRegistrationComplete write FOnCDMRegistrationComplete;
|
|
||||||
|
|
||||||
// ICefLoadHandler
|
// ICefLoadHandler
|
||||||
property OnLoadingStateChange : TOnRenderLoadingStateChange read FOnLoadingStateChange write FOnLoadingStateChange;
|
property OnLoadingStateChange : TOnRenderLoadingStateChange read FOnLoadingStateChange write FOnLoadingStateChange;
|
||||||
property OnLoadStart : TOnRenderLoadStart read FOnLoadStart write FOnLoadStart;
|
property OnLoadStart : TOnRenderLoadStart read FOnLoadStart write FOnLoadStart;
|
||||||
@ -642,8 +634,8 @@ uses
|
|||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
uCEFLibFunctions, uCEFMiscFunctions, uCEFCommandLine, uCEFConstants,
|
uCEFLibFunctions, uCEFMiscFunctions, uCEFCommandLine, uCEFConstants,
|
||||||
uCEFSchemeHandlerFactory, uCEFCookieManager, uCEFApp, uCEFRegisterCDMCallback,
|
uCEFSchemeHandlerFactory, uCEFCookieManager, uCEFApp, uCEFCompletionCallback,
|
||||||
uCEFCompletionCallback, uCEFWaitableEvent;
|
uCEFWaitableEvent;
|
||||||
|
|
||||||
procedure DestroyGlobalCEFApp;
|
procedure DestroyGlobalCEFApp;
|
||||||
begin
|
begin
|
||||||
@ -746,6 +738,7 @@ begin
|
|||||||
FDisableRequestHandlingForTesting := False;
|
FDisableRequestHandlingForTesting := False;
|
||||||
FDisablePopupBlocking := False;
|
FDisablePopupBlocking := False;
|
||||||
FDisableBackForwardCache := False;
|
FDisableBackForwardCache := False;
|
||||||
|
FDisableComponentUpdate := False;
|
||||||
|
|
||||||
// Fields used during the CEF initialization
|
// Fields used during the CEF initialization
|
||||||
FWindowsSandboxInfo := nil;
|
FWindowsSandboxInfo := nil;
|
||||||
@ -775,7 +768,6 @@ begin
|
|||||||
FMustCreateLoadHandler := False;
|
FMustCreateLoadHandler := False;
|
||||||
FStatus := asLoading;
|
FStatus := asLoading;
|
||||||
FMissingLibFiles := '';
|
FMissingLibFiles := '';
|
||||||
FWidevinePath := '';
|
|
||||||
FMustFreeLibrary := False;
|
FMustFreeLibrary := False;
|
||||||
FLastErrorMessage := '';
|
FLastErrorMessage := '';
|
||||||
{$IFDEF MSWINDOWS}
|
{$IFDEF MSWINDOWS}
|
||||||
@ -815,9 +807,6 @@ begin
|
|||||||
FOnFocusedNodeChanged := nil;
|
FOnFocusedNodeChanged := nil;
|
||||||
FOnProcessMessageReceived := nil;
|
FOnProcessMessageReceived := nil;
|
||||||
|
|
||||||
// ICefRegisterCDMCallback
|
|
||||||
FOnCDMRegistrationComplete := nil;
|
|
||||||
|
|
||||||
// ICefLoadHandler
|
// ICefLoadHandler
|
||||||
FOnLoadingStateChange := nil;
|
FOnLoadingStateChange := nil;
|
||||||
FOnLoadStart := nil;
|
FOnLoadStart := nil;
|
||||||
@ -1382,8 +1371,6 @@ begin
|
|||||||
if FDeleteCache then
|
if FDeleteCache then
|
||||||
RenameAndDeleteDir(FCache, True);
|
RenameAndDeleteDir(FCache, True);
|
||||||
|
|
||||||
RegisterWidevineCDM;
|
|
||||||
|
|
||||||
InitializeSettings(FAppSettings);
|
InitializeSettings(FAppSettings);
|
||||||
|
|
||||||
{$IFDEF MSWINDOWS}
|
{$IFDEF MSWINDOWS}
|
||||||
@ -1517,29 +1504,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCefApplicationCore.RegisterWidevineCDM;
|
|
||||||
var
|
|
||||||
TempPath : TCefString;
|
|
||||||
TempCallback : ICefRegisterCDMCallback;
|
|
||||||
begin
|
|
||||||
try
|
|
||||||
try
|
|
||||||
if FLibLoaded and (length(FWidevinePath) > 0) and DirectoryExists(FWidevinePath) then
|
|
||||||
begin
|
|
||||||
TempPath := CefString(FWidevinePath);
|
|
||||||
TempCallback := TCefCustomRegisterCDMCallback.Create(self);
|
|
||||||
|
|
||||||
cef_register_widevine_cdm(@TempPath, TempCallback.Wrap);
|
|
||||||
end;
|
|
||||||
except
|
|
||||||
on e : exception do
|
|
||||||
if CustomExceptionHandler('TCefApplicationCore.RegisterWidevineCDM', e) then raise;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
TempCallback := nil;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCefApplicationCore.ShowErrorMessageDlg(const aError : string);
|
procedure TCefApplicationCore.ShowErrorMessageDlg(const aError : string);
|
||||||
begin
|
begin
|
||||||
OutputDebugMessage(aError);
|
OutputDebugMessage(aError);
|
||||||
@ -1704,12 +1668,6 @@ begin
|
|||||||
aHandled := False;
|
aHandled := False;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCefApplicationCore.Internal_OnCDMRegistrationComplete(result : TCefCDMRegistrationError; const error_message : ustring);
|
|
||||||
begin
|
|
||||||
if assigned(FOnCDMRegistrationComplete) then
|
|
||||||
FOnCDMRegistrationComplete(result, error_message);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCefApplicationCore.Internal_OnLoadingStateChange(const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean);
|
procedure TCefApplicationCore.Internal_OnLoadingStateChange(const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean);
|
||||||
begin
|
begin
|
||||||
if assigned(FOnLoadingStateChange) then
|
if assigned(FOnLoadingStateChange) then
|
||||||
@ -2067,6 +2025,9 @@ begin
|
|||||||
if FDisableBackForwardCache then
|
if FDisableBackForwardCache then
|
||||||
ReplaceSwitch(aKeys, aValues, '--disable-back-forward-cache');
|
ReplaceSwitch(aKeys, aValues, '--disable-back-forward-cache');
|
||||||
|
|
||||||
|
if FDisableComponentUpdate then
|
||||||
|
ReplaceSwitch(aKeys, aValues, '--disable-component-update');
|
||||||
|
|
||||||
// The list of features you can enable is here :
|
// The list of features you can enable is here :
|
||||||
// https://chromium.googlesource.com/chromium/src/+/master/chrome/common/chrome_features.cc
|
// https://chromium.googlesource.com/chromium/src/+/master/chrome/common/chrome_features.cc
|
||||||
if (length(FEnableFeatures) > 0) then
|
if (length(FEnableFeatures) > 0) then
|
||||||
@ -2892,14 +2853,12 @@ begin
|
|||||||
{$IFDEF FPC}Pointer({$ENDIF}cef_unregister_internal_web_plugin{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_unregister_internal_web_plugin');
|
{$IFDEF FPC}Pointer({$ENDIF}cef_unregister_internal_web_plugin{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_unregister_internal_web_plugin');
|
||||||
{$IFDEF FPC}Pointer({$ENDIF}cef_register_web_plugin_crash{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_register_web_plugin_crash');
|
{$IFDEF FPC}Pointer({$ENDIF}cef_register_web_plugin_crash{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_register_web_plugin_crash');
|
||||||
{$IFDEF FPC}Pointer({$ENDIF}cef_is_web_plugin_unstable{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_is_web_plugin_unstable');
|
{$IFDEF FPC}Pointer({$ENDIF}cef_is_web_plugin_unstable{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_is_web_plugin_unstable');
|
||||||
{$IFDEF FPC}Pointer({$ENDIF}cef_register_widevine_cdm{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_register_widevine_cdm');
|
|
||||||
|
|
||||||
Result := assigned(cef_visit_web_plugin_info) and
|
Result := assigned(cef_visit_web_plugin_info) and
|
||||||
assigned(cef_refresh_web_plugins) and
|
assigned(cef_refresh_web_plugins) and
|
||||||
assigned(cef_unregister_internal_web_plugin) and
|
assigned(cef_unregister_internal_web_plugin) and
|
||||||
assigned(cef_register_web_plugin_crash) and
|
assigned(cef_register_web_plugin_crash) and
|
||||||
assigned(cef_is_web_plugin_unstable) and
|
assigned(cef_is_web_plugin_unstable);
|
||||||
assigned(cef_register_widevine_cdm);
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TCefApplicationCore.Load_cef_xml_reader_capi_h : boolean;
|
function TCefApplicationCore.Load_cef_xml_reader_capi_h : boolean;
|
||||||
|
@ -399,6 +399,7 @@ const
|
|||||||
EVENTFLAG_IS_LEFT = 1 shl 10;
|
EVENTFLAG_IS_LEFT = 1 shl 10;
|
||||||
EVENTFLAG_IS_RIGHT = 1 shl 11;
|
EVENTFLAG_IS_RIGHT = 1 shl 11;
|
||||||
EVENTFLAG_ALTGR_DOWN = 1 shl 12;
|
EVENTFLAG_ALTGR_DOWN = 1 shl 12;
|
||||||
|
EVENTFLAG_IS_REPEAT = 1 shl 13;
|
||||||
|
|
||||||
// /include/internal/cef_types.h (cef_drag_operations_mask_t)
|
// /include/internal/cef_types.h (cef_drag_operations_mask_t)
|
||||||
DRAG_OPERATION_NONE = 0;
|
DRAG_OPERATION_NONE = 0;
|
||||||
|
@ -215,7 +215,6 @@ type
|
|||||||
TOnGetDataResourceEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(resourceId: Integer; out data: Pointer; out dataSize: NativeUInt; var aResult : Boolean) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
TOnGetDataResourceEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(resourceId: Integer; out data: Pointer; out dataSize: NativeUInt; var aResult : Boolean) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
||||||
TOnGetLocalizedStringEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(stringId: Integer; out stringVal: ustring; var aResult : Boolean) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
TOnGetLocalizedStringEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(stringId: Integer; out stringVal: ustring; var aResult : Boolean) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
||||||
TOnGetDataResourceForScaleEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(resourceId: Integer; scaleFactor: TCefScaleFactor; out data: Pointer; out dataSize: NativeUInt; var aResult : Boolean) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
TOnGetDataResourceForScaleEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(resourceId: Integer; scaleFactor: TCefScaleFactor; out data: Pointer; out dataSize: NativeUInt; var aResult : Boolean) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
||||||
TOnCDMRegistrationCompleteEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(result : TCefCDMRegistrationError; const error_message : ustring) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
|
||||||
TOnRenderLoadStart = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; transitionType: TCefTransitionType) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
TOnRenderLoadStart = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; transitionType: TCefTransitionType) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
||||||
TOnRenderLoadEnd = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; httpStatusCode: Integer) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
TOnRenderLoadEnd = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; httpStatusCode: Integer) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
||||||
TOnRenderLoadError = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; errorCode: TCefErrorCode; const errorText, failedUrl: ustring) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
TOnRenderLoadError = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; errorCode: TCefErrorCode; const errorText, failedUrl: ustring) {$IFNDEF DELPHI12_UP}{$IFNDEF FPC}of object{$ENDIF}{$ENDIF};
|
||||||
@ -229,7 +228,6 @@ type
|
|||||||
|
|
||||||
|
|
||||||
TCefEndTracingCallbackProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const tracingFile: ustring);
|
TCefEndTracingCallbackProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const tracingFile: ustring);
|
||||||
TCefRegisterCDMProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(result: TCefCDMRegistrationError; const error_message: ustring);
|
|
||||||
TCefFastTaskProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure();
|
TCefFastTaskProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure();
|
||||||
TCefv8ArrayBufferReleaseCallbackProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(buffer : Pointer);
|
TCefv8ArrayBufferReleaseCallbackProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(buffer : Pointer);
|
||||||
TCefWebPluginInfoVisitorProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} function(const info: ICefWebPluginInfo; count, total: Integer): Boolean;
|
TCefWebPluginInfoVisitorProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} function(const info: ICefWebPluginInfo; count, total: Integer): Boolean;
|
||||||
@ -2164,13 +2162,6 @@ type
|
|||||||
procedure IsUnstable(const path: ustring; unstable: Boolean);
|
procedure IsUnstable(const path: ustring; unstable: Boolean);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// TCefRegisterCDMCallback
|
|
||||||
// /include/capi/cef_web_plugin_capi.h (cef_register_cdm_callback_t)
|
|
||||||
ICefRegisterCDMCallback = interface(ICefBaseRefCounted)
|
|
||||||
['{6C39AB3B-F724-483F-ABA0-37F6E0AECF35}']
|
|
||||||
procedure OnCDMRegistrationComplete(result: TCefCDMRegistrationError; const error_message: ustring);
|
|
||||||
end;
|
|
||||||
|
|
||||||
// TCefEndTracingCallback
|
// TCefEndTracingCallback
|
||||||
// /include/capi/cef_trace_capi.h (cef_end_tracing_callback_t)
|
// /include/capi/cef_trace_capi.h (cef_end_tracing_callback_t)
|
||||||
ICefEndTracingCallback = interface(ICefBaseRefCounted)
|
ICefEndTracingCallback = interface(ICefBaseRefCounted)
|
||||||
|
@ -237,7 +237,6 @@ var
|
|||||||
cef_unregister_internal_web_plugin : procedure(const path: PCefString); cdecl;
|
cef_unregister_internal_web_plugin : procedure(const path: PCefString); cdecl;
|
||||||
cef_register_web_plugin_crash : procedure(const path: PCefString); cdecl;
|
cef_register_web_plugin_crash : procedure(const path: PCefString); cdecl;
|
||||||
cef_is_web_plugin_unstable : procedure(const path: PCefString; callback: PCefWebPluginUnstableCallback); cdecl;
|
cef_is_web_plugin_unstable : procedure(const path: PCefString; callback: PCefWebPluginUnstableCallback); cdecl;
|
||||||
cef_register_widevine_cdm : procedure(const path: PCefString; callback: PCefRegisterCDMCallback); cdecl;
|
|
||||||
|
|
||||||
// /include/capi/cef_xml_reader_capi.h
|
// /include/capi/cef_xml_reader_capi.h
|
||||||
cef_xml_reader_create : function(stream: PCefStreamReader; encodingType: TCefXmlEncodingType; const URI: PCefString): PCefXmlReader; cdecl;
|
cef_xml_reader_create : function(stream: PCefStreamReader; encodingType: TCefXmlEncodingType; const URI: PCefString): PCefXmlReader; cdecl;
|
||||||
|
@ -74,8 +74,7 @@ uses
|
|||||||
{$IFDEF LCLGTK2}gtk2, glib2, gdk2, gtk2proc, gtk2int, Gtk2Def, gdk2x, Gtk2Extra,{$ENDIF}
|
{$IFDEF LCLGTK2}gtk2, glib2, gdk2, gtk2proc, gtk2int, Gtk2Def, gdk2x, Gtk2Extra,{$ENDIF}
|
||||||
{$ENDIF}{$ENDIF}
|
{$ENDIF}{$ENDIF}
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
uCEFTypes, uCEFInterfaces, uCEFLibFunctions, uCEFResourceHandler,
|
uCEFTypes, uCEFInterfaces, uCEFLibFunctions, uCEFResourceHandler, uCEFConstants;
|
||||||
uCEFRegisterCDMCallback, uCEFConstants;
|
|
||||||
|
|
||||||
const
|
const
|
||||||
Kernel32DLL = 'kernel32.dll';
|
Kernel32DLL = 'kernel32.dll';
|
||||||
@ -1921,7 +1920,8 @@ begin
|
|||||||
|
|
||||||
case aWparam of
|
case aWparam of
|
||||||
VK_RETURN:
|
VK_RETURN:
|
||||||
if (((aLparam shr 16) and KF_EXTENDED) <> 0) then Result := Result or EVENTFLAG_IS_KEY_PAD;
|
if (((aLparam shr 16) and KF_EXTENDED) <> 0) then
|
||||||
|
Result := Result or EVENTFLAG_IS_KEY_PAD;
|
||||||
|
|
||||||
VK_INSERT,
|
VK_INSERT,
|
||||||
VK_DELETE,
|
VK_DELETE,
|
||||||
@ -1933,7 +1933,8 @@ begin
|
|||||||
VK_DOWN,
|
VK_DOWN,
|
||||||
VK_LEFT,
|
VK_LEFT,
|
||||||
VK_RIGHT :
|
VK_RIGHT :
|
||||||
if (((aLparam shr 16) and KF_EXTENDED) = 0) then Result := Result or EVENTFLAG_IS_KEY_PAD;
|
if (((aLparam shr 16) and KF_EXTENDED) = 0) then
|
||||||
|
Result := Result or EVENTFLAG_IS_KEY_PAD;
|
||||||
|
|
||||||
VK_NUMLOCK,
|
VK_NUMLOCK,
|
||||||
VK_NUMPAD0,
|
VK_NUMPAD0,
|
||||||
|
@ -1,176 +0,0 @@
|
|||||||
// ************************************************************************
|
|
||||||
// ***************************** CEF4Delphi *******************************
|
|
||||||
// ************************************************************************
|
|
||||||
//
|
|
||||||
// CEF4Delphi is based on DCEF3 which uses CEF to embed a chromium-based
|
|
||||||
// browser in Delphi applications.
|
|
||||||
//
|
|
||||||
// The original license of DCEF3 still applies to CEF4Delphi.
|
|
||||||
//
|
|
||||||
// For more information about CEF4Delphi visit :
|
|
||||||
// https://www.briskbard.com/index.php?lang=en&pageid=cef
|
|
||||||
//
|
|
||||||
// Copyright © 2021 Salvador Diaz Fau. All rights reserved.
|
|
||||||
//
|
|
||||||
// ************************************************************************
|
|
||||||
// ************ vvvv Original license and comments below vvvv *************
|
|
||||||
// ************************************************************************
|
|
||||||
(*
|
|
||||||
* Delphi Chromium Embedded 3
|
|
||||||
*
|
|
||||||
* Usage allowed under the restrictions of the Lesser GNU General Public License
|
|
||||||
* or alternatively the restrictions of the Mozilla Public License 1.1
|
|
||||||
*
|
|
||||||
* Software distributed under the License is distributed on an "AS IS" basis,
|
|
||||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
|
|
||||||
* the specific language governing rights and limitations under the License.
|
|
||||||
*
|
|
||||||
* Unit owner : Henri Gourvest <hgourvest@gmail.com>
|
|
||||||
* Web site : http://www.progdigy.com
|
|
||||||
* Repository : http://code.google.com/p/delphichromiumembedded/
|
|
||||||
* Group : http://groups.google.com/group/delphichromiumembedded
|
|
||||||
*
|
|
||||||
* Embarcadero Technologies, Inc is not permitted to use or redistribute
|
|
||||||
* this source code without explicit permission.
|
|
||||||
*
|
|
||||||
*)
|
|
||||||
|
|
||||||
unit uCEFRegisterCDMCallback;
|
|
||||||
|
|
||||||
{$IFDEF FPC}
|
|
||||||
{$MODE OBJFPC}{$H+}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
{$IFNDEF CPUX64}{$ALIGN ON}{$ENDIF}
|
|
||||||
{$MINENUMSIZE 4}
|
|
||||||
|
|
||||||
{$I cef.inc}
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes, uCEFApplicationCore;
|
|
||||||
|
|
||||||
type
|
|
||||||
TCefRegisterCDMCallbackOwn = class(TCefBaseRefCountedOwn, ICefRegisterCDMCallback)
|
|
||||||
protected
|
|
||||||
procedure OnCDMRegistrationComplete(result: TCefCDMRegistrationError; const error_message: ustring); virtual;
|
|
||||||
|
|
||||||
public
|
|
||||||
constructor Create; virtual;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TCefFastRegisterCDMCallback = class(TCefRegisterCDMCallbackOwn)
|
|
||||||
protected
|
|
||||||
FCallback: TCefRegisterCDMProc;
|
|
||||||
|
|
||||||
procedure OnCDMRegistrationComplete(result: TCefCDMRegistrationError; const error_message: ustring); override;
|
|
||||||
|
|
||||||
public
|
|
||||||
constructor Create(const callback: TCefRegisterCDMProc); reintroduce;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TCefCustomRegisterCDMCallback = class(TCefRegisterCDMCallbackOwn)
|
|
||||||
protected
|
|
||||||
FCefApp : TCefApplicationCore;
|
|
||||||
|
|
||||||
procedure OnCDMRegistrationComplete(result: TCefCDMRegistrationError; const error_message: ustring); override;
|
|
||||||
|
|
||||||
public
|
|
||||||
constructor Create(const aCefApp : TCefApplicationCore); reintroduce;
|
|
||||||
destructor Destroy; override;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
{$IFDEF DELPHI16_UP}
|
|
||||||
System.SysUtils,
|
|
||||||
{$ELSE}
|
|
||||||
SysUtils,
|
|
||||||
{$ENDIF}
|
|
||||||
uCEFMiscFunctions, uCEFLibFunctions;
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************
|
|
||||||
// ********** TCefRegisterCDMCallbackOwn **********
|
|
||||||
// ************************************************
|
|
||||||
|
|
||||||
|
|
||||||
procedure cef_register_cdm_callback_on_cdm_registration_complete( self : PCefRegisterCDMCallback;
|
|
||||||
result : TCefCDMRegistrationError;
|
|
||||||
const error_message : PCefString); stdcall;
|
|
||||||
var
|
|
||||||
TempObject : TObject;
|
|
||||||
begin
|
|
||||||
TempObject := CefGetObject(self);
|
|
||||||
|
|
||||||
if (TempObject <> nil) and (TempObject is TCefRegisterCDMCallbackOwn) then
|
|
||||||
TCefRegisterCDMCallbackOwn(TempObject).OnCDMRegistrationComplete(result,
|
|
||||||
CefString(error_message));
|
|
||||||
end;
|
|
||||||
|
|
||||||
constructor TCefRegisterCDMCallbackOwn.Create;
|
|
||||||
begin
|
|
||||||
inherited CreateData(SizeOf(TCefRegisterCDMCallback));
|
|
||||||
|
|
||||||
with PCefRegisterCDMCallback(FData)^ do
|
|
||||||
on_cdm_registration_complete := {$IFDEF FPC}@{$ENDIF}cef_register_cdm_callback_on_cdm_registration_complete;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCefRegisterCDMCallbackOwn.OnCDMRegistrationComplete(result: TCefCDMRegistrationError;
|
|
||||||
const error_message: ustring);
|
|
||||||
begin
|
|
||||||
//
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************
|
|
||||||
// ********** TCefFastRegisterCDMCallback *********
|
|
||||||
// ************************************************
|
|
||||||
|
|
||||||
|
|
||||||
constructor TCefFastRegisterCDMCallback.Create(const callback: TCefRegisterCDMProc);
|
|
||||||
begin
|
|
||||||
FCallback := callback;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCefFastRegisterCDMCallback.OnCDMRegistrationComplete(result: TCefCDMRegistrationError;
|
|
||||||
const error_message: ustring);
|
|
||||||
begin
|
|
||||||
FCallback(result, error_message);
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
// ************************************************
|
|
||||||
// ******** TCefCustomRegisterCDMCallback *********
|
|
||||||
// ************************************************
|
|
||||||
|
|
||||||
|
|
||||||
constructor TCefCustomRegisterCDMCallback.Create(const aCefApp : TCefApplicationCore);
|
|
||||||
begin
|
|
||||||
inherited Create;
|
|
||||||
|
|
||||||
FCefApp := aCefApp;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TCefCustomRegisterCDMCallback.Destroy;
|
|
||||||
begin
|
|
||||||
FCefApp := nil;
|
|
||||||
|
|
||||||
inherited Destroy;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCefCustomRegisterCDMCallback.OnCDMRegistrationComplete( result : TCefCDMRegistrationError;
|
|
||||||
const error_message : ustring);
|
|
||||||
begin
|
|
||||||
try
|
|
||||||
if (FCefApp <> nil) then FCefApp.Internal_OnCDMRegistrationComplete(result, error_message);
|
|
||||||
except
|
|
||||||
on e : exception do
|
|
||||||
if CustomExceptionHandler('TCefCustomRegisterCDMCallback.OnCDMRegistrationComplete', e) then raise;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
end.
|
|
@ -203,7 +203,6 @@ type
|
|||||||
PCefUrlRequest = ^TCefUrlRequest;
|
PCefUrlRequest = ^TCefUrlRequest;
|
||||||
PCefWebPluginInfoVisitor = ^TCefWebPluginInfoVisitor;
|
PCefWebPluginInfoVisitor = ^TCefWebPluginInfoVisitor;
|
||||||
PCefWebPluginUnstableCallback = ^TCefWebPluginUnstableCallback;
|
PCefWebPluginUnstableCallback = ^TCefWebPluginUnstableCallback;
|
||||||
PCefRegisterCDMCallback = ^TCefRegisterCDMCallback;
|
|
||||||
PCefTaskRunner = ^TCefTaskRunner;
|
PCefTaskRunner = ^TCefTaskRunner;
|
||||||
PCefEndTracingCallback = ^TCefEndTracingCallback;
|
PCefEndTracingCallback = ^TCefEndTracingCallback;
|
||||||
PCefRequestContextSettings = ^TCefRequestContextSettings;
|
PCefRequestContextSettings = ^TCefRequestContextSettings;
|
||||||
@ -1146,14 +1145,6 @@ type
|
|||||||
CEF_MENU_COLOR_COUNT
|
CEF_MENU_COLOR_COUNT
|
||||||
);
|
);
|
||||||
|
|
||||||
// /include/internal/cef_types.h (cef_cdm_registration_error_t)
|
|
||||||
TCefCDMRegistrationError = (
|
|
||||||
CEF_CDM_REGISTRATION_ERROR_NONE,
|
|
||||||
CEF_CDM_REGISTRATION_ERROR_INCORRECT_CONTENTS,
|
|
||||||
CEF_CDM_REGISTRATION_ERROR_INCOMPATIBLE,
|
|
||||||
CEF_CDM_REGISTRATION_ERROR_NOT_SUPPORTED
|
|
||||||
);
|
|
||||||
|
|
||||||
// Values for browser preference "net.network_prediction_options"
|
// Values for browser preference "net.network_prediction_options"
|
||||||
// https://source.chromium.org/chromium/chromium/src/+/master:chrome/browser/net/prediction_options.h
|
// https://source.chromium.org/chromium/chromium/src/+/master:chrome/browser/net/prediction_options.h
|
||||||
TCefNetworkPredictionOptions = (
|
TCefNetworkPredictionOptions = (
|
||||||
@ -1920,12 +1911,6 @@ type
|
|||||||
is_unstable : procedure(self: PCefWebPluginUnstableCallback; const path: PCefString; unstable: Integer); stdcall;
|
is_unstable : procedure(self: PCefWebPluginUnstableCallback; const path: PCefString; unstable: Integer); stdcall;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// /include/capi/cef_web_plugin_capi.h (cef_register_cdm_callback_t)
|
|
||||||
TCefRegisterCDMCallback = record
|
|
||||||
base : TCefBaseRefCounted;
|
|
||||||
on_cdm_registration_complete : procedure(self:PCefRegisterCDMCallback; result: TCefCDMRegistrationError; const error_message: PCefString); stdcall;
|
|
||||||
end;
|
|
||||||
|
|
||||||
// /include/capi/cef_thread_capi.h (cef_thread_t)
|
// /include/capi/cef_thread_capi.h (cef_thread_t)
|
||||||
TCefThread = record
|
TCefThread = record
|
||||||
base : TCefBaseRefCounted;
|
base : TCefBaseRefCounted;
|
||||||
|
@ -2,9 +2,9 @@
|
|||||||
"UpdateLazPackages" : [
|
"UpdateLazPackages" : [
|
||||||
{
|
{
|
||||||
"ForceNotify" : true,
|
"ForceNotify" : true,
|
||||||
"InternalVersion" : 315,
|
"InternalVersion" : 316,
|
||||||
"Name" : "cef4delphi_lazarus.lpk",
|
"Name" : "cef4delphi_lazarus.lpk",
|
||||||
"Version" : "92.0.27.0"
|
"Version" : "93.1.11.0"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"UpdatePackageData" : {
|
"UpdatePackageData" : {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user