1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-08-04 21:32:54 +02:00

Update to CEF 3.2987.1594.g92fba9c

Bug fix for memory leak in TChromium.Internal_SavePreferences
This commit is contained in:
Salvador Diaz Fau
2017-03-16 19:09:42 +01:00
parent e722d8ea49
commit 68769fdda2
126 changed files with 1158 additions and 969 deletions

View File

@ -47,8 +47,8 @@ uses
Forms,
{$ENDIF }
uCEFApplication,
uCEFInterfaces,
uCEFMiscFunctions,
uCEFSchemeRegistrar,
uMiniBrowser in 'uMiniBrowser.pas' {MiniBrowserFrm},
uTestExtension in 'uTestExtension.pas',
uHelloScheme in 'uHelloScheme.pas',
@ -56,9 +56,9 @@ uses
{$R *.res}
procedure GlobalCEFApp_OnRegCustomSchemes(const registrar: ICefSchemeRegistrar);
procedure GlobalCEFApp_OnRegCustomSchemes(const registrar: TCefSchemeRegistrarRef);
begin
registrar.AddCustomScheme('hello', True, True, False);
registrar.AddCustomScheme('hello', True, True, False, False, False);
end;
begin

View File

@ -10,8 +10,8 @@
<Transaction>2017/03/12 17:11:11.000.786,=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uFileScheme.pas</Transaction>
<Transaction>2017/03/13 19:22:41.000.994,C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uFileScheme.pas=</Transaction>
<Transaction>2017/03/13 19:23:05.000.371,=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uHelloScheme.pas</Transaction>
<Transaction>2017/03/15 12:39:07.741,=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\Unit1.pas</Transaction>
<Transaction>2017/03/15 12:40:51.061,C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uPreferences.dfm=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\Unit1.dfm</Transaction>
<Transaction>2017/03/15 12:40:51.061,C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uPreferences.pas=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\Unit1.pas</Transaction>
<Transaction>2017/03/15 12:39:07.000.741,=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\Unit1.pas</Transaction>
<Transaction>2017/03/15 12:40:51.000.061,C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uPreferences.pas=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\Unit1.pas</Transaction>
<Transaction>2017/03/15 12:40:51.000.061,C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uPreferences.dfm=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\Unit1.dfm</Transaction>
</Transactions>
</BorlandProject>

View File

@ -1,14 +1,14 @@
[Closed Files]
File_0=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uPreferences.pas',0,1,31,23,63,0,0,,
File_1=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\vcl\Vcl.Dialogs.pas',0,1,6752,22,6771,0,0,,
File_2=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\Property Editors\FmxAnimationEditors.pas',0,1,1882,37,1904,0,0,,
File_3=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\Property Editors\Indy10\IdDsnPropEdBindingVCL.pas',0,1,789,25,811,0,0,,
File_4=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\Experts\ExpertsUIWizard.pas',0,1,540,33,562,0,0,,
File_5=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\XPDUnitTestModule.pas',0,1,135,32,157,0,0,,
File_6=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\data\ems\desktopconsole\EMSManagementConsole.FrameAdd.pas',0,1,478,32,500,0,0,,
File_7=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\ObjRepos\en\DelphiWin32\Vcl.recerror.pas',0,1,75,20,97,0,0,,
File_8=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\Graphics32\GR32_Dsgn_Bitmap.pas',0,1,316,34,338,0,0,,
File_9=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\Indy10\Builder\Package Generator\MgrPkgGenDBMain.pas',0,1,85,27,107,0,0,,
File_0=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uTestExtension.pas',0,1,1,1,40,0,0,,
File_1=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uHelloScheme.pas',0,1,1,1,40,0,0,,
File_2=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFApplication.pas',0,1,1,25,38,0,0,,
File_3=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uPreferences.pas',0,1,10,51,49,0,0,,
File_4=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\vcl\Vcl.Dialogs.pas',0,1,6752,22,6771,0,0,,
File_5=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\Property Editors\FmxAnimationEditors.pas',0,1,1882,37,1904,0,0,,
File_6=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\Property Editors\Indy10\IdDsnPropEdBindingVCL.pas',0,1,789,25,811,0,0,,
File_7=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\Experts\ExpertsUIWizard.pas',0,1,540,33,562,0,0,,
File_8=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\DUnit\Contrib\DUnitWizard\Source\DelphiExperts\DUnitProject\XPDUnitTestModule.pas',0,1,135,32,157,0,0,,
File_9=TSourceModule,'C:\Program Files\Embarcadero\Studio\17.0\source\data\ems\desktopconsole\EMSManagementConsole.FrameAdd.pas',0,1,478,32,500,0,0,,
[Modules]
Module0=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\MiniBrowser.dproj
@ -50,17 +50,18 @@ ClientHeight=9428
DockedToMainForm=1
BorlandEditorCodeExplorer=BorlandEditorCodeExplorer@EditWindow0
TopPanelSize=0
LeftPanelSize=0
LeftPanelSize=1898
LeftPanelClients=PropertyInspector,DockSite3
LeftPanelData=00000800010100000000AA19000000000000016A0700000000000001000000005D0E000009000000446F636B53697465330100000000A12300001100000050726F7065727479496E73706563746F72FFFFFFFF
RightPanelSize=2000
RightPanelClients=DockSite2,DockSite4
RightPanelData=00000800010100000000AA1900000000000001D0070000000000000100000000110E000009000000446F636B53697465320100000000A123000009000000446F636B5369746534FFFFFFFF
RightPanelData=00000800010100000000AA1900000000000001D00700000000000001000000004312000009000000446F636B53697465320100000000A123000009000000446F636B5369746534FFFFFFFF
BottomPanelSize=0
BottomPanelClients=DockSite1,MessageView
BottomPanelData=0000080001020200000009000000446F636B53697465310F0000004D65737361676556696577466F726D3B3600000000000002E80600000000000001000000003B3600000F0000004D65737361676556696577466F726DFFFFFFFF
BottomPanelData=0000080001020200000009000000446F636B53697465310F0000004D65737361676556696577466F726D1234000000000000022506000000000000FFFFFFFF
BottomMiddlePanelSize=0
BottomMiddlePanelClients=DockSite0,GraphDrawingModel
BottomMiddelPanelData=0000080001020200000009000000446F636B536974653010000000477261706844726177696E67566965779D1D00000000000002F306000000000000FFFFFFFF
TabDockLeftClients=DockSite3=0,PropertyInspector=1
[View0]
CustomEditViewType=TWelcomePageView
@ -69,9 +70,9 @@ WelcomePageURL=bds:/default.htm
[View1]
CustomEditViewType=TEditView
Module=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\uMiniBrowser.pas
CursorX=68
CursorY=342
TopLine=356
CursorX=76
CursorY=82
TopLine=1
LeftCol=1
Elisions=
Bookmarks=
@ -80,9 +81,9 @@ EditViewName=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\d
[View2]
CustomEditViewType=TEditView
Module=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\demos\MiniBrowser\MiniBrowser.dpr
CursorX=3
CursorY=86
TopLine=49
CursorX=1
CursorY=41
TopLine=22
LeftCol=1
Elisions=
Bookmarks=
@ -102,11 +103,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1345
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1345
ClientHeight=1121
TBDockHeight=213
LRDockWidth=13602
Dockable=1
@ -150,11 +151,11 @@ State=0
Left=0
Top=0
Width=2000
Height=3117
Height=4226
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=3117
ClientHeight=4226
TBDockHeight=5897
LRDockWidth=2352
Dockable=1
@ -167,14 +168,14 @@ Visible=0
Docked=1
State=0
Left=0
Top=23
Width=10000
Height=1570
Top=0
Width=2773
Height=1424
MaxLeft=-1
MaxTop=-1
ClientWidth=10000
ClientHeight=1570
TBDockHeight=1570
ClientWidth=2773
ClientHeight=1424
TBDockHeight=1424
LRDockWidth=2773
Dockable=1
StayOnTop=0
@ -188,11 +189,11 @@ State=0
Left=0
Top=0
Width=2000
Height=5448
Height=4339
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=5448
ClientHeight=4339
TBDockHeight=7152
LRDockWidth=2000
Dockable=1
@ -242,8 +243,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=-8
Top=-30
Left=-121
Top=-74
Width=1844
Height=3139
MaxLeft=-1
@ -296,22 +297,22 @@ StayOnTop=0
[PropertyInspector]
PercentageSizes=1
Create=1
Visible=0
Visible=1
Docked=1
State=0
Left=1
Top=24
Left=0
Top=362
Width=1898
Height=9148
Height=5370
MaxLeft=-1
MaxTop=-1
ClientWidth=1898
ClientHeight=9148
ClientHeight=5370
TBDockHeight=7119
LRDockWidth=1898
Dockable=1
StayOnTop=0
SplitPos=119
SplitPos=111
[frmDesignPreview]
PercentageSizes=1
@ -382,11 +383,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1345
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1345
ClientHeight=1121
TBDockHeight=415
LRDockWidth=4953
Dockable=1
@ -401,11 +402,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1345
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1345
ClientHeight=1121
TBDockHeight=213
LRDockWidth=7406
Dockable=1
@ -424,11 +425,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1345
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1345
ClientHeight=1121
TBDockHeight=1536
LRDockWidth=3484
Dockable=1
@ -443,11 +444,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1345
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1345
ClientHeight=1121
TBDockHeight=2063
LRDockWidth=3484
Dockable=1
@ -565,11 +566,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1345
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1345
ClientHeight=1121
TBDockHeight=1547
LRDockWidth=8742
Dockable=1
@ -590,12 +591,12 @@ Docked=1
State=0
Left=0
Top=0
Width=1773
Height=6693
Width=1898
Height=3498
MaxLeft=-1
MaxTop=-1
ClientWidth=1773
ClientHeight=6693
ClientWidth=1898
ClientHeight=3498
TBDockHeight=3677
LRDockWidth=1898
Dockable=1
@ -677,12 +678,12 @@ State=0
Left=0
Top=23
Width=3820
Height=1648
Height=1424
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1648
TBDockHeight=1648
ClientHeight=1424
TBDockHeight=1424
LRDockWidth=3820
Dockable=1
StayOnTop=0
@ -701,11 +702,11 @@ State=0
Left=0
Top=23
Width=2000
Height=3419
Height=4529
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=3419
ClientHeight=4529
TBDockHeight=7119
LRDockWidth=2000
Dockable=1
@ -715,21 +716,21 @@ ActiveTabID=ProjectManager
TabDockClients=ProjectManager,ModelViewTool,DataExplorerContainer,frmDesignPreview,TFileExplorerForm
[DockSite3]
HostDockSite=LeftDockTabSet
HostDockSite=DockLeftPanel
DockSiteType=1
PercentageSizes=1
Create=1
Visible=0
Visible=1
Docked=1
State=0
Left=0
Top=0
Top=23
Width=1898
Height=7119
Height=3498
MaxLeft=-1
MaxTop=-1
ClientWidth=1773
ClientHeight=6693
ClientWidth=1898
ClientHeight=3498
TBDockHeight=7119
LRDockWidth=1898
Dockable=1
@ -747,13 +748,13 @@ Visible=1
Docked=1
State=0
Left=0
Top=355
Top=454
Width=2000
Height=5448
Height=4339
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=5448
ClientHeight=4339
TBDockHeight=7119
LRDockWidth=2000
Dockable=1

View File

@ -1,10 +1,10 @@
[Stats]
EditorSecs=15680
DesignerSecs=1469
InspectorSecs=1128
CompileSecs=710437
OtherSecs=2298
EditorSecs=16035
DesignerSecs=1777
InspectorSecs=1204
CompileSecs=764079
OtherSecs=2346
StartTime=11/02/2017 10:51:15
RealKeys=0
EffectiveKeys=0
DebugSecs=7901
DebugSecs=8921

View File

@ -2,7 +2,7 @@ object MiniBrowserFrm: TMiniBrowserFrm
Left = 0
Top = 0
Caption = 'MiniBrowser'
ClientHeight = 681
ClientHeight = 716
ClientWidth = 1089
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
@ -19,7 +19,7 @@ object MiniBrowserFrm: TMiniBrowserFrm
Left = 1084
Top = 41
Width = 5
Height = 621
Height = 656
Align = alRight
Visible = False
ExplicitLeft = 0
@ -109,7 +109,7 @@ object MiniBrowserFrm: TMiniBrowserFrm
object URLEditPnl: TPanel
Left = 133
Top = 0
Width = 915
Width = 883
Height = 41
Align = alClient
BevelOuter = bvNone
@ -117,36 +117,36 @@ object MiniBrowserFrm: TMiniBrowserFrm
Padding.Bottom = 8
ShowCaption = False
TabOrder = 1
ExplicitWidth = 844
ExplicitWidth = 915
object URLCbx: TComboBox
Left = 0
Top = 9
Width = 915
Width = 883
Height = 21
Align = alClient
TabOrder = 0
Text = 'https://www.google.com'
OnKeyUp = URLCbxKeyUp
OnSelect = URLCbxSelect
Items.Strings = (
'https://www.google.com'
'hello://world/'
'https://www.whatismybrowser.com/detect/what-http-headers-is-my-b' +
'rowser-sending')
ExplicitWidth = 948
'rowser-sending'
'https://www.w3schools.com/js/tryit.asp?filename=tryjs_win_close')
ExplicitWidth = 915
end
end
object ConfigPnl: TPanel
Left = 1048
Left = 1016
Top = 0
Width = 41
Width = 73
Height = 41
Align = alRight
BevelOuter = bvNone
TabOrder = 2
ExplicitLeft = 1015
object ConfigBtn: TButton
Left = 8
Left = 40
Top = 8
Width = 25
Height = 25
@ -160,34 +160,52 @@ object MiniBrowserFrm: TMiniBrowserFrm
TabOrder = 0
OnClick = ConfigBtnClick
end
object GoBtn: TButton
Left = 8
Top = 8
Width = 25
Height = 25
Caption = #9658
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -17
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
TabOrder = 1
OnClick = GoBtnClick
end
end
end
object CEFWindowParent1: TCEFWindowParent
Left = 0
Top = 41
Width = 1084
Height = 621
Height = 656
Align = alClient
TabOrder = 1
ExplicitHeight = 621
end
object DevTools: TCEFWindowParent
Left = 1089
Top = 41
Width = 0
Height = 621
Height = 656
Align = alRight
TabOrder = 2
Visible = False
ExplicitHeight = 621
end
object StatusBar1: TStatusBar
Left = 0
Top = 662
Top = 697
Width = 1089
Height = 19
Panels = <
item
Width = 50
end>
ExplicitTop = 662
end
object Chromium1: TChromium
OnTextResultAvailable = Chromium1TextResultAvailable

View File

@ -86,6 +86,7 @@ type
DevTools1: TMenuItem;
N1: TMenuItem;
Preferences1: TMenuItem;
GoBtn: TButton;
procedure FormShow(Sender: TObject);
procedure BackBtnClick(Sender: TObject);
procedure ForwardBtnClick(Sender: TObject);
@ -114,13 +115,11 @@ type
const browser: ICefBrowser; const value: ustring);
procedure Chromium1TextResultAvailable(Sender: TObject;
const aText: string);
procedure URLCbxKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure URLCbxSelect(Sender: TObject);
procedure PopupMenu1Popup(Sender: TObject);
procedure DevTools1Click(Sender: TObject);
procedure Preferences1Click(Sender: TObject);
procedure ConfigBtnClick(Sender: TObject);
procedure GoBtnClick(Sender: TObject);
protected
procedure AddURL(const aURL : string);
@ -157,6 +156,11 @@ begin
Chromium1.GoForward;
end;
procedure TMiniBrowserFrm.GoBtnClick(Sender: TObject);
begin
Chromium1.LoadURL(URLCbx.Text);
end;
procedure TMiniBrowserFrm.ReloadBtnClick(Sender: TObject);
begin
Chromium1.Reload;
@ -340,17 +344,6 @@ begin
end;
end;
procedure TMiniBrowserFrm.URLCbxKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key = 13) then Chromium1.LoadURL(URLCbx.Text);
end;
procedure TMiniBrowserFrm.URLCbxSelect(Sender: TObject);
begin
Chromium1.LoadURL(URLCbx.Text);
end;
procedure TMiniBrowserFrm.ConfigBtnClick(Sender: TObject);
var
TempPoint : TPoint;

View File

@ -50,7 +50,7 @@ RightPanelClients=DockSite2
RightPanelData=00000800010100000000AA1900000000000001D0070000000000000100000000A123000009000000446F636B5369746532FFFFFFFF
BottomPanelSize=0
BottomPanelClients=DockSite1,MessageView
BottomPanelData=0000080001020200000009000000446F636B53697465310F0000004D65737361676556696577466F726D3B36000000000000020F06000000000000FFFFFFFF
BottomPanelData=0000080001020200000009000000446F636B53697465310F0000004D65737361676556696577466F726D1234000000000000022506000000000000FFFFFFFF
BottomMiddlePanelSize=0
BottomMiddlePanelClients=DockSite0,GraphDrawingModel
BottomMiddelPanelData=0000080001020200000009000000446F636B536974653010000000477261706844726177696E67566965779D1D00000000000002F306000000000000FFFFFFFF
@ -86,11 +86,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1043
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1043
ClientHeight=1121
TBDockHeight=213
LRDockWidth=13602
Dockable=1
@ -151,14 +151,14 @@ Visible=0
Docked=1
State=0
Left=0
Top=23
Top=0
Width=2773
Height=1345
Height=1424
MaxLeft=-1
MaxTop=-1
ClientWidth=2773
ClientHeight=1345
TBDockHeight=1345
ClientHeight=1424
TBDockHeight=1424
LRDockWidth=2773
Dockable=1
StayOnTop=0
@ -171,12 +171,12 @@ Docked=1
State=0
Left=0
Top=0
Width=1875
Height=6738
Width=2000
Height=4339
MaxLeft=-1
MaxTop=-1
ClientWidth=1875
ClientHeight=6738
ClientWidth=2000
ClientHeight=4339
TBDockHeight=7152
LRDockWidth=2000
Dockable=1
@ -226,8 +226,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=-8
Top=-30
Left=-148
Top=-137
Width=1844
Height=3139
MaxLeft=-1
@ -283,14 +283,14 @@ Create=1
Visible=0
Docked=1
State=0
Left=78
Top=386
Left=0
Top=362
Width=1898
Height=7164
Height=5370
MaxLeft=-1
MaxTop=-1
ClientWidth=1773
ClientHeight=6738
ClientWidth=1898
ClientHeight=5370
TBDockHeight=7164
LRDockWidth=1898
Dockable=1
@ -306,11 +306,11 @@ State=0
Left=0
Top=0
Width=2000
Height=6816
Height=6861
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=6816
ClientHeight=6861
TBDockHeight=5964
LRDockWidth=2508
Dockable=1
@ -322,8 +322,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=-946
Top=1
Left=-898
Top=-137
Width=2844
Height=6200
MaxLeft=-1
@ -341,8 +341,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=-8
Top=287
Left=-1026
Top=-137
Width=273
Height=359
MaxLeft=-1
@ -366,11 +366,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1043
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1043
ClientHeight=1121
TBDockHeight=415
LRDockWidth=4953
Dockable=1
@ -385,11 +385,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1043
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1043
ClientHeight=1121
TBDockHeight=213
LRDockWidth=7406
Dockable=1
@ -408,11 +408,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1043
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1043
ClientHeight=1121
TBDockHeight=1536
LRDockWidth=3484
Dockable=1
@ -427,11 +427,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1043
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1043
ClientHeight=1121
TBDockHeight=2063
LRDockWidth=3484
Dockable=1
@ -446,11 +446,11 @@ State=0
Left=0
Top=0
Width=2336
Height=942
Height=1177
MaxLeft=-1
MaxTop=-1
ClientWidth=2336
ClientHeight=942
ClientHeight=1177
TBDockHeight=2321
LRDockWidth=2820
Dockable=1
@ -511,11 +511,11 @@ State=0
Left=0
Top=0
Width=2000
Height=6816
Height=6861
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=6816
ClientHeight=6861
TBDockHeight=4888
LRDockWidth=7148
Dockable=1
@ -527,8 +527,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=249
Top=709
Left=0
Top=0
Width=2859
Height=3206
MaxLeft=-1
@ -549,11 +549,11 @@ State=0
Left=0
Top=0
Width=3820
Height=1043
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1043
ClientHeight=1121
TBDockHeight=1547
LRDockWidth=8742
Dockable=1
@ -574,12 +574,12 @@ Docked=1
State=0
Left=0
Top=0
Width=1773
Height=6738
Width=1898
Height=9170
MaxLeft=-1
MaxTop=-1
ClientWidth=1773
ClientHeight=6738
ClientWidth=1898
ClientHeight=9170
TBDockHeight=3677
LRDockWidth=1898
Dockable=1
@ -594,11 +594,11 @@ State=0
Left=0
Top=0
Width=2000
Height=6816
Height=6861
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=6816
ClientHeight=6861
TBDockHeight=4888
LRDockWidth=5305
Dockable=1
@ -659,14 +659,14 @@ Visible=0
Docked=1
State=0
Left=0
Top=23
Top=0
Width=3820
Height=1345
Height=1424
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1345
TBDockHeight=1345
ClientHeight=1424
TBDockHeight=1424
LRDockWidth=3820
Dockable=1
StayOnTop=0
@ -707,13 +707,13 @@ Visible=0
Docked=1
State=0
Left=0
Top=0
Top=23
Width=1898
Height=7164
Height=9170
MaxLeft=-1
MaxTop=-1
ClientWidth=1773
ClientHeight=6738
ClientWidth=1898
ClientHeight=9170
TBDockHeight=7164
LRDockWidth=1898
Dockable=1
@ -731,13 +731,13 @@ Visible=0
Docked=1
State=0
Left=0
Top=0
Top=454
Width=2000
Height=7164
Height=4339
MaxLeft=-1
MaxTop=-1
ClientWidth=1875
ClientHeight=6738
ClientWidth=2000
ClientHeight=4339
TBDockHeight=7164
LRDockWidth=2000
Dockable=1

View File

@ -1,9 +1,9 @@
[Stats]
EditorSecs=2475
EditorSecs=2478
DesignerSecs=267
InspectorSecs=136
CompileSecs=119220
OtherSecs=449
CompileSecs=124554
OtherSecs=456
StartTime=22/01/2017 14:51:01
RealKeys=0
EffectiveKeys=0

View File

@ -41,10 +41,10 @@ TopPanelSize=0
LeftPanelSize=0
RightPanelSize=2000
RightPanelClients=DockSite2
RightPanelData=00000800010100000000551500000000000001D00700000000000001000000009D1D000009000000446F636B5369746532FFFFFFFF
BottomPanelSize=1475
RightPanelData=000008000101000000001E1500000000000001D0070000000000000100000000511D000009000000446F636B5369746532FFFFFFFF
BottomPanelSize=1551
BottomPanelClients=DockSite1,MessageView
BottomPanelData=0000080001020100000009000000446F636B53697465313B3600000000000002C30500000000000001000000003B3600000F0000004D65737361676556696577466F726DFFFFFFFF
BottomPanelData=0000080001020100000009000000446F636B53697465313B36000000000000020F0600000000000001000000003B3600000F0000004D65737361676556696577466F726DFFFFFFFF
BottomMiddlePanelSize=0
BottomMiddlePanelClients=DockSite0,GraphDrawingModel
BottomMiddelPanelData=0000080001020200000009000000446F636B536974653010000000477261706844726177696E67566965779D1D00000000000002F306000000000000FFFFFFFF
@ -69,11 +69,11 @@ State=0
Left=0
Top=0
Width=3820
Height=964
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=964
ClientHeight=1121
TBDockHeight=213
LRDockWidth=13602
Dockable=1
@ -117,11 +117,11 @@ State=0
Left=0
Top=0
Width=2000
Height=7276
Height=7197
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=7276
ClientHeight=7197
TBDockHeight=5897
LRDockWidth=2352
Dockable=1
@ -136,12 +136,12 @@ State=0
Left=0
Top=23
Width=10000
Height=1267
Height=1345
MaxLeft=-1
MaxTop=-1
ClientWidth=10000
ClientHeight=1267
TBDockHeight=1267
ClientHeight=1345
TBDockHeight=1345
LRDockWidth=2773
Dockable=1
StayOnTop=0
@ -154,12 +154,12 @@ Docked=1
State=0
Left=0
Top=0
Width=1875
Height=6738
Width=2000
Height=4339
MaxLeft=-1
MaxTop=-1
ClientWidth=1875
ClientHeight=6738
ClientWidth=2000
ClientHeight=4339
TBDockHeight=7152
LRDockWidth=2000
Dockable=1
@ -209,8 +209,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=-8
Top=-30
Left=-148
Top=-137
Width=1844
Height=3139
MaxLeft=-1
@ -266,14 +266,14 @@ Create=1
Visible=0
Docked=1
State=0
Left=78
Top=386
Left=0
Top=362
Width=1898
Height=7164
Height=5370
MaxLeft=-1
MaxTop=-1
ClientWidth=1773
ClientHeight=6738
ClientWidth=1898
ClientHeight=5370
TBDockHeight=7164
LRDockWidth=1898
Dockable=1
@ -289,11 +289,11 @@ State=0
Left=0
Top=0
Width=2000
Height=6816
Height=6861
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=6816
ClientHeight=6861
TBDockHeight=5964
LRDockWidth=2508
Dockable=1
@ -305,8 +305,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=-946
Top=1
Left=-898
Top=-137
Width=2844
Height=6200
MaxLeft=-1
@ -324,8 +324,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=-8
Top=287
Left=-1026
Top=-137
Width=273
Height=359
MaxLeft=-1
@ -349,11 +349,11 @@ State=0
Left=0
Top=0
Width=3820
Height=964
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=964
ClientHeight=1121
TBDockHeight=415
LRDockWidth=4953
Dockable=1
@ -368,11 +368,11 @@ State=0
Left=0
Top=0
Width=3820
Height=964
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=964
ClientHeight=1121
TBDockHeight=213
LRDockWidth=7406
Dockable=1
@ -391,11 +391,11 @@ State=0
Left=0
Top=0
Width=3820
Height=964
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=964
ClientHeight=1121
TBDockHeight=1536
LRDockWidth=3484
Dockable=1
@ -410,11 +410,11 @@ State=0
Left=0
Top=0
Width=3820
Height=964
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=964
ClientHeight=1121
TBDockHeight=2063
LRDockWidth=3484
Dockable=1
@ -429,11 +429,11 @@ State=0
Left=0
Top=0
Width=2336
Height=942
Height=1177
MaxLeft=-1
MaxTop=-1
ClientWidth=2336
ClientHeight=942
ClientHeight=1177
TBDockHeight=2321
LRDockWidth=2820
Dockable=1
@ -494,11 +494,11 @@ State=0
Left=0
Top=0
Width=2000
Height=6816
Height=6861
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=6816
ClientHeight=6861
TBDockHeight=4888
LRDockWidth=7148
Dockable=1
@ -510,8 +510,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=249
Top=709
Left=0
Top=0
Width=2859
Height=3206
MaxLeft=-1
@ -532,11 +532,11 @@ State=0
Left=0
Top=0
Width=3820
Height=964
Height=1121
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=964
ClientHeight=1121
TBDockHeight=1547
LRDockWidth=8742
Dockable=1
@ -557,12 +557,12 @@ Docked=1
State=0
Left=0
Top=0
Width=1773
Height=6738
Width=1898
Height=9170
MaxLeft=-1
MaxTop=-1
ClientWidth=1773
ClientHeight=6738
ClientWidth=1898
ClientHeight=9170
TBDockHeight=3677
LRDockWidth=1898
Dockable=1
@ -577,11 +577,11 @@ State=0
Left=0
Top=0
Width=2000
Height=6816
Height=6861
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=6816
ClientHeight=6861
TBDockHeight=4888
LRDockWidth=5305
Dockable=1
@ -642,14 +642,14 @@ Visible=0
Docked=1
State=0
Left=0
Top=23
Top=0
Width=3820
Height=1267
Height=1424
MaxLeft=-1
MaxTop=-1
ClientWidth=3820
ClientHeight=1267
TBDockHeight=1267
ClientHeight=1424
TBDockHeight=1424
LRDockWidth=3820
Dockable=1
StayOnTop=0
@ -668,11 +668,11 @@ State=0
Left=0
Top=23
Width=2000
Height=7578
Height=7500
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=7578
ClientHeight=7500
TBDockHeight=7164
LRDockWidth=2000
Dockable=1
@ -690,13 +690,13 @@ Visible=0
Docked=1
State=0
Left=0
Top=0
Top=23
Width=1898
Height=7164
Height=9170
MaxLeft=-1
MaxTop=-1
ClientWidth=1773
ClientHeight=6738
ClientWidth=1898
ClientHeight=9170
TBDockHeight=7164
LRDockWidth=1898
Dockable=1
@ -714,13 +714,13 @@ Visible=0
Docked=1
State=0
Left=0
Top=0
Top=454
Width=2000
Height=7164
Height=4339
MaxLeft=-1
MaxTop=-1
ClientWidth=1875
ClientHeight=6738
ClientWidth=2000
ClientHeight=4339
TBDockHeight=7164
LRDockWidth=2000
Dockable=1

View File

@ -2,8 +2,8 @@
EditorSecs=2193
DesignerSecs=210
InspectorSecs=61
CompileSecs=119428
OtherSecs=334
CompileSecs=127489
OtherSecs=357
StartTime=22/01/2017 17:35:20
RealKeys=0
EffectiveKeys=0

View File

@ -41,7 +41,6 @@ contains
uCEFMiscFunctions in 'uCEFMiscFunctions.pas',
uCEFLibFunctions in 'uCEFLibFunctions.pas',
uCEFApplication in 'uCEFApplication.pas',
uCEFBase in 'uCEFBase.pas',
uCEFSchemeRegistrar in 'uCEFSchemeRegistrar.pas',
uCEFCommandLine in 'uCEFCommandLine.pas',
uCEFClient in 'uCEFClient.pas',
@ -149,6 +148,8 @@ contains
uCEFX509Certificate in 'uCEFX509Certificate.pas',
uCEFSSLStatus in 'uCEFSSLStatus.pas',
uCEFSelectClientCertificateCallback in 'uCEFSelectClientCertificateCallback.pas',
uCEFChromiumWindow in 'uCEFChromiumWindow.pas';
uCEFChromiumWindow in 'uCEFChromiumWindow.pas',
uCEFBaseRefCounted in 'uCEFBaseRefCounted.pas',
uCEFBaseScopedWrapper in 'uCEFBaseScopedWrapper.pas';
end.

View File

@ -99,7 +99,6 @@
<DCCReference Include="uCEFMiscFunctions.pas"/>
<DCCReference Include="uCEFLibFunctions.pas"/>
<DCCReference Include="uCEFApplication.pas"/>
<DCCReference Include="uCEFBase.pas"/>
<DCCReference Include="uCEFSchemeRegistrar.pas"/>
<DCCReference Include="uCEFCommandLine.pas"/>
<DCCReference Include="uCEFClient.pas"/>
@ -208,6 +207,8 @@
<DCCReference Include="uCEFSSLStatus.pas"/>
<DCCReference Include="uCEFSelectClientCertificateCallback.pas"/>
<DCCReference Include="uCEFChromiumWindow.pas"/>
<DCCReference Include="uCEFBaseRefCounted.pas"/>
<DCCReference Include="uCEFBaseScopedWrapper.pas"/>
<BuildConfiguration Include="Release">
<Key>Cfg_2</Key>
<CfgParent>Base</CfgParent>
@ -249,22 +250,13 @@
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="C:\Users\Public\Documents\Embarcadero\Studio\17.0\Bpl\CEF4Delphi.bpl" Configuration="Debug" Class="ProjectOutput">
<DeployFile LocalName="..\..\..\..\..\..\..\Public\Documents\Embarcadero\Studio\17.0\Bpl\CEF4Delphi.bpl" Configuration="Debug" Class="ProjectOutput">
<Platform Name="Win32">
<RemoteName>CEF4Delphi.bpl</RemoteName>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployClass Name="DependencyModule">
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.dll;.bpl</Extensions>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceResourceRules"/>
<DeployClass Name="ProjectOSXResource">
<Platform Name="OSX32">
<RemoteDir>Contents\Resources</RemoteDir>
@ -578,7 +570,16 @@
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceResourceRules"/>
<DeployClass Name="DependencyModule">
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.dll;.bpl</Extensions>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
</DeployClass>
<ProjectRoot Platform="iOSDevice64" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win64" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSDevice32" Name="$(PROJECTNAME).app"/>

View File

@ -273,5 +273,8 @@
<Transaction>2017/01/05 09:46:44.000.222,C:\Program Files\Embarcadero\Studio\17.0\cef3\uCEFChromiumWindow.pas=</Transaction>
<Transaction>2017/01/05 10:34:46.000.529,=C:\Program Files\Embarcadero\Studio\17.0\cef3\uCEFChromiumWindow.pas</Transaction>
<Transaction>2017/01/22 10:37:38.000.090,C:\Program Files\Embarcadero\Studio\17.0\cef3\CEF4Delphi.dproj=C:\Program Files\Embarcadero\Studio\17.0\cef3\cef3.dproj</Transaction>
<Transaction>2017/03/16 09:32:10.000.622,=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFBaseRefCounted.pas</Transaction>
<Transaction>2017/03/16 09:32:22.000.431,=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFBaseScopedWrapper.pas</Transaction>
<Transaction>2017/03/16 09:32:54.000.567,C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFBase.pas=</Transaction>
</Transactions>
</BorlandProject>

View File

@ -1,48 +1,27 @@
[Closed Files]
File_0=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFDomVisitor.pas',0,1,107,50,130,0,0,,
File_1=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFDeleteCookiesCallback.pas',0,1,103,56,126,0,0,,
File_2=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFPDFPrintCallback.pas',0,1,102,42,123,0,0,,
File_3=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFStringVisitor.pas',0,1,110,42,131,0,0,,
File_4=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFInterfaces.pas',0,1,189,54,219,0,0,,
File_5=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFApplication.pas',0,1,264,103,802,0,0,,
File_6=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi_new\source\uCEFApplication.pas',0,1,184,1,193,0,0,,
File_7=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi_new\source\uCEFMiscFunctions.pas',0,1,124,10,124,0,0,,
File_8=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFMiscFunctions.pas',0,1,107,60,117,0,0,,
File_9=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFLibFunctions.pas',0,1,133,3,153,0,0,,
File_0=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFApplication.pas',0,1,31,80,57,0,0,,
File_1=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas',0,1,1995,70,2009,0,0,,
File_2=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFMiscFunctions.pas',0,1,53,30,76,0,0,,
File_3=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi_new\source\uCEFMiscFunctions.pas',0,1,1,1,1,0,0,,
File_4=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFLibFunctions.pas',0,1,1,1,1,0,0,,
File_5=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFResourceHandler.pas',0,1,1,1,1,0,0,,
File_6=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFSchemeRegistrar.pas',0,1,1,1,1,0,0,,
File_7=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi_new\source\uCEFLibFunctions.pas',0,1,1,1,1,0,0,,
File_8=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi_new\source\uCEFResourceHandler.pas',0,1,1,1,1,0,0,,
File_9=TSourceModule,'C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi_new\source\uCEFSchemeRegistrar.pas',0,1,1,1,1,0,0,,
[Modules]
Module0=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas
Module1=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFConstants.pas
Module2=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFTask.pas
Module3=default.htm
Count=4
Module0=default.htm
Count=1
EditWindowCount=1
[C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas]
ModuleType=TSourceModule
FormState=0
FormOnTop=0
[C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFConstants.pas]
ModuleType=TSourceModule
FormState=0
FormOnTop=0
[C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFTask.pas]
ModuleType=TSourceModule
FormState=0
FormOnTop=0
[default.htm]
ModuleType=TURLModule
[EditWindow0]
ViewCount=4
CurrentEditView=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas
ViewCount=1
CurrentView=0
View0=0
View1=1
View2=2
View3=3
PercentageSizes=1
Create=1
Visible=1
@ -61,54 +40,20 @@ BorlandEditorCodeExplorer=BorlandEditorCodeExplorer@EditWindow0
TopPanelSize=0
LeftPanelSize=0
RightPanelSize=2000
RightPanelClients=DockSite2
RightPanelData=00000800010100000000DE1300000000000001D0070000000000000100000000951B000009000000446F636B5369746532FFFFFFFF
BottomPanelSize=1996
RightPanelClients=DockSite2,DockSite4
RightPanelData=00000800010100000000AA1900000000000001D00700000000000001000000004312000009000000446F636B53697465320100000000A123000009000000446F636B5369746534FFFFFFFF
BottomPanelSize=0
BottomPanelClients=DockSite1,MessageView
BottomPanelData=0000080001020100000009000000446F636B53697465313B3600000000000002CC0700000000000001000000003B3600000F0000004D65737361676556696577466F726DFFFFFFFF
BottomPanelData=0000080001020200000009000000446F636B53697465310F0000004D65737361676556696577466F726D1234000000000000022506000000000000FFFFFFFF
BottomMiddlePanelSize=0
BottomMiddlePanelClients=DockSite0,GraphDrawingModel
BottomMiddelPanelData=0000080001020200000009000000446F636B536974653010000000477261706844726177696E67566965779D1D00000000000002F306000000000000FFFFFFFF
TabDockLeftClients=PropertyInspector=0,DockSite3=1
TabDockRightClients=DockSite4=0
[View0]
CustomEditViewType=TWelcomePageView
WelcomePageURL=bds:/default.htm
[View1]
CustomEditViewType=TEditView
Module=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas
CursorX=87
CursorY=1578
TopLine=1570
LeftCol=1
Elisions=
Bookmarks=
EditViewName=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFChromium.pas
[View2]
CustomEditViewType=TEditView
Module=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFConstants.pas
CursorX=57
CursorY=268
TopLine=244
LeftCol=1
Elisions=
Bookmarks=
EditViewName=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFConstants.pas
[View3]
CustomEditViewType=TEditView
Module=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFTask.pas
CursorX=30
CursorY=256
TopLine=221
LeftCol=1
Elisions=
Bookmarks=
EditViewName=C:\Users\usuario\Documents\Embarcadero\Studio\Projects\CEF4Delphi\source\uCEFTask.pas
[Watches]
Count=0
@ -171,11 +116,11 @@ State=0
Left=0
Top=0
Width=2000
Height=6738
Height=4226
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=6738
ClientHeight=4226
TBDockHeight=5897
LRDockWidth=2352
Dockable=1
@ -184,18 +129,18 @@ StayOnTop=0
[MessageView]
PercentageSizes=1
Create=1
Visible=1
Visible=0
Docked=1
State=0
Left=0
Top=23
Width=10000
Height=1805
Top=0
Width=2773
Height=1424
MaxLeft=-1
MaxTop=-1
ClientWidth=10000
ClientHeight=1805
TBDockHeight=1805
ClientWidth=2773
ClientHeight=1424
TBDockHeight=1424
LRDockWidth=2773
Dockable=1
StayOnTop=0
@ -263,8 +208,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=-8
Top=-30
Left=-148
Top=-137
Width=1844
Height=3139
MaxLeft=-1
@ -320,14 +265,14 @@ Create=1
Visible=0
Docked=1
State=0
Left=78
Top=386
Left=0
Top=362
Width=1898
Height=7164
Height=5370
MaxLeft=-1
MaxTop=-1
ClientWidth=1773
ClientHeight=6738
ClientWidth=1898
ClientHeight=5370
TBDockHeight=7164
LRDockWidth=1898
Dockable=1
@ -343,11 +288,11 @@ State=0
Left=0
Top=0
Width=2000
Height=6816
Height=6861
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=6816
ClientHeight=6861
TBDockHeight=5964
LRDockWidth=2508
Dockable=1
@ -359,8 +304,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=-946
Top=1
Left=-898
Top=-137
Width=2844
Height=6200
MaxLeft=-1
@ -378,8 +323,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=-1152
Top=243
Left=-1026
Top=-137
Width=273
Height=359
MaxLeft=-1
@ -483,11 +428,11 @@ State=0
Left=0
Top=0
Width=2336
Height=942
Height=1177
MaxLeft=-1
MaxTop=-1
ClientWidth=2336
ClientHeight=942
ClientHeight=1177
TBDockHeight=2321
LRDockWidth=2820
Dockable=1
@ -548,11 +493,11 @@ State=0
Left=0
Top=0
Width=2000
Height=6816
Height=6861
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=6816
ClientHeight=6861
TBDockHeight=4888
LRDockWidth=7148
Dockable=1
@ -564,8 +509,8 @@ Create=1
Visible=0
Docked=1
State=0
Left=249
Top=709
Left=0
Top=0
Width=2859
Height=3206
MaxLeft=-1
@ -612,11 +557,11 @@ State=0
Left=0
Top=0
Width=1898
Height=7018
Height=9170
MaxLeft=-1
MaxTop=-1
ClientWidth=1898
ClientHeight=7018
ClientHeight=9170
TBDockHeight=3677
LRDockWidth=1898
Dockable=1
@ -631,11 +576,11 @@ State=0
Left=0
Top=0
Width=2000
Height=6816
Height=6861
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=6816
ClientHeight=6861
TBDockHeight=4888
LRDockWidth=5305
Dockable=1
@ -696,7 +641,7 @@ Visible=0
Docked=1
State=0
Left=0
Top=23
Top=0
Width=3820
Height=1424
MaxLeft=-1
@ -722,12 +667,12 @@ State=0
Left=0
Top=23
Width=2000
Height=7040
Height=4529
MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=7040
TBDockHeight=7119
ClientHeight=4529
TBDockHeight=7164
LRDockWidth=2000
Dockable=1
StayOnTop=0
@ -743,14 +688,14 @@ Create=1
Visible=0
Docked=1
State=0
Left=1
Top=24
Left=0
Top=23
Width=1898
Height=7018
Height=9170
MaxLeft=-1
MaxTop=-1
ClientWidth=1898
ClientHeight=7018
ClientHeight=9170
TBDockHeight=7164
LRDockWidth=1898
Dockable=1
@ -760,11 +705,11 @@ ActiveTabID=StructureView
TabDockClients=StructureView,ClassBrowserTool
[DockSite4]
HostDockSite=RightTabDock
HostDockSite=DockRightPanel
DockSiteType=1
PercentageSizes=1
Create=1
Visible=0
Visible=1
Docked=1
State=0
Left=0
@ -775,7 +720,7 @@ MaxLeft=-1
MaxTop=-1
ClientWidth=2000
ClientHeight=4339
TBDockHeight=7119
TBDockHeight=7164
LRDockWidth=2000
Dockable=1
StayOnTop=0

Binary file not shown.

View File

@ -1,9 +1,9 @@
[Stats]
EditorSecs=59267
EditorSecs=59984
DesignerSecs=14
InspectorSecs=9
CompileSecs=1013650
OtherSecs=5108
InspectorSecs=11
CompileSecs=1099139
OtherSecs=5315
StartTime=22/01/2017 10:49:52
RealKeys=0
EffectiveKeys=0

View File

@ -52,7 +52,18 @@ uses
{$ELSE}
Windows, Classes,
{$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFBase;
uCEFTypes, uCEFInterfaces, uCEFBaseRefCounted, uCEFSchemeRegistrar;
const
CEF_SUPPORTED_VERSION_MAJOR = 3;
CEF_SUPPORTED_VERSION_MINOR = 2987;
CEF_SUPPORTED_VERSION_RELEASE = 1594;
CEF_SUPPORTED_VERSION_BUILD = 0;
CEF_CHROMEELF_VERSION_MAJOR = 57;
CEF_CHROMEELF_VERSION_MINOR = 0;
CEF_CHROMEELF_VERSION_RELEASE = 2987;
CEF_CHROMEELF_VERSION_BUILD = 98;
type
TInternalApp = class;
@ -180,7 +191,7 @@ type
function GetChromeVersion : string;
procedure App_OnBeforeCommandLineProc(const processType: ustring; const commandLine: ICefCommandLine);
procedure App_OnRegCustomSchemes(const registrar: ICefSchemeRegistrar);
procedure App_OnRegCustomSchemes(const registrar: TCefSchemeRegistrarRef);
procedure App_OnGetResourceBundleHandler(var aCefResourceBundleHandler : ICefResourceBundleHandler);
procedure App_OnGetBrowserProcessHandler(var aCefBrowserProcessHandler : ICefBrowserProcessHandler);
procedure App_OnGetRenderProcessHandler(var aCefRenderProcessHandler : ICefRenderProcessHandler);
@ -243,10 +254,10 @@ type
property LibCef : string read FLibCef write FLibCef;
end;
TCefAppOwn = class(TCefBaseOwn, ICefApp)
TCefAppOwn = class(TCefBaseRefCountedOwn, ICefApp)
protected
procedure OnBeforeCommandLineProcessing(const processType: ustring; const commandLine: ICefCommandLine); virtual; abstract;
procedure OnRegisterCustomSchemes(const registrar: ICefSchemeRegistrar); virtual; abstract;
procedure OnRegisterCustomSchemes(const registrar: TCefSchemeRegistrarRef); virtual; abstract;
function GetResourceBundleHandler: ICefResourceBundleHandler; virtual; abstract;
function GetBrowserProcessHandler: ICefBrowserProcessHandler; virtual; abstract;
function GetRenderProcessHandler: ICefRenderProcessHandler; virtual; abstract;
@ -264,7 +275,7 @@ type
FOnGetRenderProcessHandler : TOnGetRenderProcessHandler;
procedure OnBeforeCommandLineProcessing(const processType: ustring; const commandLine: ICefCommandLine); override;
procedure OnRegisterCustomSchemes(const registrar: ICefSchemeRegistrar); override;
procedure OnRegisterCustomSchemes(const registrar: TCefSchemeRegistrarRef); override;
function GetResourceBundleHandler: ICefResourceBundleHandler; override;
function GetBrowserProcessHandler: ICefBrowserProcessHandler; override;
function GetRenderProcessHandler: ICefRenderProcessHandler; override;
@ -290,20 +301,7 @@ uses
{$ELSE}
Math, {$IFDEF DELPHI12_UP}IOUtils,{$ENDIF} SysUtils,
{$ENDIF}
uCEFLibFunctions, uCEFMiscFunctions, uCEFSchemeRegistrar, uCEFCommandLine,
uCEFConstants;
const
CEF_SUPPORTED_VERSION_MAJOR = 3;
CEF_SUPPORTED_VERSION_MINOR = 2924;
CEF_SUPPORTED_VERSION_RELEASE = 1575;
CEF_SUPPORTED_VERSION_BUILD = 0;
CEF_CHROMEELF_VERSION_MAJOR = 56;
CEF_CHROMEELF_VERSION_MINOR = 0;
CEF_CHROMEELF_VERSION_RELEASE = 2924;
CEF_CHROMEELF_VERSION_BUILD = 76;
uCEFLibFunctions, uCEFMiscFunctions, uCEFCommandLine, uCEFConstants, uCEFSchemeHandlerFactory;
constructor TCefApplication.Create(aUpdateChromeVer : boolean);
begin
@ -878,7 +876,7 @@ begin
end;
end;
procedure TCefApplication.App_OnRegCustomSchemes(const registrar: ICefSchemeRegistrar);
procedure TCefApplication.App_OnRegCustomSchemes(const registrar: TCefSchemeRegistrarRef);
begin
if assigned(FOnRegisterCustomSchemes) then FOnRegisterCustomSchemes(registrar);
end;
@ -1429,6 +1427,8 @@ begin
cef_string_userfree_wide_free := GetProcAddress(FLibHandle, 'cef_string_userfree_wide_free');
cef_string_userfree_utf8_free := GetProcAddress(FLibHandle, 'cef_string_userfree_utf8_free');
cef_string_userfree_utf16_free := GetProcAddress(FLibHandle, 'cef_string_userfree_utf16_free');
cef_string_utf16_to_lower := GetProcAddress(FLibHandle, 'cef_string_utf16_to_lower');
cef_string_utf16_to_upper := GetProcAddress(FLibHandle, 'cef_string_utf16_to_upper');
Result := assigned(cef_string_wide_set) and
assigned(cef_string_utf8_set) and
@ -1452,7 +1452,9 @@ begin
assigned(cef_string_userfree_utf16_alloc) and
assigned(cef_string_userfree_wide_free) and
assigned(cef_string_userfree_utf8_free) and
assigned(cef_string_userfree_utf16_free);
assigned(cef_string_userfree_utf16_free) and
assigned(cef_string_utf16_to_lower) and
assigned(cef_string_utf16_to_upper);
end;
function TCefApplication.Load_cef_thread_internal_h : boolean;
@ -1491,16 +1493,31 @@ end;
// TCefAppOwn
procedure cef_app_on_before_command_line_processing(self: PCefApp;
const process_type: PCefString; command_line: PCefCommandLine); stdcall;
const process_type: PCefString;
command_line: PCefCommandLine); stdcall;
begin
with TCefAppOwn(CefGetObject(self)) do
OnBeforeCommandLineProcessing(CefString(process_type), TCefCommandLineRef.UnWrap(command_line));
TCefAppOwn(CefGetObject(self)).OnBeforeCommandLineProcessing(CefString(process_type),
TCefCommandLineRef.UnWrap(command_line));
end;
procedure cef_app_on_register_custom_schemes(self: PCefApp; registrar: PCefSchemeRegistrar); stdcall;
var
TempWrapper : TCefSchemeRegistrarRef;
begin
with TCefAppOwn(CefGetObject(self)) do
OnRegisterCustomSchemes(TCefSchemeRegistrarRef.UnWrap(registrar));
TempWrapper := nil;
try
try
TempWrapper := TCefSchemeRegistrarRef.Create(registrar);
TCefAppOwn(CefGetObject(self)).OnRegisterCustomSchemes(TempWrapper);
except
on e : exception do
OutputDebugMessage('cef_app_on_register_custom_schemes error: ' + e.Message);
end;
finally
if (TempWrapper <> nil) then FreeAndNil(TempWrapper);
end;
end;
function cef_app_get_resource_bundle_handler(self: PCefApp): PCefResourceBundleHandler; stdcall;
@ -1540,7 +1557,7 @@ begin
if Assigned(FOnBeforeCommandLineProcessing) then FOnBeforeCommandLineProcessing(processType, commandLine);
end;
procedure TInternalApp.OnRegisterCustomSchemes(const registrar: ICefSchemeRegistrar);
procedure TInternalApp.OnRegisterCustomSchemes(const registrar: TCefSchemeRegistrarRef);
begin
if Assigned(FOnRegisterCustomSchemes) then FOnRegisterCustomSchemes(registrar);
end;

View File

@ -47,10 +47,10 @@ unit uCEFAuthCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefAuthCallbackRef = class(TCefBaseRef, ICefAuthCallback)
TCefAuthCallbackRef = class(TCefBaseRefCountedRef, ICefAuthCallback)
protected
procedure Cont(const username, password: ustring);
procedure Cancel;

View File

@ -35,7 +35,7 @@
*
*)
unit uCEFBase;
unit uCEFBaseRefCounted;
{$IFNDEF CPUX64}
{$ALIGN ON}
@ -50,7 +50,7 @@ uses
uCEFInterfaces;
type
TCefBaseOwn = class(TInterfacedObject, ICefBase)
TCefBaseRefCountedOwn = class(TInterfacedObject, ICefBaseRefCounted)
protected
FData: Pointer;
@ -60,7 +60,7 @@ type
function Wrap: Pointer;
end;
TCefBaseRef = class(TInterfacedObject, ICefBase)
TCefBaseRefCountedRef = class(TInterfacedObject, ICefBaseRefCounted)
protected
FData: Pointer;
@ -68,107 +68,115 @@ type
constructor Create(data: Pointer); virtual;
destructor Destroy; override;
function Wrap: Pointer;
class function UnWrap(data: Pointer): ICefBase;
class function UnWrap(data: Pointer): ICefBaseRefCounted;
end;
implementation
uses
uCEFTypes, uCEFMiscFunctions;
procedure cef_base_add_ref(self: PCefBase); stdcall;
procedure cef_base_add_ref(self: PCefBaseRefCounted); stdcall;
begin
TCefBaseOwn(CefGetObject(self))._AddRef;
TCefBaseRefCountedOwn(CefGetObject(self))._AddRef;
end;
function cef_base_release(self: PCefBase): Integer; stdcall;
function cef_base_release(self: PCefBaseRefCounted): Integer; stdcall;
begin
Result := TCefBaseOwn(CefGetObject(self))._Release;
Result := TCefBaseRefCountedOwn(CefGetObject(self))._Release;
end;
function cef_base_has_one_ref(self: PCefBase): Integer; stdcall;
function cef_base_has_one_ref(self: PCefBaseRefCounted): Integer; stdcall;
begin
Result := Ord(TCefBaseOwn(CefGetObject(self)).FRefCount = 1);
Result := Ord(TCefBaseRefCountedOwn(CefGetObject(self)).FRefCount = 1);
end;
procedure cef_base_add_ref_owned(self: PCefBase); stdcall;
procedure cef_base_add_ref_owned(self: PCefBaseRefCounted); stdcall;
begin
//
end;
function cef_base_release_owned(self: PCefBase): Integer; stdcall;
function cef_base_release_owned(self: PCefBaseRefCounted): Integer; stdcall;
begin
Result := 1;
end;
function cef_base_has_one_ref_owned(self: PCefBase): Integer; stdcall;
function cef_base_has_one_ref_owned(self: PCefBaseRefCounted): Integer; stdcall;
begin
Result := 1;
end;
constructor TCefBaseOwn.CreateData(size: Cardinal; owned: Boolean);
constructor TCefBaseRefCountedOwn.CreateData(size: Cardinal; owned: Boolean);
begin
GetMem(FData, size + SizeOf(Pointer));
PPointer(FData)^ := Self;
Inc(PByte(FData), SizeOf(Pointer));
FillChar(FData^, size, 0);
PCefBase(FData)^.size := size;
PCefBaseRefCounted(FData)^.size := size;
if owned then
begin
PCefBase(FData)^.add_ref := cef_base_add_ref_owned;
PCefBase(FData)^.release := cef_base_release_owned;
PCefBase(FData)^.has_one_ref := cef_base_has_one_ref_owned;
PCefBaseRefCounted(FData)^.add_ref := cef_base_add_ref_owned;
PCefBaseRefCounted(FData)^.release := cef_base_release_owned;
PCefBaseRefCounted(FData)^.has_one_ref := cef_base_has_one_ref_owned;
end
else
begin
PCefBase(FData)^.add_ref := cef_base_add_ref;
PCefBase(FData)^.release := cef_base_release;
PCefBase(FData)^.has_one_ref := cef_base_has_one_ref;
PCefBaseRefCounted(FData)^.add_ref := cef_base_add_ref;
PCefBaseRefCounted(FData)^.release := cef_base_release;
PCefBaseRefCounted(FData)^.has_one_ref := cef_base_has_one_ref;
end;
end;
destructor TCefBaseOwn.Destroy;
destructor TCefBaseRefCountedOwn.Destroy;
begin
Dec(PByte(FData), SizeOf(Pointer));
FreeMem(FData);
inherited;
FData := nil;
inherited Destroy;
end;
function TCefBaseOwn.Wrap: Pointer;
function TCefBaseRefCountedOwn.Wrap: Pointer;
begin
Result := FData;
if Assigned(PCefBase(FData)^.add_ref) then
PCefBase(FData)^.add_ref(PCefBase(FData));
if (FData <> nil) and Assigned(PCefBaseRefCounted(FData)^.add_ref) then
PCefBaseRefCounted(FData)^.add_ref(PCefBaseRefCounted(FData));
end;
// TCefBaseRef
// TCefBaseRefCountedRef
constructor TCefBaseRef.Create(data: Pointer);
constructor TCefBaseRefCountedRef.Create(data: Pointer);
begin
Assert(data <> nil);
FData := data;
end;
destructor TCefBaseRef.Destroy;
destructor TCefBaseRefCountedRef.Destroy;
begin
if (FData <> nil) and Assigned(PCefBase(FData)^.release) then PCefBase(FData)^.release(PCefBase(FData));
if (FData <> nil) and Assigned(PCefBaseRefCounted(FData)^.release) then
PCefBaseRefCounted(FData)^.release(PCefBaseRefCounted(FData));
inherited Destroy;
end;
class function TCefBaseRef.UnWrap(data: Pointer): ICefBase;
class function TCefBaseRefCountedRef.UnWrap(data: Pointer): ICefBaseRefCounted;
begin
if data <> nil then
Result := Create(data) as ICefBase else
if (data <> nil) then
Result := Create(data) as ICefBaseRefCounted
else
Result := nil;
end;
function TCefBaseRef.Wrap: Pointer;
function TCefBaseRefCountedRef.Wrap: Pointer;
begin
Result := FData;
if Assigned(PCefBase(FData)^.add_ref) then
PCefBase(FData)^.add_ref(PCefBase(FData));
if (FData <> nil) and Assigned(PCefBaseRefCounted(FData)^.add_ref) then
PCefBaseRefCounted(FData)^.add_ref(PCefBaseRefCounted(FData));
end;
end.

View File

@ -0,0 +1,73 @@
// ************************************************************************
// ***************************** CEF4Delphi *******************************
// ************************************************************************
//
// CEF4Delphi is based on DCEF3 which uses CEF3 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 � 2017 Salvador D�az 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 uCEFBaseScopedWrapper;
{$IFNDEF CPUX64}
{$ALIGN ON}
{$MINENUMSIZE 4}
{$ENDIF}
{$I cef.inc}
interface
type
TCEFBaseScopedWrapperRef = class
protected
FData: Pointer;
public
constructor Create(data: Pointer); virtual;
function Wrap: Pointer;
end;
implementation
constructor TCEFBaseScopedWrapperRef.Create(data: Pointer);
begin
inherited Create;
FData := data;
end;
function TCEFBaseScopedWrapperRef.Wrap: Pointer;
begin
Result := FData;
end;
end.

View File

@ -47,10 +47,10 @@ unit uCEFBeforeDownloadCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefBeforeDownloadCallbackRef = class(TCefBaseRef, ICefBeforeDownloadCallback)
TCefBeforeDownloadCallbackRef = class(TCefBaseRefCountedRef, ICefBeforeDownloadCallback)
protected
procedure Cont(const downloadPath: ustring; showDialog: Boolean);

View File

@ -47,10 +47,10 @@ unit uCEFBinaryValue;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefBinaryValueRef = class(TCefBaseRef, ICefBinaryValue)
TCefBinaryValueRef = class(TCefBaseRefCountedRef, ICefBinaryValue)
protected
function IsValid: Boolean;
function IsOwned: Boolean;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefBrowserRef = class(TCefBaseRef, ICefBrowser)
TCefBrowserRef = class(TCefBaseRefCountedRef, ICefBrowser)
protected
function GetHost: ICefBrowserHost;
function CanGoBack: Boolean;
@ -83,7 +83,7 @@ type
class function UnWrap(data: Pointer): ICefBrowser;
end;
TCefBrowserHostRef = class(TCefBaseRef, ICefBrowserHost)
TCefBrowserHostRef = class(TCefBaseRefCountedRef, ICefBrowserHost)
protected
function GetBrowser: ICefBrowser;
procedure CloseBrowser(forceClose: Boolean);

View File

@ -47,10 +47,10 @@ unit uCEFBrowserProcessHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefBrowserProcessHandlerOwn = class(TCefBaseOwn, ICefBrowserProcessHandler)
TCefBrowserProcessHandlerOwn = class(TCefBaseRefCountedOwn, ICefBrowserProcessHandler)
protected
procedure OnContextInitialized; virtual;
procedure OnBeforeChildProcessLaunch(const commandLine: ICefCommandLine); virtual;

View File

@ -47,10 +47,10 @@ unit uCEFCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefCallbackRef = class(TCefBaseRef, ICefCallback)
TCefCallbackRef = class(TCefBaseRefCountedRef, ICefCallback)
protected
procedure Cont;
procedure Cancel;

View File

@ -1997,6 +1997,9 @@ var
TempDict : ICefDictionaryValue;
TempPrefs : TStringList;
begin
TempPrefs := nil;
try
try
if Initialized then
begin
@ -2010,6 +2013,9 @@ begin
on e : exception do
OutputDebugMessage('TChromium.Internal_SavePreferences error: ' + e.Message);
end;
finally
if (TempPrefs <> nil) then FreeAndNil(TempPrefs);
end;
end;
procedure TChromium.PrefsAvailableMsg(var aMessage : TMessage);

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Windows,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefClientOwn = class(TCefBaseOwn, ICefClient)
TCefClientOwn = class(TCefBaseRefCountedOwn, ICefClient)
protected
function GetContextMenuHandler: ICefContextMenuHandler; virtual;
function GetDialogHandler: ICefDialogHandler; virtual;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFTypes, uCEFInterfaces;
uCEFBaseRefCounted, uCEFTypes, uCEFInterfaces;
type
TCefCommandLineRef = class(TCefBaseRef, ICefCommandLine)
TCefCommandLineRef = class(TCefBaseRefCountedRef, ICefCommandLine)
protected
function IsValid: Boolean;
function IsReadOnly: Boolean;

View File

@ -47,10 +47,10 @@ unit uCEFCompletionCallback;
interface
uses
uCEFBase, uCEFInterfaces;
uCEFBaseRefCounted, uCEFInterfaces;
type
TCefCompletionCallbackOwn = class(TCefBaseOwn, ICefCompletionCallback)
TCefCompletionCallbackOwn = class(TCefBaseRefCountedOwn, ICefCompletionCallback)
protected
procedure OnComplete; virtual;

View File

@ -47,10 +47,10 @@ unit uCEFContextMenuHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefContextMenuHandlerOwn = class(TCefBaseOwn, ICefContextMenuHandler)
TCefContextMenuHandlerOwn = class(TCefBaseRefCountedOwn, ICefContextMenuHandler)
protected
procedure OnBeforeContextMenu(const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; const model: ICefMenuModel); virtual;
function RunContextMenu(const browser: ICefBrowser; const frame: ICefFrame; const params: ICefContextMenuParams; const model: ICefMenuModel; const callback: ICefRunContextMenuCallback): Boolean; virtual;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefContextMenuParamsRef = class(TCefBaseRef, ICefContextMenuParams)
TCefContextMenuParamsRef = class(TCefBaseRefCountedRef, ICefContextMenuParams)
protected
function GetXCoord: Integer;
function GetYCoord: Integer;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefCookieManagerRef = class(TCefBaseRef, ICefCookieManager)
TCefCookieManagerRef = class(TCefBaseRefCountedRef, ICefCookieManager)
protected
procedure SetSupportedSchemes(schemes: TStrings; const callback: ICefCompletionCallback);
procedure SetSupportedSchemesProc(schemes: TStrings; const callback: TCefCompletionCallbackProc);

View File

@ -47,10 +47,10 @@ unit uCEFCookieVisitor;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefCookieVisitorOwn = class(TCefBaseOwn, ICefCookieVisitor)
TCefCookieVisitorOwn = class(TCefBaseRefCountedOwn, ICefCookieVisitor)
protected
function visit(const name, value, domain, path: ustring; secure, httponly, hasExpires: Boolean; const creation, lastAccess, expires: TDateTime; count, total: Integer; out deleteCookie: Boolean): Boolean; virtual;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes, SysUtils,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefCustomStreamReader = class(TCefBaseOwn, ICefCustomStreamReader)
TCefCustomStreamReader = class(TCefBaseRefCountedOwn, ICefCustomStreamReader)
protected
FStream: TStream;
FOwned: Boolean;

View File

@ -47,10 +47,10 @@ unit uCEFDeleteCookiesCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDeleteCookiesCallbackOwn = class(TCefBaseOwn, ICefDeleteCookiesCallback)
TCefDeleteCookiesCallbackOwn = class(TCefBaseRefCountedOwn, ICefDeleteCookiesCallback)
protected
procedure OnComplete(numDeleted: Integer); virtual; abstract;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDialogHandlerOwn = class(TCefBaseOwn, ICefDialogHandler)
TCefDialogHandlerOwn = class(TCefBaseRefCountedOwn, ICefDialogHandler)
protected
function OnFileDialog(const browser: ICefBrowser; mode: TCefFileDialogMode; const title, defaultFilePath: ustring; acceptFilters: TStrings; selectedAcceptFilter: Integer; const callback: ICefFileDialogCallback): Boolean; virtual;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDictionaryValueRef = class(TCefBaseRef, ICefDictionaryValue)
TCefDictionaryValueRef = class(TCefBaseRefCountedRef, ICefDictionaryValue)
protected
function IsValid: Boolean;
function isOwned: Boolean;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDisplayHandlerOwn = class(TCefBaseOwn, ICefDisplayHandler)
TCefDisplayHandlerOwn = class(TCefBaseRefCountedOwn, ICefDisplayHandler)
protected
procedure OnAddressChange(const browser: ICefBrowser; const frame: ICefFrame; const url: ustring); virtual;
procedure OnTitleChange(const browser: ICefBrowser; const title: ustring); virtual;

View File

@ -47,10 +47,10 @@ unit uCEFDomDocument;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDomDocumentRef = class(TCefBaseRef, ICefDomDocument)
TCefDomDocumentRef = class(TCefBaseRefCountedRef, ICefDomDocument)
protected
function GetType: TCefDomDocumentType;
function GetDocument: ICefDomNode;

View File

@ -47,10 +47,10 @@ unit uCEFDomNode;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDomNodeRef = class(TCefBaseRef, ICefDomNode)
TCefDomNodeRef = class(TCefBaseRefCountedRef, ICefDomNode)
protected
function GetType: TCefDomNodeType;
function IsText: Boolean;

View File

@ -47,10 +47,10 @@ unit uCEFDomVisitor;
interface
uses
uCEFBase, uCEFInterfaces;
uCEFBaseRefCounted, uCEFInterfaces;
type
TCefDomVisitorOwn = class(TCefBaseOwn, ICefDomVisitor)
TCefDomVisitorOwn = class(TCefBaseRefCountedOwn, ICefDomVisitor)
protected
procedure visit(const document: ICefDomDocument); virtual;

View File

@ -47,10 +47,10 @@ unit uCEFDownLoadItem;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDownLoadItemRef = class(TCefBaseRef, ICefDownLoadItem)
TCefDownLoadItemRef = class(TCefBaseRefCountedRef, ICefDownLoadItem)
protected
function IsValid: Boolean;
function IsInProgress: Boolean;

View File

@ -47,10 +47,10 @@ unit uCEFDownloadHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDownloadHandlerOwn = class(TCefBaseOwn, ICefDownloadHandler)
TCefDownloadHandlerOwn = class(TCefBaseRefCountedOwn, ICefDownloadHandler)
protected
procedure OnBeforeDownload(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback); virtual;
procedure OnDownloadUpdated(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback); virtual;

View File

@ -47,10 +47,10 @@ unit uCEFDownloadImageCallBack;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDownloadImageCallbackOwn = class(TCefBaseOwn, ICefDownloadImageCallback)
TCefDownloadImageCallbackOwn = class(TCefBaseRefCountedOwn, ICefDownloadImageCallback)
protected
procedure OnDownloadImageFinished(const imageUrl: ustring; httpStatusCode: Integer; const image: ICefImage); virtual; abstract;

View File

@ -47,10 +47,10 @@ unit uCEFDownloadItemCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDownloadItemCallbackRef = class(TCefBaseRef, ICefDownloadItemCallback)
TCefDownloadItemCallbackRef = class(TCefBaseRefCountedRef, ICefDownloadItemCallback)
protected
procedure Cancel;
procedure Pause;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDragDataRef = class(TCefBaseRef, ICefDragData)
TCefDragDataRef = class(TCefBaseRefCountedRef, ICefDragData)
protected
function Clone: ICefDragData;
function IsReadOnly: Boolean;

View File

@ -47,10 +47,10 @@ unit uCEFDragHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefDragHandlerOwn = class(TCefBaseOwn, ICefDragHandler)
TCefDragHandlerOwn = class(TCefBaseRefCountedOwn, ICefDragHandler)
protected
function OnDragEnter(const browser: ICefBrowser; const dragData: ICefDragData; mask: TCefDragOperations): Boolean; virtual;
procedure OnDraggableRegionsChanged(const browser: ICefBrowser; regionsCount: NativeUInt; regions: PCefDraggableRegionArray); virtual;

View File

@ -47,10 +47,10 @@ unit uCEFEndTracingCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefEndTracingCallbackOwn = class(TCefBaseOwn, ICefEndTracingCallback)
TCefEndTracingCallbackOwn = class(TCefBaseRefCountedOwn, ICefEndTracingCallback)
protected
procedure OnEndTracingComplete(const tracingFile: ustring); virtual;
public

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefFileDialogCallbackRef = class(TCefBaseRef, ICefFileDialogCallback)
TCefFileDialogCallbackRef = class(TCefBaseRefCountedRef, ICefFileDialogCallback)
protected
procedure Cont(selectedAcceptFilter: Integer; filePaths: TStrings);
procedure Cancel;

View File

@ -47,10 +47,10 @@ unit uCEFFindHandler;
interface
uses
uCEFBase, uCEFTypes, uCEFInterfaces;
uCEFBaseRefCounted, uCEFTypes, uCEFInterfaces;
type
TCefFindHandlerOwn = class(TCefBaseOwn, ICefFindHandler)
TCefFindHandlerOwn = class(TCefBaseRefCountedOwn, ICefFindHandler)
protected
procedure OnFindResult(const browser: ICefBrowser; identifier, count: Integer; const selectionRect: PCefRect; activeMatchOrdinal: Integer; finalUpdate: Boolean); virtual; abstract;

View File

@ -47,10 +47,10 @@ unit uCEFFocusHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefFocusHandlerOwn = class(TCefBaseOwn, ICefFocusHandler)
TCefFocusHandlerOwn = class(TCefBaseRefCountedOwn, ICefFocusHandler)
protected
procedure OnTakeFocus(const browser: ICefBrowser; next: Boolean); virtual;
function OnSetFocus(const browser: ICefBrowser; source: TCefFocusSource): Boolean; virtual;

View File

@ -47,10 +47,10 @@ unit uCEFFrame;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefFrameRef = class(TCefBaseRef, ICefFrame)
TCefFrameRef = class(TCefBaseRefCountedRef, ICefFrame)
public
function IsValid: Boolean;
procedure Undo;

View File

@ -47,10 +47,10 @@ unit uCEFGeolocationCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefGeolocationCallbackRef = class(TCefBaseRef, ICefGeolocationCallback)
TCefGeolocationCallbackRef = class(TCefBaseRefCountedRef, ICefGeolocationCallback)
protected
procedure Cont(allow: Boolean);
public

View File

@ -47,10 +47,10 @@ unit uCEFGeolocationHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefGeolocationHandlerOwn = class(TCefBaseOwn, ICefGeolocationHandler)
TCefGeolocationHandlerOwn = class(TCefBaseRefCountedOwn, ICefGeolocationHandler)
protected
function OnRequestGeolocationPermission(const browser: ICefBrowser; const requestingUrl: ustring; requestId: Integer; const callback: ICefGeolocationCallback): Boolean; virtual;
procedure OnCancelGeolocationPermission(const browser: ICefBrowser; requestId: Integer); virtual;

View File

@ -47,10 +47,10 @@ unit uCEFGetGeolocationCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefGetGeolocationCallbackOwn = class(TCefBaseOwn, ICefGetGeolocationCallback)
TCefGetGeolocationCallbackOwn = class(TCefBaseRefCountedOwn, ICefGetGeolocationCallback)
protected
procedure OnLocationUpdate(const position: PCefGeoposition); virtual;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Windows,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefImageRef = class(TCefBaseRef, ICefImage)
TCefImageRef = class(TCefBaseRefCountedRef, ICefImage)
protected
function IsEmpty: Boolean;
function IsSame(const that: ICefImage): Boolean;

View File

@ -52,7 +52,7 @@ uses
{$ELSE}
Windows, Classes,
{$ENDIF}
uCEFTypes;
uCEFTypes, uCEFSchemeRegistrar;
type
ICefBrowser = interface;
@ -85,7 +85,6 @@ type
ICefX509CertPrincipal = interface;
ICefX509Certificate = interface;
ICefSelectClientCertificateCallback = interface;
ICefSchemeRegistrar = interface;
ICefCommandLine = interface;
ICefRequestHandler = interface;
ICefResourceBundleHandler = interface;
@ -99,7 +98,7 @@ type
TCefDomVisitorProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const document: ICefDomDocument);
TCefStringVisitorProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const str: ustring);
TOnRegisterCustomSchemes = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const registrar: ICefSchemeRegistrar) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
TOnRegisterCustomSchemes = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const registrar: TCefSchemeRegistrarRef) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
TOnGetResourceBundleHandler = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(var aCefResourceBundleHandler : ICefResourceBundleHandler) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
TOnGetBrowserProcessHandler = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(var aCefBrowserProcessHandler : ICefBrowserProcessHandler) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
TOnGetRenderProcessHandler = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(var aCefRenderProcessHandler : ICefRenderProcessHandler) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
@ -111,12 +110,12 @@ type
ICefBase = interface
ICefBaseRefCounted = interface
['{1F9A7B44-DCDC-4477-9180-3ADD44BDEB7B}']
function Wrap: Pointer;
end;
ICefRunFileDialogCallback = interface(ICefBase)
ICefRunFileDialogCallback = interface(ICefBaseRefCounted)
['{59FCECC6-E897-45BA-873B-F09586C4BE47}']
procedure OnFileDialogDismissed(selectedAcceptFilter: Integer; filePaths: TStrings);
end;
@ -124,7 +123,7 @@ type
TCefRunFileDialogCallbackProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF}
procedure(selectedAcceptFilter: Integer; filePaths: TStrings);
ICefNavigationEntryVisitor = interface(ICefBase)
ICefNavigationEntryVisitor = interface(ICefBaseRefCounted)
['{CC4D6BC9-0168-4C2C-98BA-45E9AA9CD619}']
function Visit(const entry: ICefNavigationEntry;
current: Boolean; index, total: Integer): Boolean;
@ -133,7 +132,7 @@ type
TCefNavigationEntryVisitorProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF}
function(const entry: ICefNavigationEntry; current: Boolean; index, total: Integer): Boolean;
ICefPdfPrintCallback = interface(ICefBase)
ICefPdfPrintCallback = interface(ICefBaseRefCounted)
['{F1CC58E9-2C30-4932-91AE-467C8D8EFB8E}']
procedure OnPdfPrintFinished(const path: ustring; ok: Boolean);
end;
@ -141,13 +140,13 @@ type
TOnDownloadImageFinishedProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF}
procedure(const imageUrl: ustring; httpStatusCode: Integer; const image: ICefImage);
ICefDownloadImageCallback = interface(ICefBase)
ICefDownloadImageCallback = interface(ICefBaseRefCounted)
['{0C6E9032-27DF-4584-95C6-DC3C7CB63727}']
procedure OnDownloadImageFinished(const imageUrl: ustring;
httpStatusCode: Integer; const image: ICefImage);
end;
ICefBrowserHost = interface(ICefBase)
ICefBrowserHost = interface(ICefBaseRefCounted)
['{53AE02FF-EF5D-48C3-A43E-069DA9535424}']
function GetBrowser: ICefBrowser;
procedure CloseBrowser(forceClose: Boolean);
@ -211,7 +210,7 @@ type
property VisibleNavigationEntry : ICefNavigationEntry read GetVisibleNavigationEntry;
end;
ICefProcessMessage = interface(ICefBase)
ICefProcessMessage = interface(ICefBaseRefCounted)
['{E0B1001A-8777-425A-869B-29D40B8B93B1}']
function IsValid: Boolean;
function IsReadOnly: Boolean;
@ -222,7 +221,7 @@ type
property ArgumentList: ICefListValue read GetArgumentList;
end;
ICefBrowser = interface(ICefBase)
ICefBrowser = interface(ICefBaseRefCounted)
['{BA003C2E-CF15-458F-9D4A-FE3CEFCF3EEF}']
function GetHost: ICefBrowserHost;
function CanGoBack: Boolean;
@ -253,7 +252,7 @@ type
property Identifier: Integer read GetIdentifier;
end;
ICefPostDataElement = interface(ICefBase)
ICefPostDataElement = interface(ICefBaseRefCounted)
['{3353D1B8-0300-4ADC-8D74-4FF31C77D13C}']
function IsReadOnly: Boolean;
procedure SetToEmpty;
@ -265,7 +264,7 @@ type
function GetBytes(size: NativeUInt; bytes: Pointer): NativeUInt;
end;
ICefPostData = interface(ICefBase)
ICefPostData = interface(ICefBaseRefCounted)
['{1E677630-9339-4732-BB99-D6FE4DE4AEC0}']
function IsReadOnly: Boolean;
function HasExcludedElements: Boolean;
@ -310,7 +309,7 @@ type
property Enumerate[const Key: ustring; ValueIndex: Integer]: ustring read GetEnumerate;
end;
ICefRequest = interface(ICefBase)
ICefRequest = interface(ICefBaseRefCounted)
['{FB4718D3-7D13-4979-9F4C-D7F6C0EC592A}']
function IsReadOnly: Boolean;
function GetUrl: ustring;
@ -347,12 +346,12 @@ type
property Identifier: UInt64 read GetIdentifier;
end;
ICefStringVisitor = interface(ICefBase)
ICefStringVisitor = interface(ICefBaseRefCounted)
['{63ED4D6C-2FC8-4537-964B-B84C008F6158}']
procedure Visit(const str: ustring);
end;
ICefFrame = interface(ICefBase)
ICefFrame = interface(ICefBaseRefCounted)
['{8FD3D3A6-EA3A-4A72-8501-0276BD5C3D1D}']
function IsValid: Boolean;
procedure Undo;
@ -388,7 +387,7 @@ type
end;
ICefCustomStreamReader = interface(ICefBase)
ICefCustomStreamReader = interface(ICefBaseRefCounted)
['{BBCFF23A-6FE7-4C28-B13E-6D2ACA5C83B7}']
function Read(ptr: Pointer; size, n: NativeUInt): NativeUInt;
function Seek(offset: Int64; whence: Integer): Integer;
@ -397,7 +396,7 @@ type
function MayBlock: Boolean;
end;
ICefStreamReader = interface(ICefBase)
ICefStreamReader = interface(ICefBaseRefCounted)
['{DD5361CB-E558-49C5-A4BD-D1CE84ADB277}']
function Read(ptr: Pointer; size, n: NativeUInt): NativeUInt;
function Seek(offset: Int64; whence: Integer): Integer;
@ -406,7 +405,7 @@ type
function MayBlock: Boolean;
end;
ICefWriteHandler = interface(ICefBase)
ICefWriteHandler = interface(ICefBaseRefCounted)
['{F2431888-4EAB-421E-9EC3-320BE695AF30}']
function Write(const ptr: Pointer; size, n: NativeUInt): NativeUInt;
function Seek(offset: Int64; whence: Integer): Integer;
@ -415,7 +414,7 @@ type
function MayBlock: Boolean;
end;
ICefStreamWriter = interface(ICefBase)
ICefStreamWriter = interface(ICefBaseRefCounted)
['{4AA6C477-7D8A-4D5A-A704-67F900A827E7}']
function Write(const ptr: Pointer; size, n: NativeUInt): NativeUInt;
function Seek(offset: Int64; whence: Integer): Integer;
@ -424,7 +423,7 @@ type
function MayBlock: Boolean;
end;
ICefResponse = interface(ICefBase)
ICefResponse = interface(ICefBaseRefCounted)
['{E9C896E4-59A8-4B96-AB5E-6EA3A498B7F1}']
function IsReadOnly: Boolean;
function GetError: TCefErrorCode;
@ -444,7 +443,7 @@ type
property Error: TCefErrorCode read GetError write SetError;
end;
ICefDownloadItem = interface(ICefBase)
ICefDownloadItem = interface(ICefBaseRefCounted)
['{B34BD320-A82E-4185-8E84-B98E5EEC803F}']
function IsValid: Boolean;
function IsInProgress: Boolean;
@ -479,19 +478,19 @@ type
property MimeType: ustring read GetMimeType;
end;
ICefBeforeDownloadCallback = interface(ICefBase)
ICefBeforeDownloadCallback = interface(ICefBaseRefCounted)
['{5A81AF75-CBA2-444D-AD8E-522160F36433}']
procedure Cont(const downloadPath: ustring; showDialog: Boolean);
end;
ICefDownloadItemCallback = interface(ICefBase)
ICefDownloadItemCallback = interface(ICefBaseRefCounted)
['{498F103F-BE64-4D5F-86B7-B37EC69E1735}']
procedure Cancel;
procedure Pause;
procedure Resume;
end;
ICefDownloadHandler = interface(ICefBase)
ICefDownloadHandler = interface(ICefBaseRefCounted)
['{3137F90A-5DC5-43C1-858D-A269F28EF4F1}']
procedure OnBeforeDownload(const browser: ICefBrowser; const downloadItem: ICefDownloadItem;
const suggestedName: ustring; const callback: ICefBeforeDownloadCallback);
@ -499,7 +498,7 @@ type
const callback: ICefDownloadItemCallback);
end;
ICefV8Exception = interface(ICefBase)
ICefV8Exception = interface(ICefBaseRefCounted)
['{7E422CF0-05AC-4A60-A029-F45105DCE6A4}']
function GetMessage: ustring;
function GetSourceLine: ustring;
@ -520,7 +519,7 @@ type
property EndColumn: Integer read GetEndColumn;
end;
ICefv8Context = interface(ICefBase)
ICefv8Context = interface(ICefBaseRefCounted)
['{2295A11A-8773-41F2-AD42-308C215062D9}']
function GetTaskRunner: ICefTaskRunner;
function IsValid: Boolean;
@ -536,14 +535,14 @@ type
property Global: ICefv8Value read GetGlobal;
end;
ICefv8Handler = interface(ICefBase)
ICefv8Handler = interface(ICefBaseRefCounted)
['{F94CDC60-FDCB-422D-96D5-D2A775BD5D73}']
function Execute(const name: ustring; const obj: ICefv8Value;
const arguments: TCefv8ValueArray; var retval: ICefv8Value;
var exception: ustring): Boolean;
end;
ICefV8Interceptor = interface(ICefBase)
ICefV8Interceptor = interface(ICefBaseRefCounted)
['{B3B8FD7C-A916-4B25-93A2-2892AC324F21}']
function GetByName(const name: ustring; const obj: ICefv8Value; out retval: ICefv8Value; const exception: ustring): boolean;
function GetByIndex(index: integer; const obj: ICefv8Value; out retval: ICefv8Value; const exception: ustring): boolean;
@ -551,18 +550,18 @@ type
function SetByIndex(index: integer; const obj: ICefv8Value; const value: ICefv8Value; const exception: ustring): boolean;
end;
ICefV8Accessor = interface(ICefBase)
ICefV8Accessor = interface(ICefBaseRefCounted)
['{DCA6D4A2-726A-4E24-AA64-5E8C731D868A}']
function Get(const name: ustring; const obj: ICefv8Value; out value: ICefv8Value; const exception: ustring): Boolean;
function Put(const name: ustring; const obj: ICefv8Value; const value: ICefv8Value; const exception: ustring): Boolean;
end;
ICefTask = interface(ICefBase)
ICefTask = interface(ICefBaseRefCounted)
['{0D965470-4A86-47CE-BD39-A8770021AD7E}']
procedure Execute;
end;
ICefTaskRunner = interface(ICefBase)
ICefTaskRunner = interface(ICefBaseRefCounted)
['{6A500FA3-77B7-4418-8EA8-6337EED1337B}']
function IsSame(const that: ICefTaskRunner): Boolean;
function BelongsToCurrentThread: Boolean;
@ -571,7 +570,7 @@ type
function PostDelayedTask(const task: ICefTask; delayMs: Int64): Boolean;
end;
ICefThread = interface(ICefBase)
ICefThread = interface(ICefBaseRefCounted)
['{26B30EA5-F44A-4C40-97DF-67FD9E73A4FF}']
function GetTaskRunner : ICefTaskRunner;
function GetPlatformThreadID : TCefPlatformThreadId;
@ -579,7 +578,7 @@ type
function IsRunning : boolean;
end;
ICefWaitableEvent = interface(ICefBase)
ICefWaitableEvent = interface(ICefBaseRefCounted)
['{965C90C9-3DAE-457F-AA64-E04FF508094A}']
procedure Reset;
procedure Signal;
@ -588,7 +587,7 @@ type
function TimedWait(max_ms: int64): boolean;
end;
ICefv8Value = interface(ICefBase)
ICefv8Value = interface(ICefBaseRefCounted)
['{52319B8D-75A8-422C-BD4B-16FA08CC7F42}']
function IsValid: Boolean;
function IsUndefined: Boolean;
@ -640,7 +639,7 @@ type
const obj: ICefv8Value; const arguments: TCefv8ValueArray): ICefv8Value;
end;
ICefV8StackFrame = interface(ICefBase)
ICefV8StackFrame = interface(ICefBaseRefCounted)
['{BA1FFBF4-E9F2-4842-A827-DC220F324286}']
function IsValid: Boolean;
function GetScriptName: ustring;
@ -658,7 +657,7 @@ type
property Column: Integer read GetColumn;
end;
ICefV8StackTrace = interface(ICefBase)
ICefV8StackTrace = interface(ICefBaseRefCounted)
['{32111C84-B7F7-4E3A-92B9-7CA1D0ADB613}']
function IsValid: Boolean;
function GetFrameCount: Integer;
@ -667,7 +666,7 @@ type
property Frame[index: Integer]: ICefV8StackFrame read GetFrame;
end;
ICefXmlReader = interface(ICefBase)
ICefXmlReader = interface(ICefBaseRefCounted)
['{0DE686C3-A8D7-45D2-82FD-92F7F4E62A90}']
function MoveToNextNode: Boolean;
function Close: Boolean;
@ -700,7 +699,7 @@ type
function MoveToCarryingElement: Boolean;
end;
ICefZipReader = interface(ICefBase)
ICefZipReader = interface(ICefBaseRefCounted)
['{3B6C591F-9877-42B3-8892-AA7B27DA34A8}']
function MoveToFirstFile: Boolean;
function MoveToNextFile: Boolean;
@ -716,7 +715,7 @@ type
function Eof: Boolean;
end;
ICefDomNode = interface(ICefBase)
ICefDomNode = interface(ICefBaseRefCounted)
['{96C03C9E-9C98-491A-8DAD-1947332232D6}']
function GetType: TCefDomNodeType;
function IsText: Boolean;
@ -759,7 +758,7 @@ type
property ElementBounds: TCefRect read GetElementBounds;
end;
ICefDomDocument = interface(ICefBase)
ICefDomDocument = interface(ICefBaseRefCounted)
['{08E74052-45AF-4F69-A578-98A5C3959426}']
function GetType: TCefDomDocumentType;
function GetDocument: ICefDomNode;
@ -788,25 +787,25 @@ type
property BaseUrl: ustring read GetBaseUrl;
end;
ICefDomVisitor = interface(ICefBase)
ICefDomVisitor = interface(ICefBaseRefCounted)
['{30398428-3196-4531-B968-2DDBED36F6B0}']
procedure visit(const document: ICefDomDocument);
end;
ICefCookieVisitor = interface(ICefBase)
ICefCookieVisitor = interface(ICefBaseRefCounted)
['{8378CF1B-84AB-4FDB-9B86-34DDABCCC402}']
function visit(const name, value, domain, path: ustring; secure, httponly,
hasExpires: Boolean; const creation, lastAccess, expires: TDateTime;
count, total: Integer; out deleteCookie: Boolean): Boolean;
end;
ICefResourceBundleHandler = interface(ICefBase)
ICefResourceBundleHandler = interface(ICefBaseRefCounted)
['{09C264FD-7E03-41E3-87B3-4234E82B5EA2}']
function GetLocalizedString(stringId: Integer; out stringVal: ustring): Boolean;
function GetDataResource(resourceId: Integer; out data: Pointer; out dataSize: NativeUInt): Boolean;
end;
ICefCommandLine = interface(ICefBase)
ICefCommandLine = interface(ICefBaseRefCounted)
['{6B43D21B-0F2C-4B94-B4E6-4AF0D7669D8E}']
function IsValid: Boolean;
function IsReadOnly: Boolean;
@ -831,7 +830,7 @@ type
property CommandLineString: ustring read GetCommandLineString;
end;
ICefBrowserProcessHandler = interface(ICefBase)
ICefBrowserProcessHandler = interface(ICefBaseRefCounted)
['{27291B7A-C0AE-4EE0-9115-15C810E22F6C}']
procedure OnContextInitialized;
procedure OnBeforeChildProcessLaunch(const commandLine: ICefCommandLine);
@ -839,13 +838,7 @@ type
procedure OnScheduleMessagePumpWork(delayMs: Int64);
end;
ICefSchemeRegistrar = interface(ICefBase)
['{1832FF6E-100B-4E8B-B996-AD633168BEE7}']
function AddCustomScheme(const schemeName: ustring; IsStandard, IsLocal,
IsDisplayIsolated: Boolean): Boolean; stdcall;
end;
ICefRenderProcessHandler = interface(IcefBase)
ICefRenderProcessHandler = interface(ICefBaseRefCounted)
['{FADEE3BC-BF66-430A-BA5D-1EE3782ECC58}']
procedure OnRenderThreadCreated(const extraInfo: ICefListValue) ;
procedure OnWebKitInitialized;
@ -864,11 +857,10 @@ type
sourceProcess: TCefProcessId; const message: ICefProcessMessage): Boolean;
end;
ICefApp = interface(ICefBase)
ICefApp = interface(ICefBaseRefCounted)
['{970CA670-9070-4642-B188-7D8A22DAEED4}']
procedure OnBeforeCommandLineProcessing(const processType: ustring;
const commandLine: ICefCommandLine);
procedure OnRegisterCustomSchemes(const registrar: ICefSchemeRegistrar);
procedure OnBeforeCommandLineProcessing(const processType: ustring; const commandLine: ICefCommandLine);
procedure OnRegisterCustomSchemes(const registrar: TCefSchemeRegistrarRef);
function GetResourceBundleHandler: ICefResourceBundleHandler;
function GetBrowserProcessHandler: ICefBrowserProcessHandler;
function GetRenderProcessHandler: ICefRenderProcessHandler;
@ -879,22 +871,22 @@ type
hasExpires: Boolean; const creation, lastAccess, expires: TDateTime;
count, total: Integer; out deleteCookie: Boolean): Boolean;
ICefCompletionCallback = interface(ICefBase)
ICefCompletionCallback = interface(ICefBaseRefCounted)
['{A8ECCFBB-FEE0-446F-AB32-AD69A7478D57}']
procedure OnComplete;
end;
ICefSetCookieCallback = interface(ICefBase)
ICefSetCookieCallback = interface(ICefBaseRefCounted)
['{16E14B6F-CB0A-4F9D-A008-239E0BC7B892}']
procedure OnComplete(success: Boolean);
end;
ICefDeleteCookiesCallback = interface(ICefBase)
ICefDeleteCookiesCallback = interface(ICefBaseRefCounted)
['{758B79A1-B9E8-4F0D-94A0-DCE5AFADE33D}']
procedure OnComplete(numDeleted: Integer);
end;
ICefCookieManager = Interface(ICefBase)
ICefCookieManager = Interface(ICefBaseRefCounted)
['{CC1749E6-9AD3-4283-8430-AF6CBF3E8785}']
procedure SetSupportedSchemes(schemes: TStrings; const callback: ICefCompletionCallback);
procedure SetSupportedSchemesProc(schemes: TStrings; const callback: TCefCompletionCallbackProc);
@ -918,7 +910,7 @@ type
function FlushStoreProc(const proc: TCefCompletionCallbackProc): Boolean;
end;
ICefWebPluginInfo = interface(ICefBase)
ICefWebPluginInfo = interface(ICefBaseRefCounted)
['{AA879E58-F649-44B1-AF9C-655FF5B79A02}']
function GetName: ustring;
function GetPath: ustring;
@ -931,13 +923,13 @@ type
property Description: ustring read GetDescription;
end;
ICefCallback = interface(ICefBase)
ICefCallback = interface(ICefBaseRefCounted)
['{1B8C449F-E2D6-4B78-9BBA-6F47E8BCDF37}']
procedure Cont;
procedure Cancel;
end;
ICefResourceHandler = interface(ICefBase)
ICefResourceHandler = interface(ICefBaseRefCounted)
['{BD3EA208-AAAD-488C-BFF2-76993022F2B5}']
function ProcessRequest(const request: ICefRequest; const callback: ICefCallback): Boolean;
procedure GetResponseHeaders(const response: ICefResponse;
@ -949,24 +941,24 @@ type
procedure Cancel;
end;
ICefSchemeHandlerFactory = interface(ICefBase)
ICefSchemeHandlerFactory = interface(ICefBaseRefCounted)
['{4D9B7960-B73B-4EBD-9ABE-6C1C43C245EB}']
function New(const browser: ICefBrowser; const frame: ICefFrame;
const schemeName: ustring; const request: ICefRequest): ICefResourceHandler;
end;
ICefAuthCallback = interface(ICefBase)
ICefAuthCallback = interface(ICefBaseRefCounted)
['{500C2023-BF4D-4FF7-9C04-165E5C389131}']
procedure Cont(const username, password: ustring);
procedure Cancel;
end;
ICefJsDialogCallback = interface(ICefBase)
ICefJsDialogCallback = interface(ICefBaseRefCounted)
['{187B2156-9947-4108-87AB-32E559E1B026}']
procedure Cont(success: Boolean; const userInput: ustring);
end;
ICefContextMenuParams = interface(ICefBase)
ICefContextMenuParams = interface(ICefBaseRefCounted)
['{E31BFA9E-D4E2-49B7-A05D-20018C8794EB}']
function GetXCoord: Integer;
function GetYCoord: Integer;
@ -1006,8 +998,9 @@ type
property EditStateFlags: TCefContextMenuEditStateFlags read GetEditStateFlags;
end;
ICefMenuModel = interface(ICefBase)
ICefMenuModel = interface(ICefBaseRefCounted)
['{40AF19D3-8B4E-44B8-8F89-DEB5907FC495}']
function IsSubMenu: Boolean;
function Clear: Boolean;
function GetCount: Integer;
function AddSeparator: Boolean;
@ -1057,9 +1050,15 @@ type
function RemoveAcceleratorAt(index: Integer): Boolean;
function GetAccelerator(commandId: Integer; out keyCode: Integer; out shiftPressed, ctrlPressed, altPressed: Boolean): Boolean;
function GetAcceleratorAt(index: Integer; out keyCode: Integer; out shiftPressed, ctrlPressed, altPressed: Boolean): Boolean;
function SetColor(commandId: Integer; colorType: TCefMenuColorType; color: TCefColor): Boolean;
function SetColorAt(index: Integer; colorType: TCefMenuColorType; color: TCefColor): Boolean;
function GetColor(commandId: Integer; colorType: TCefMenuColorType; out color: TCefColor): Boolean;
function GetColorAt(index: Integer; colorType: TCefMenuColorType; out color: TCefColor): Boolean;
function SetFontList(commandId: Integer; const fontList: ustring): Boolean;
function SetFontListAt(index: Integer; const fontList: ustring): Boolean;
end;
ICefValue = interface(ICefBase)
ICefValue = interface(ICefBaseRefCounted)
['{66F9F439-B12B-4EC3-A945-91AE4EF4D4BA}']
function IsValid: Boolean;
function IsOwned: Boolean;
@ -1088,7 +1087,7 @@ type
function SetList(const value: ICefListValue): Boolean;
end;
ICefBinaryValue = interface(ICefBase)
ICefBinaryValue = interface(ICefBaseRefCounted)
['{974AA40A-9C5C-4726-81F0-9F0D46D7C5B3}']
function IsValid: Boolean;
function IsOwned: Boolean;
@ -1099,7 +1098,7 @@ type
function GetData(buffer: Pointer; bufferSize, dataOffset: NativeUInt): NativeUInt;
end;
ICefDictionaryValue = interface(ICefBase)
ICefDictionaryValue = interface(ICefBaseRefCounted)
['{B9638559-54DC-498C-8185-233EEF12BC69}']
function IsValid: Boolean;
function isOwned: Boolean;
@ -1133,7 +1132,7 @@ type
end;
ICefListValue = interface(ICefBase)
ICefListValue = interface(ICefBaseRefCounted)
['{09174B9D-0CC6-4360-BBB0-3CC0117F70F6}']
function IsValid: Boolean;
function IsOwned: Boolean;
@ -1166,7 +1165,7 @@ type
end;
ICefLifeSpanHandler = interface(ICefBase)
ICefLifeSpanHandler = interface(ICefBaseRefCounted)
['{0A3EB782-A319-4C35-9B46-09B2834D7169}']
function OnBeforePopup(const browser: ICefBrowser; const frame: ICefFrame;
const targetUrl, targetFrameName: ustring;
@ -1179,7 +1178,7 @@ type
function DoClose(const browser: ICefBrowser): Boolean;
end;
ICefLoadHandler = interface(ICefBase)
ICefLoadHandler = interface(ICefBaseRefCounted)
['{2C63FB82-345D-4A5B-9858-5AE7A85C9F49}']
procedure OnLoadingStateChange(const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean);
procedure OnLoadStart(const browser: ICefBrowser; const frame: ICefFrame; transitionType: TCefTransitionType);
@ -1188,20 +1187,20 @@ type
const errorText, failedUrl: ustring);
end;
ICefRequestCallback = interface(ICefBase)
ICefRequestCallback = interface(ICefBaseRefCounted)
['{A35B8FD5-226B-41A8-A763-1940787D321C}']
procedure Cont(allow: Boolean);
procedure Cancel;
end;
ICefResponseFilter = interface(ICefBase)
ICefResponseFilter = interface(ICefBaseRefCounted)
['{5013BC3C-F1AE-407A-A571-A4C6B1D6831E}']
function InitFilter: Boolean;
function Filter(dataIn: Pointer; dataInSize, dataInRead: NativeUInt;
dataOut: Pointer; dataOutSize, dataOutWritten: NativeUInt): TCefResponseFilterStatus;
end;
ICefRequestHandler = interface(ICefBase)
ICefRequestHandler = interface(ICefBaseRefCounted)
['{050877A9-D1F8-4EB3-B58E-50DC3E3D39FD}']
function OnBeforeBrowse(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; isRedirect: Boolean): Boolean;
function OnOpenUrlFromTab(const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean): Boolean;
@ -1221,7 +1220,7 @@ type
procedure OnRenderProcessTerminated(const browser: ICefBrowser; status: TCefTerminationStatus);
end;
ICefDisplayHandler = interface(ICefBase)
ICefDisplayHandler = interface(ICefBaseRefCounted)
['{1EC7C76D-6969-41D1-B26D-079BCFF054C4}']
procedure OnAddressChange(const browser: ICefBrowser; const frame: ICefFrame; const url: ustring);
procedure OnTitleChange(const browser: ICefBrowser; const title: ustring);
@ -1232,14 +1231,14 @@ type
function OnConsoleMessage(const browser: ICefBrowser; const message, source: ustring; line: Integer): Boolean;
end;
ICefFocusHandler = interface(ICefBase)
ICefFocusHandler = interface(ICefBaseRefCounted)
['{BB7FA3FA-7B1A-4ADC-8E50-12A24018DD90}']
procedure OnTakeFocus(const browser: ICefBrowser; next: Boolean);
function OnSetFocus(const browser: ICefBrowser; source: TCefFocusSource): Boolean;
procedure OnGotFocus(const browser: ICefBrowser);
end;
ICefKeyboardHandler = interface(ICefBase)
ICefKeyboardHandler = interface(ICefBaseRefCounted)
['{0512F4EC-ED88-44C9-90D3-5C6D03D3B146}']
function OnPreKeyEvent(const browser: ICefBrowser; const event: PCefKeyEvent;
osEvent: TCefEventHandle; out isKeyboardShortcut: Boolean): Boolean;
@ -1247,7 +1246,7 @@ type
osEvent: TCefEventHandle): Boolean;
end;
ICefJsDialogHandler = interface(ICefBase)
ICefJsDialogHandler = interface(ICefBaseRefCounted)
['{64E18F86-DAC5-4ED1-8589-44DE45B9DB56}']
function OnJsdialog(const browser: ICefBrowser; const originUrl: ustring;
dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring;
@ -1259,12 +1258,12 @@ type
procedure OnDialogClosed(const browser: ICefBrowser);
end;
ICefRunContextMenuCallback = interface(ICefBase)
ICefRunContextMenuCallback = interface(ICefBaseRefCounted)
['{44C3C6E3-B64D-4F6E-A318-4A0F3A72EB00}']
procedure Cont(commandId: Integer; eventFlags: TCefEventFlags);
procedure Cancel;
end;
ICefContextMenuHandler = interface(ICefBase)
ICefContextMenuHandler = interface(ICefBaseRefCounted)
['{C2951895-4087-49D5-BA18-4D9BA4F5EDD7}']
procedure OnBeforeContextMenu(const browser: ICefBrowser; const frame: ICefFrame;
const params: ICefContextMenuParams; const model: ICefMenuModel);
@ -1277,25 +1276,25 @@ type
procedure OnContextMenuDismissed(const browser: ICefBrowser; const frame: ICefFrame);
end;
ICefDialogHandler = interface(ICefBase)
ICefDialogHandler = interface(ICefBaseRefCounted)
['{7763F4B2-8BE1-4E80-AC43-8B825850DC67}']
function OnFileDialog(const browser: ICefBrowser; mode: TCefFileDialogMode;
const title, defaultFilePath: ustring; acceptFilters: TStrings;
selectedAcceptFilter: Integer; const callback: ICefFileDialogCallback): Boolean;
end;
ICefGeolocationCallback = interface(ICefBase)
ICefGeolocationCallback = interface(ICefBaseRefCounted)
['{272B8E4F-4AE4-4F14-BC4E-5924FA0C149D}']
procedure Cont(allow: Boolean);
end;
ICefGeolocationHandler = interface(ICefBase)
ICefGeolocationHandler = interface(ICefBaseRefCounted)
['{1178EE62-BAE7-4E44-932B-EAAC7A18191C}']
function OnRequestGeolocationPermission(const browser: ICefBrowser; const requestingUrl: ustring; requestId: Integer; const callback: ICefGeolocationCallback): Boolean;
procedure OnCancelGeolocationPermission(const browser: ICefBrowser; requestId: Integer);
end;
ICefRenderHandler = interface(ICefBase)
ICefRenderHandler = interface(ICefBaseRefCounted)
['{1FC1C22B-085A-4741-9366-5249B88EC410}']
function GetRootScreenRect(const browser: ICefBrowser; rect: PCefRect): Boolean;
function GetViewRect(const browser: ICefBrowser; rect: PCefRect): Boolean;
@ -1311,7 +1310,7 @@ type
procedure OnIMECompositionRangeChanged(const browser: ICefBrowser; const selected_range: PCefRange; character_boundsCount: NativeUInt; const character_bounds: PCefRect);
end;
ICefClient = interface(ICefBase)
ICefClient = interface(ICefBaseRefCounted)
['{1D502075-2FF0-4E13-A112-9E541CD811F4}']
function GetContextMenuHandler: ICefContextMenuHandler;
function GetDisplayHandler: ICefDisplayHandler;
@ -1328,7 +1327,7 @@ type
sourceProcess: TCefProcessId; const message: ICefProcessMessage): Boolean;
end;
ICefUrlRequest = interface(ICefBase)
ICefUrlRequest = interface(ICefBaseRefCounted)
['{59226AC1-A0FA-4D59-9DF4-A65C42391A67}']
function GetRequest: ICefRequest;
function GetRequestStatus: TCefUrlRequestStatus;
@ -1337,7 +1336,7 @@ type
procedure Cancel;
end;
ICefUrlrequestClient = interface(ICefBase)
ICefUrlrequestClient = interface(ICefBaseRefCounted)
['{114155BD-C248-4651-9A4F-26F3F9A4F737}']
procedure OnRequestComplete(const request: ICefUrlRequest);
procedure OnUploadProgress(const request: ICefUrlRequest; current, total: Int64);
@ -1347,38 +1346,38 @@ type
const realm, scheme: ustring; const callback: ICefAuthCallback): Boolean;
end;
ICefWebPluginInfoVisitor = interface(ICefBase)
ICefWebPluginInfoVisitor = interface(ICefBaseRefCounted)
['{7523D432-4424-4804-ACAD-E67D2313436E}']
function Visit(const info: ICefWebPluginInfo; count, total: Integer): Boolean;
end;
ICefWebPluginUnstableCallback = interface(ICefBase)
ICefWebPluginUnstableCallback = interface(ICefBaseRefCounted)
['{67459829-EB47-4B7E-9D69-2EE77DF0E71E}']
procedure IsUnstable(const path: ustring; unstable: Boolean);
end;
ICefRegisterCDMCallback = interface(ICefBase)
ICefRegisterCDMCallback = interface(ICefBaseRefCounted)
['{6C39AB3B-F724-483F-ABA0-37F6E0AECF35}']
procedure OnCDMRegistrationComplete(result: TCefCDMRegistrationError; const error_message: ustring);
end;
ICefEndTracingCallback = interface(ICefBase)
ICefEndTracingCallback = interface(ICefBaseRefCounted)
['{79020EBE-9D1D-49A6-9714-8778FE8929F2}']
procedure OnEndTracingComplete(const tracingFile: ustring);
end;
ICefGetGeolocationCallback = interface(ICefBase)
ICefGetGeolocationCallback = interface(ICefBaseRefCounted)
['{ACB82FD9-3FFD-43F9-BF1A-A4849BF5B814}']
procedure OnLocationUpdate(const position: PCefGeoposition);
end;
ICefFileDialogCallback = interface(ICefBase)
ICefFileDialogCallback = interface(ICefBaseRefCounted)
['{1AF659AB-4522-4E39-9C52-184000D8E3C7}']
procedure Cont(selectedAcceptFilter: Integer; filePaths: TStrings);
procedure Cancel;
end;
ICefDragData = interface(ICefBase)
ICefDragData = interface(ICefBaseRefCounted)
['{FBB6A487-F633-4055-AB3E-6619EDE75683}']
function Clone: ICefDragData;
function IsReadOnly: Boolean;
@ -1404,7 +1403,7 @@ type
procedure AddFile(const path, displayName: ustring);
end;
ICefDragHandler = interface(ICefBase)
ICefDragHandler = interface(ICefBaseRefCounted)
['{59A89579-5B18-489F-A25C-5CC25FF831FC}']
function OnDragEnter(const browser: ICefBrowser; const dragData: ICefDragData;
mask: TCefDragOperations): Boolean;
@ -1412,26 +1411,26 @@ type
regionsCount: NativeUInt; regions: PCefDraggableRegionArray);
end;
ICefFindHandler = interface(ICefBase)
ICefFindHandler = interface(ICefBaseRefCounted)
['{F20DF234-BD43-42B3-A80B-D354A9E5B787}']
procedure OnFindResult(const browser: ICefBrowser;
identifier, count: Integer; const selectionRect: PCefRect;
activeMatchOrdinal: Integer; finalUpdate: Boolean);
end;
ICefRequestContextHandler = interface(ICefBase)
ICefRequestContextHandler = interface(ICefBaseRefCounted)
['{76EB1FA7-78DF-4FD5-ABB3-1CDD3E73A140}']
function GetCookieManager: ICefCookieManager;
function OnBeforePluginLoad(const mimeType, pluginUrl:ustring; isMainFrame : boolean; const topOriginUrl: ustring;
const pluginInfo: ICefWebPluginInfo; pluginPolicy: PCefPluginPolicy): Boolean;
end;
ICefResolveCallback = interface(ICefBase)
ICefResolveCallback = interface(ICefBaseRefCounted)
['{0C0EA252-7968-4163-A1BE-A1453576DD06}']
procedure OnResolveCompleted(result: TCefErrorCode; resolvedIps: TStrings);
end;
ICefRequestContext = interface(ICefBase)
ICefRequestContext = interface(ICefBaseRefCounted)
['{5830847A-2971-4BD5-ABE6-21451F8923F7}']
function IsSame(const other: ICefRequestContext): Boolean;
function IsSharingWith(const other: ICefRequestContext): Boolean;
@ -1455,7 +1454,7 @@ type
function ResolveHostCached(const origin: ustring; resolvedIps: TStrings): TCefErrorCode;
end;
ICefPrintSettings = Interface(ICefBase)
ICefPrintSettings = Interface(ICefBaseRefCounted)
['{ACBD2395-E9C1-49E5-B7F3-344DAA4A0F12}']
function IsValid: Boolean;
function IsReadOnly: Boolean;
@ -1494,7 +1493,7 @@ type
property DuplexMode: TCefDuplexMode read GetDuplexMode write SetDuplexMode;
end;
ICefNavigationEntry = interface(ICefBase)
ICefNavigationEntry = interface(ICefBaseRefCounted)
['{D17B4B37-AA45-42D9-B4E4-AAB6FE2AB297}']
function IsValid: Boolean;
function GetUrl: ustring;
@ -1517,7 +1516,7 @@ type
property SSLStatus: ICefSSLStatus read GetSSLStatus;
end;
ICefX509CertPrincipal = interface(ICefBase)
ICefX509CertPrincipal = interface(ICefBaseRefCounted)
['{CD3621ED-7D68-4A1F-95B5-190C7001B65F}']
function GetDisplayName: ustring;
function GetCommonName: ustring;
@ -1530,7 +1529,7 @@ type
procedure GetDomainComponents(components: TStrings);
end;
ICefX509Certificate = interface(ICefBase)
ICefX509Certificate = interface(ICefBaseRefCounted)
['{C897979D-F068-4428-82DF-4221612FF7E0}']
function GetSubject: ICefX509CertPrincipal;
function GetIssuer: ICefX509CertPrincipal;
@ -1544,13 +1543,13 @@ type
function GetPEMEncodedIssuerChain(chainCount: NativeUInt): IInterfaceList;
end;
ICefSslInfo = interface(ICefBase)
ICefSslInfo = interface(ICefBaseRefCounted)
['{67EC86BD-DE7D-453D-908F-AD15626C514F}']
function GetCertStatus: TCefCertStatus;
function GetX509Certificate: ICefX509Certificate;
end;
ICefSSLStatus = interface(ICefBase)
ICefSSLStatus = interface(ICefBaseRefCounted)
['{E3F004F2-03D5-46A2-91D0-510C50F3B225}']
function IsSecureConnection: boolean;
function GetCertStatus: TCefCertStatus;
@ -1559,12 +1558,12 @@ type
function GetX509Certificate: ICefX509Certificate;
end;
ICefSelectClientCertificateCallback = interface(ICefBase)
ICefSelectClientCertificateCallback = interface(ICefBaseRefCounted)
['{003E3D09-ADE8-4C6E-A174-079D3D616608}']
procedure Select(const cert: ICefX509Certificate);
end;
ICefResourceBundle = interface(ICefBase)
ICefResourceBundle = interface(ICefBaseRefCounted)
['{3213CF97-C854-452B-B615-39192F8D07DC}']
function GetLocalizedString(stringId: Integer): ustring;
function GetDataResource(resourceId: Integer;
@ -1573,7 +1572,7 @@ type
out data: Pointer; out dataSize: NativeUInt): Boolean;
end;
ICefImage = interface(ICefBase)
ICefImage = interface(ICefBaseRefCounted)
['{E2C2F424-26A2-4498-BB45-DA23219831BE}']
function IsEmpty: Boolean;
function IsSame(const that: ICefImage): Boolean;
@ -1599,9 +1598,12 @@ type
property Height: NativeUInt read GetHeight;
end;
ICefMenuModelDelegate = interface(ICefBase)
ICefMenuModelDelegate = interface(ICefBaseRefCounted)
['{1430D202-2795-433E-9A35-C79A0996F316}']
procedure ExecuteCommand(const menuModel: ICefMenuModel; commandId: Integer; eventFlags: TCefEventFlags);
procedure MouseOutsideMenu(const menuModel: ICefMenuModel; const screenPoint: PCefPoint);
procedure UnhandledOpenSubmenu(const menuModel: ICefMenuModel; isRTL: boolean);
procedure UnhandledCloseSubmenu(const menuModel: ICefMenuModel; isRTL: boolean);
procedure MenuWillShow(const menuModel: ICefMenuModel);
procedure MenuClosed(const menuModel: ICefMenuModel);
function FormatLabel(const menuModel: ICefMenuModel; const label_ : ustring) : boolean;

View File

@ -47,10 +47,10 @@ unit uCEFJsDialogCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefJsDialogCallbackRef = class(TCefBaseRef, ICefJsDialogCallback)
TCefJsDialogCallbackRef = class(TCefBaseRefCountedRef, ICefJsDialogCallback)
protected
procedure Cont(success: Boolean; const userInput: ustring);
public

View File

@ -47,10 +47,10 @@ unit uCEFJsDialogHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefJsDialogHandlerOwn = class(TCefBaseOwn, ICefJsDialogHandler)
TCefJsDialogHandlerOwn = class(TCefBaseRefCountedOwn, ICefJsDialogHandler)
protected
function OnJsdialog(const browser: ICefBrowser; const originUrl: ustring; dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring; const callback: ICefJsDialogCallback; out suppressMessage: Boolean): Boolean; virtual;
function OnBeforeUnloadDialog(const browser: ICefBrowser; const messageText: ustring; isReload: Boolean; const callback: ICefJsDialogCallback): Boolean; virtual;

View File

@ -47,10 +47,10 @@ unit uCEFKeyboardHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefKeyboardHandlerOwn = class(TCefBaseOwn, ICefKeyboardHandler)
TCefKeyboardHandlerOwn = class(TCefBaseRefCountedOwn, ICefKeyboardHandler)
protected
function OnPreKeyEvent(const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle; out isKeyboardShortcut: Boolean): Boolean; virtual;
function OnKeyEvent(const browser: ICefBrowser; const event: PCefKeyEvent; osEvent: TCefEventHandle): Boolean; virtual;

View File

@ -282,6 +282,8 @@ var
cef_string_userfree_wide_free : procedure(str: PCefStringUserFreeWide); {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
cef_string_userfree_utf8_free : procedure(str: PCefStringUserFreeUtf8); {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
cef_string_userfree_utf16_free : procedure(str: PCefStringUserFreeUtf16); {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
cef_string_utf16_to_lower : function(const src: PChar16; src_len: NativeUInt; output: PCefStringUtf16): Integer; {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
cef_string_utf16_to_upper : function(const src: PChar16; src_len: NativeUInt; output: PCefStringUtf16): Integer; {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
// /include/internal/cef_thread_internal.h
cef_get_current_platform_thread_id : function : TCefPlatformThreadId; {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};

View File

@ -47,10 +47,10 @@ unit uCEFLifeSpanHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefLifeSpanHandlerOwn = class(TCefBaseOwn, ICefLifeSpanHandler)
TCefLifeSpanHandlerOwn = class(TCefBaseRefCountedOwn, ICefLifeSpanHandler)
protected
function OnBeforePopup(const browser: ICefBrowser; const frame: ICefFrame; const targetUrl, targetFrameName: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean; var popupFeatures: TCefPopupFeatures; var windowInfo: TCefWindowInfo; var client: ICefClient; var settings: TCefBrowserSettings; var noJavascriptAccess: Boolean): Boolean; virtual;
procedure OnAfterCreated(const browser: ICefBrowser); virtual;

View File

@ -47,10 +47,10 @@ unit uCEFListValue;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefListValueRef = class(TCefBaseRef, ICefListValue)
TCefListValueRef = class(TCefBaseRefCountedRef, ICefListValue)
protected
function IsValid: Boolean;
function IsOwned: Boolean;

View File

@ -47,10 +47,10 @@ unit uCEFLoadHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefLoadHandlerOwn = class(TCefBaseOwn, ICefLoadHandler)
TCefLoadHandlerOwn = class(TCefBaseRefCountedOwn, ICefLoadHandler)
protected
procedure OnLoadingStateChange(const browser: ICefBrowser; isLoading, canGoBack, canGoForward: Boolean); virtual;
procedure OnLoadStart(const browser: ICefBrowser; const frame: ICefFrame; transitionType: TCefTransitionType); virtual;

View File

@ -47,11 +47,12 @@ unit uCEFMenuModel;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefMenuModelRef = class(TCefBaseRef, ICefMenuModel)
TCefMenuModelRef = class(TCefBaseRefCountedRef, ICefMenuModel)
protected
function IsSubMenu: Boolean;
function Clear: Boolean;
function GetCount: Integer;
function AddSeparator: Boolean;
@ -101,6 +102,12 @@ type
function RemoveAcceleratorAt(index: Integer): Boolean;
function GetAccelerator(commandId: Integer; out keyCode: Integer; out shiftPressed, ctrlPressed, altPressed: Boolean): Boolean;
function GetAcceleratorAt(index: Integer; out keyCode: Integer; out shiftPressed, ctrlPressed, altPressed: Boolean): Boolean;
function SetColor(commandId: Integer; colorType: TCefMenuColorType; color: TCefColor): Boolean;
function SetColorAt(index: Integer; colorType: TCefMenuColorType; color: TCefColor): Boolean;
function GetColor(commandId: Integer; colorType: TCefMenuColorType; out color: TCefColor): Boolean;
function GetColorAt(index: Integer; colorType: TCefMenuColorType; out color: TCefColor): Boolean;
function SetFontList(commandId: Integer; const fontList: ustring): Boolean;
function SetFontListAt(index: Integer; const fontList: ustring): Boolean;
public
class function UnWrap(data: Pointer): ICefMenuModel;
class function New(const delegate: ICefMenuModelDelegate): ICefMenuModel;
@ -153,6 +160,11 @@ begin
Result := TCefMenuModelRef.UnWrap(PCefMenuModel(FData).add_sub_menu(PCefMenuModel(FData), commandId, @t));
end;
function TCefMenuModelRef.IsSubMenu: Boolean;
begin
Result := PCefMenuModel(FData).is_sub_menu(PCefMenuModel(FData)) <> 0;
end;
function TCefMenuModelRef.Clear: Boolean;
begin
Result := PCefMenuModel(FData).clear(PCefMenuModel(FData)) <> 0;
@ -183,6 +195,42 @@ begin
altPressed := ap <> 0;
end;
function TCefMenuModelRef.SetColor(commandId: Integer; colorType: TCefMenuColorType; color: TCefColor): Boolean;
begin
Result := PCefMenuModel(FData).set_color(PCefMenuModel(FData), commandId, colorType, color) <> 0;
end;
function TCefMenuModelRef.SetColorAt(index: Integer; colorType: TCefMenuColorType; color: TCefColor): Boolean;
begin
Result := PCefMenuModel(FData).set_color_at(PCefMenuModel(FData), index, colorType, color) <> 0;
end;
function TCefMenuModelRef.GetColor(commandId: Integer; colorType: TCefMenuColorType; out color: TCefColor): Boolean;
begin
Result := PCefMenuModel(FData).get_color(PCefMenuModel(FData), commandId, colorType, @color) <> 0;
end;
function TCefMenuModelRef.GetColorAt(index: Integer; colorType: TCefMenuColorType; out color: TCefColor): Boolean;
begin
Result := PCefMenuModel(FData).get_color_at(PCefMenuModel(FData), index, colorType, @color) <> 0;
end;
function TCefMenuModelRef.SetFontList(commandId: Integer; const fontList: ustring): Boolean;
var
TempString : TCefString;
begin
TempString := CefString(fontList);
Result := PCefMenuModel(FData).set_font_list(PCefMenuModel(FData), commandId, @TempString) <> 0;
end;
function TCefMenuModelRef.SetFontListAt(index: Integer; const fontList: ustring): Boolean;
var
TempString : TCefString;
begin
TempString := CefString(fontList);
Result := PCefMenuModel(FData).set_font_list_at(PCefMenuModel(FData), index, @TempString) <> 0;
end;
function TCefMenuModelRef.GetCommandIdAt(index: Integer): Integer;
begin
Result := PCefMenuModel(FData).get_command_id_at(PCefMenuModel(FData), index);

View File

@ -47,12 +47,15 @@ unit uCEFMenuModelDelegate;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefMenuModelDelegateOwn = class(TCefBaseOwn, ICefMenuModelDelegate)
TCefMenuModelDelegateOwn = class(TCefBaseRefCountedOwn, ICefMenuModelDelegate)
protected
procedure ExecuteCommand(const menuModel: ICefMenuModel; commandId: Integer; eventFlags: TCefEventFlags); virtual;
procedure MouseOutsideMenu(const menuModel: ICefMenuModel; const screenPoint: PCefPoint); virtual;
procedure UnhandledOpenSubmenu(const menuModel: ICefMenuModel; isRTL: boolean); virtual;
procedure UnhandledCloseSubmenu(const menuModel: ICefMenuModel; isRTL: boolean); virtual;
procedure MenuWillShow(const menuModel: ICefMenuModel); virtual;
procedure MenuClosed(const menuModel: ICefMenuModel); virtual;
function FormatLabel(const menuModel: ICefMenuModel; const label_ : uString) : boolean; virtual;
@ -72,6 +75,30 @@ begin
ExecuteCommand(TCefMenuModelRef.UnWrap(menu_model), command_id, event_flags);
end;
procedure cef_menu_model_delegate_mouse_outside_menu(self: PCefMenuModelDelegate;
menu_model: PCefMenuModel;
const screen_point: PCefPoint); stdcall;
begin
with TCefMenuModelDelegateOwn(CefGetObject(self)) do
MouseOutsideMenu(TCefMenuModelRef.UnWrap(menu_model), screen_point);
end;
procedure cef_menu_model_delegate_unhandled_open_submenu(self: PCefMenuModelDelegate;
menu_model: PCefMenuModel;
is_rtl: integer); stdcall;
begin
with TCefMenuModelDelegateOwn(CefGetObject(self)) do
UnhandledOpenSubmenu(TCefMenuModelRef.UnWrap(menu_model), is_rtl <> 0);
end;
procedure cef_menu_model_delegate_unhandled_close_submenu(self: PCefMenuModelDelegate;
menu_model: PCefMenuModel;
is_rtl: integer); stdcall;
begin
with TCefMenuModelDelegateOwn(CefGetObject(self)) do
UnhandledCloseSubmenu(TCefMenuModelRef.UnWrap(menu_model), is_rtl <> 0);
end;
procedure cef_menu_model_delegate_menu_will_show(self: PCefMenuModelDelegate; menu_model: PCefMenuModel); stdcall;
begin
with TCefMenuModelDelegateOwn(CefGetObject(self)) do
@ -97,6 +124,9 @@ begin
with PCefMenuModelDelegate(FData)^ do
begin
execute_command := cef_menu_model_delegate_execute_command;
mouse_outside_menu := cef_menu_model_delegate_mouse_outside_menu;
unhandled_open_submenu := cef_menu_model_delegate_unhandled_open_submenu;
unhandled_close_submenu := cef_menu_model_delegate_unhandled_close_submenu;
menu_will_show := cef_menu_model_delegate_menu_will_show;
menu_closed := cef_menu_model_delegate_menu_closed;
format_label := cef_menu_model_delegate_format_label;
@ -110,6 +140,21 @@ begin
end;
procedure TCefMenuModelDelegateOwn.MouseOutsideMenu(const menuModel: ICefMenuModel; const screenPoint: PCefPoint);
begin
end;
procedure TCefMenuModelDelegateOwn.UnhandledOpenSubmenu(const menuModel: ICefMenuModel; isRTL: boolean);
begin
end;
procedure TCefMenuModelDelegateOwn.UnhandledCloseSubmenu(const menuModel: ICefMenuModel; isRTL: boolean);
begin
end;
procedure TCefMenuModelDelegateOwn.MenuWillShow(const menuModel: ICefMenuModel);
begin

View File

@ -73,7 +73,7 @@ function CefInt64GetLow(const int64_val: Int64): Integer;
function CefInt64GetHigh(const int64_val: Int64): Integer;
function CefGetObject(ptr: Pointer): TObject;
function CefGetData(const i: ICefBase): Pointer;
function CefGetData(const i: ICefBaseRefCounted): Pointer;
function CefStringAlloc(const str: ustring): TCefString;
function CefStringClearAndGet(var str: TCefString): ustring;
@ -116,9 +116,8 @@ procedure CefSetCrashKeyValue(const aKey, aValue : ustring);
procedure CefLog(const aFile : string; aLine, aSeverity : integer; const aMessage : string);
procedure OutputDebugMessage(const aMessage : string);
function CefRegisterSchemeHandlerFactory(const SchemeName, HostName: ustring; const handler: TCefResourceHandlerClass): Boolean; overload;
function CefRegisterSchemeHandlerFactory(const SchemeName, HostName: ustring; const factory: ICefSchemeHandlerFactory): Boolean; overload;
function CefClearSchemeHandlerFactories: Boolean;
function CefRegisterSchemeHandlerFactory(const SchemeName, HostName: ustring; const handler: TCefResourceHandlerClass): Boolean;
function CefClearSchemeHandlerFactories : boolean;
function CefAddCrossOriginWhitelistEntry(const SourceOrigin, TargetProtocol, TargetDomain: ustring; AllowTargetSubdomains: Boolean): Boolean;
function CefRemoveCrossOriginWhitelistEntry(const SourceOrigin, TargetProtocol, TargetDomain: ustring; AllowTargetSubdomains: Boolean): Boolean;
@ -206,7 +205,7 @@ begin
Result := TObject(PPointer(ptr)^);
end;
function CefGetData(const i: ICefBase): Pointer; {$IFDEF SUPPORTS_INLINE} inline; {$ENDIF}
function CefGetData(const i: ICefBaseRefCounted): Pointer; {$IFDEF SUPPORTS_INLINE} inline; {$ENDIF}
begin
if (i <> nil) then
Result := i.Wrap
@ -453,58 +452,54 @@ begin
{$ENDIF}
end;
function CefRegisterSchemeHandlerFactory(const SchemeName, HostName: ustring;
const handler: TCefResourceHandlerClass): Boolean;
function CefRegisterSchemeHandlerFactory(const SchemeName : ustring;
const HostName : ustring;
const handler : TCefResourceHandlerClass) : boolean;
var
s, h: TCefString;
TempScheme, TempHostName : TCefString;
TempFactory : ICefSchemeHandlerFactory;
begin
s := CefString(SchemeName);
h := CefString(HostName);
Result := cef_register_scheme_handler_factory(
@s,
@h,
CefGetData(TCefSchemeHandlerFactoryOwn.Create(handler) as ICefBase)) <> 0;
TempScheme := CefString(SchemeName);
TempHostName := CefString(HostName);
TempFactory := TCefSchemeHandlerFactoryOwn.Create(handler);
Result := cef_register_scheme_handler_factory(@TempScheme, @TempHostName, TempFactory.Wrap) <> 0;
end;
function CefRegisterSchemeHandlerFactory(const SchemeName, HostName: ustring;
const factory: ICefSchemeHandlerFactory): Boolean;
var
s, h: TCefString;
begin
s := CefString(SchemeName);
h := CefString(HostName);
Result := cef_register_scheme_handler_factory(
@s,
@h,
CefGetData(factory as ICefBase)) <> 0;
end;
function CefClearSchemeHandlerFactories: Boolean;
function CefClearSchemeHandlerFactories : boolean;
begin
Result := cef_clear_scheme_handler_factories <> 0;
end;
function CefAddCrossOriginWhitelistEntry(const SourceOrigin, TargetProtocol,
TargetDomain: ustring; AllowTargetSubdomains: Boolean): Boolean;
var
so, tp, td: TCefString;
begin
so := CefString(SourceOrigin);
tp := CefString(TargetProtocol);
td := CefString(TargetDomain);
Result := cef_add_cross_origin_whitelist_entry(@so, @tp, @td, Ord(AllowTargetSubdomains)) <> 0;
end;
function CefRemoveCrossOriginWhitelistEntry(
const SourceOrigin, TargetProtocol, TargetDomain: ustring;
function CefAddCrossOriginWhitelistEntry(const SourceOrigin : ustring;
const TargetProtocol : ustring;
const TargetDomain : ustring;
AllowTargetSubdomains : Boolean): Boolean;
var
so, tp, td: TCefString;
TempSourceOrigin, TempTargetProtocol, TempTargetDomain : TCefString;
begin
so := CefString(SourceOrigin);
tp := CefString(TargetProtocol);
td := CefString(TargetDomain);
Result := cef_remove_cross_origin_whitelist_entry(@so, @tp, @td, Ord(AllowTargetSubdomains)) <> 0;
TempSourceOrigin := CefString(SourceOrigin);
TempTargetProtocol := CefString(TargetProtocol);
TempTargetDomain := CefString(TargetDomain);
Result := cef_add_cross_origin_whitelist_entry(@TempSourceOrigin,
@TempTargetProtocol,
@TempTargetDomain,
Ord(AllowTargetSubdomains)) <> 0;
end;
function CefRemoveCrossOriginWhitelistEntry(const SourceOrigin : ustring;
const TargetProtocol : ustring;
const TargetDomain : ustring;
AllowTargetSubdomains : Boolean): Boolean;
var
TempSourceOrigin, TempTargetProtocol, TempTargetDomain : TCefString;
begin
TempSourceOrigin := CefString(SourceOrigin);
TempTargetProtocol := CefString(TargetProtocol);
TempTargetDomain := CefString(TargetDomain);
Result := cef_remove_cross_origin_whitelist_entry(@TempSourceOrigin,
@TempTargetProtocol,
@TempTargetDomain,
Ord(AllowTargetSubdomains)) <> 0;
end;
function CefClearCrossOriginWhitelist: Boolean;

View File

@ -47,10 +47,10 @@ unit uCEFNavigationEntry;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefNavigationEntryRef = class(TCefBaseRef, ICefNavigationEntry)
TCefNavigationEntryRef = class(TCefBaseRefCountedRef, ICefNavigationEntry)
protected
function IsValid: Boolean;
function GetUrl: ustring;

View File

@ -47,10 +47,10 @@ unit uCEFNavigationEntryVisitor;
interface
uses
uCEFBase, uCEFInterfaces;
uCEFBaseRefCounted, uCEFInterfaces;
type
TCefNavigationEntryVisitorOwn = class(TCefBaseOwn, ICefNavigationEntryVisitor)
TCefNavigationEntryVisitorOwn = class(TCefBaseRefCountedOwn, ICefNavigationEntryVisitor)
protected
function Visit(const entry: ICefNavigationEntry; current: Boolean; index, total: Integer): Boolean; virtual;

View File

@ -47,10 +47,10 @@ unit uCEFPDFPrintCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefPdfPrintCallbackOwn = class(TCefBaseOwn, ICefPdfPrintCallback)
TCefPdfPrintCallbackOwn = class(TCefBaseRefCountedOwn, ICefPdfPrintCallback)
protected
procedure OnPdfPrintFinished(const path: ustring; ok: Boolean); virtual; abstract;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefPostDataRef = class(TCefBaseRef, ICefPostData)
TCefPostDataRef = class(TCefBaseRefCountedRef, ICefPostData)
protected
function IsReadOnly: Boolean;
function HasExcludedElements: Boolean;

View File

@ -47,10 +47,10 @@ unit uCEFPostDataElement;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefPostDataElementRef = class(TCefBaseRef, ICefPostDataElement)
TCefPostDataElementRef = class(TCefBaseRefCountedRef, ICefPostDataElement)
protected
function IsReadOnly: Boolean;
procedure SetToEmpty;
@ -66,7 +66,7 @@ type
class function New: ICefPostDataElement;
end;
TCefPostDataElementOwn = class(TCefBaseOwn, ICefPostDataElement)
TCefPostDataElementOwn = class(TCefBaseRefCountedOwn, ICefPostDataElement)
protected
FDataType: TCefPostDataElementType;
FValueByte: Pointer;

View File

@ -47,10 +47,10 @@ unit uCEFPrintSettings;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefPrintSettingsRef = class(TCefBaseRef, ICefPrintSettings)
TCefPrintSettingsRef = class(TCefBaseRefCountedRef, ICefPrintSettings)
protected
function IsValid: Boolean;
function IsReadOnly: Boolean;

View File

@ -47,10 +47,10 @@ unit uCEFProcessMessage;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefProcessMessageRef = class(TCefBaseRef, ICefProcessMessage)
TCefProcessMessageRef = class(TCefBaseRefCountedRef, ICefProcessMessage)
protected
function IsValid: Boolean;
function IsReadOnly: Boolean;

View File

@ -47,12 +47,12 @@ unit uCEFRegisterCDMCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefRegisterCDMProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(result: TCefCDMRegistrationError; const error_message: ustring);
TCefRegisterCDMCallbackOwn = class(TCefBaseOwn, ICefRegisterCDMCallback)
TCefRegisterCDMCallbackOwn = class(TCefBaseRefCountedOwn, ICefRegisterCDMCallback)
protected
procedure OnCDMRegistrationComplete(result: TCefCDMRegistrationError; const error_message: ustring); virtual;

View File

@ -47,10 +47,10 @@ unit uCEFRenderHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefRenderHandlerOwn = class(TCefBaseOwn, ICefRenderHandler)
TCefRenderHandlerOwn = class(TCefBaseRefCountedOwn, ICefRenderHandler)
protected
function GetRootScreenRect(const browser: ICefBrowser; rect: PCefRect): Boolean; virtual;
function GetViewRect(const browser: ICefBrowser; rect: PCefRect): Boolean; virtual;

View File

@ -47,11 +47,11 @@ unit uCEFRenderProcessHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes, uCEFListValue, uCEFBrowser, uCEFFrame, uCEFRequest,
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes, uCEFListValue, uCEFBrowser, uCEFFrame, uCEFRequest,
uCEFv8Context, uCEFv8Exception, uCEFv8StackTrace, uCEFDomNode, uCEFProcessMessage;
type
TCefRenderProcessHandlerOwn = class(TCefBaseOwn, ICefRenderProcessHandler)
TCefRenderProcessHandlerOwn = class(TCefBaseRefCountedOwn, ICefRenderProcessHandler)
protected
procedure OnRenderThreadCreated(const extraInfo: ICefListValue); virtual;
procedure OnWebKitInitialized; virtual;

View File

@ -47,10 +47,10 @@ unit uCEFRequest;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefRequestRef = class(TCefBaseRef, ICefRequest)
TCefRequestRef = class(TCefBaseRefCountedRef, ICefRequest)
protected
function IsReadOnly: Boolean;
function GetUrl: ustring;

View File

@ -47,10 +47,10 @@ unit uCEFRequestCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefRequestCallbackRef = class(TCefBaseRef, ICefRequestCallback)
TCefRequestCallbackRef = class(TCefBaseRefCountedRef, ICefRequestCallback)
protected
procedure Cont(allow: Boolean);
procedure Cancel;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefRequestContextRef = class(TCefBaseRef, ICefRequestContext)
TCefRequestContextRef = class(TCefBaseRefCountedRef, ICefRequestContext)
protected
function IsSame(const other: ICefRequestContext): Boolean;
function IsSharingWith(const other: ICefRequestContext): Boolean;

View File

@ -47,12 +47,12 @@ unit uCEFRequestContextHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefRequestContextHandlerProc = {$IFDEF DELPHI12_UP}reference to{$ENDIF} function: ICefCookieManager;
TCefRequestContextHandlerRef = class(TCefBaseRef, ICefRequestContextHandler)
TCefRequestContextHandlerRef = class(TCefBaseRefCountedRef, ICefRequestContextHandler)
protected
function GetCookieManager: ICefCookieManager;
function OnBeforePluginLoad(const mimeType, pluginUrl: ustring; isMainFrame : boolean; const topOriginUrl: ustring; const pluginInfo: ICefWebPluginInfo; pluginPolicy: PCefPluginPolicy): Boolean;
@ -61,7 +61,7 @@ type
class function UnWrap(data: Pointer): ICefRequestContextHandler;
end;
TCefRequestContextHandlerOwn = class(TCefBaseOwn, ICefRequestContextHandler)
TCefRequestContextHandlerOwn = class(TCefBaseRefCountedOwn, ICefRequestContextHandler)
protected
function GetCookieManager: ICefCookieManager; virtual;
function OnBeforePluginLoad(const mimeType, pluginUrl: ustring; isMainFrame : boolean; const topOriginUrl: ustring; const pluginInfo: ICefWebPluginInfo; pluginPolicy: PCefPluginPolicy): Boolean; virtual;

View File

@ -47,10 +47,10 @@ unit uCEFRequestHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefRequestHandlerOwn = class(TCefBaseOwn, ICefRequestHandler)
TCefRequestHandlerOwn = class(TCefBaseRefCountedOwn, ICefRequestHandler)
protected
function OnBeforeBrowse(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; isRedirect: Boolean): Boolean; virtual;
function OnOpenUrlFromTab(const browser: ICefBrowser; const frame: ICefFrame; const targetUrl: ustring; targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean): Boolean; virtual;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefResolveCallbackOwn = class(TCefBaseOwn, ICefResolveCallback)
TCefResolveCallbackOwn = class(TCefBaseRefCountedOwn, ICefResolveCallback)
protected
procedure OnResolveCompleted(result: TCefErrorCode; resolvedIps: TStrings); virtual; abstract;
public

View File

@ -47,10 +47,10 @@ unit uCEFResourceBundle;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefResourceBundleRef = class(TCefBaseRef, ICefResourceBundle)
TCefResourceBundleRef = class(TCefBaseRefCountedRef, ICefResourceBundle)
protected
function GetLocalizedString(stringId: Integer): ustring;
function GetDataResource(resourceId: Integer;

View File

@ -47,10 +47,10 @@ unit uCEFResourceBundleHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefResourceBundleHandlerOwn = class(TCefBaseOwn, ICefResourceBundleHandler)
TCefResourceBundleHandlerOwn = class(TCefBaseRefCountedOwn, ICefResourceBundleHandler)
protected
function GetDataResource(stringId: Integer; out data: Pointer; out dataSize: NativeUInt): Boolean; virtual; abstract;
function GetLocalizedString(messageId: Integer; out stringVal: ustring): Boolean; virtual; abstract;

View File

@ -47,10 +47,10 @@ unit uCEFResourceHandler;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefResourceHandlerOwn = class(TCefBaseOwn, ICefResourceHandler)
TCefResourceHandlerOwn = class(TCefBaseRefCountedOwn, ICefResourceHandler)
protected
function ProcessRequest(const request: ICefRequest; const callback: ICefCallback): Boolean; virtual;
procedure GetResponseHeaders(const response: ICefResponse; out responseLength: Int64; out redirectUrl: ustring); virtual;
@ -125,10 +125,12 @@ begin
end;
constructor TCefResourceHandlerOwn.Create(const browser : ICefBrowser;
const frame: ICefFrame; const schemeName: ustring;
const frame : ICefFrame;
const schemeName : ustring;
const request : ICefRequest);
begin
inherited CreateData(SizeOf(TCefResourceHandler));
with PCefResourceHandler(FData)^ do
begin
process_request := cef_resource_handler_process_request;
@ -140,21 +142,21 @@ begin
end;
end;
procedure TCefResourceHandlerOwn.GetResponseHeaders(
const response: ICefResponse; out responseLength: Int64;
procedure TCefResourceHandlerOwn.GetResponseHeaders(const response : ICefResponse;
out responseLength : Int64;
out redirectUrl : ustring);
begin
end;
function TCefResourceHandlerOwn.ProcessRequest(const request: ICefRequest;
const callback: ICefCallback): Boolean;
function TCefResourceHandlerOwn.ProcessRequest(const request: ICefRequest; const callback: ICefCallback): Boolean;
begin
Result := False;
end;
function TCefResourceHandlerOwn.ReadResponse(const dataOut : Pointer;
bytesToRead: Integer; var bytesRead: Integer;
bytesToRead : Integer;
var bytesRead : Integer;
const callback : ICefCallback): Boolean;
begin
Result := False;

View File

@ -47,10 +47,10 @@ unit uCEFResponse;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefResponseRef = class(TCefBaseRef, ICefResponse)
TCefResponseRef = class(TCefBaseRefCountedRef, ICefResponse)
protected
function IsReadOnly: Boolean;
function GetError: TCefErrorCode;

View File

@ -47,10 +47,10 @@ unit uCEFResponseFilter;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefResponseFilterOwn = class(TCefBaseOwn, ICefResponseFilter)
TCefResponseFilterOwn = class(TCefBaseRefCountedOwn, ICefResponseFilter)
protected
function InitFilter: Boolean; virtual; abstract;
function Filter(dataIn: Pointer; dataInSize, dataInRead: NativeUInt; dataOut: Pointer;

View File

@ -47,10 +47,10 @@ unit uCEFRunContextMenuCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefRunContextMenuCallbackRef = class(TCefBaseRef, ICefRunContextMenuCallback)
TCefRunContextMenuCallbackRef = class(TCefBaseRefCountedRef, ICefRunContextMenuCallback)
protected
procedure Cont(commandId: Integer; eventFlags: TCefEventFlags);
procedure Cancel;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces;
uCEFBaseRefCounted, uCEFInterfaces;
type
TCefRunFileDialogCallbackOwn = class(TCefBaseOwn, ICefRunFileDialogCallback)
TCefRunFileDialogCallbackOwn = class(TCefBaseRefCountedOwn, ICefRunFileDialogCallback)
protected
procedure OnFileDialogDismissed(selectedAcceptFilter: Integer; filePaths: TStrings); virtual;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefSSLStatusRef = class(TCefBaseRef, ICefSSLStatus)
TCefSSLStatusRef = class(TCefBaseRefCountedRef, ICefSSLStatus)
protected
function IsSecureConnection: boolean;
function GetCertStatus: TCefCertStatus;

View File

@ -47,10 +47,10 @@ unit uCEFSchemeHandlerFactory;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes, uCEFResourceHandler;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes, uCEFResourceHandler;
type
TCefSchemeHandlerFactoryOwn = class(TCefBaseOwn, ICefSchemeHandlerFactory)
TCefSchemeHandlerFactoryOwn = class(TCefBaseRefCountedOwn, ICefSchemeHandlerFactory)
protected
FClass : TCefResourceHandlerClass;
@ -66,26 +66,31 @@ uses
uCEFMiscFunctions, uCEFLibFunctions, uCEFBrowser, uCEFFrame, uCEFRequest;
function cef_scheme_handler_factory_create( self : PCefSchemeHandlerFactory;
browser: PCefBrowser; frame: PCefFrame; const scheme_name: PCefString;
browser : PCefBrowser;
frame : PCefFrame;
const scheme_name : PCefString;
request : PCefRequest): PCefResourceHandler; stdcall;
begin
with TCefSchemeHandlerFactoryOwn(CefGetObject(self)) do
Result := CefGetData(New(TCefBrowserRef.UnWrap(browser), TCefFrameRef.UnWrap(frame),
CefString(scheme_name), TCefRequestRef.UnWrap(request)));
Result := CefGetData(New(TCefBrowserRef.UnWrap(browser),
TCefFrameRef.UnWrap(frame),
CefString(scheme_name),
TCefRequestRef.UnWrap(request)));
end;
constructor TCefSchemeHandlerFactoryOwn.Create(
const AClass: TCefResourceHandlerClass);
constructor TCefSchemeHandlerFactoryOwn.Create(const AClass: TCefResourceHandlerClass);
begin
inherited CreateData(SizeOf(TCefSchemeHandlerFactory));
FClass := AClass;
with PCefSchemeHandlerFactory(FData)^ do
create := cef_scheme_handler_factory_create;
end;
function TCefSchemeHandlerFactoryOwn.New(const browser : ICefBrowser;
const frame: ICefFrame; const schemeName: ustring;
const frame : ICefFrame;
const schemeName : ustring;
const request : ICefRequest): ICefResourceHandler;
begin
Result := FClass.Create(browser, frame, schemeName, request);

View File

@ -47,15 +47,12 @@ unit uCEFSchemeRegistrar;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseScopedWrapper, uCEFTypes;
type
TCefSchemeRegistrarRef = class(TCefBaseRef, ICefSchemeRegistrar)
protected
function AddCustomScheme(const schemeName: ustring; IsStandard, IsLocal, IsDisplayIsolated: Boolean): Boolean; stdcall;
TCefSchemeRegistrarRef = class(TCEFBaseScopedWrapperRef)
public
class function UnWrap(data: Pointer): ICefSchemeRegistrar;
function AddCustomScheme(const schemeName: ustring; IsStandard, IsLocal, IsDisplayIsolated, IsSecure, IsCorsEnabled: Boolean): Boolean; stdcall;
end;
implementation
@ -63,19 +60,18 @@ implementation
uses
uCEFMiscFunctions;
function TCefSchemeRegistrarRef.AddCustomScheme(const schemeName: ustring; IsStandard, IsLocal, IsDisplayIsolated: Boolean): Boolean;
function TCefSchemeRegistrarRef.AddCustomScheme(const schemeName: ustring; IsStandard, IsLocal, IsDisplayIsolated, IsSecure, IsCorsEnabled: Boolean): Boolean;
var
sn: TCefString;
begin
sn := CefString(schemeName);
Result := PCefSchemeRegistrar(FData).add_custom_scheme(PCefSchemeRegistrar(FData), @sn, Ord(IsStandard), Ord(IsLocal), Ord(IsDisplayIsolated)) <> 0;
end;
class function TCefSchemeRegistrarRef.UnWrap(data: Pointer): ICefSchemeRegistrar;
begin
if data <> nil then
Result := Create(data) as ICefSchemeRegistrar else
Result := nil;
Result := PCefSchemeRegistrar(FData).add_custom_scheme(PCefSchemeRegistrar(FData),
@sn,
Ord(IsStandard),
Ord(IsLocal),
Ord(IsDisplayIsolated),
Ord(isSecure),
Ord(IsCorsEnabled)) <> 0;
end;
end.

View File

@ -47,10 +47,10 @@ unit uCEFSelectClientCertificateCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefSelectClientCertificateCallbackRef = class(TCefBaseRef, ICefSelectClientCertificateCallback)
TCefSelectClientCertificateCallbackRef = class(TCefBaseRefCountedRef, ICefSelectClientCertificateCallback)
protected
procedure Select(const cert: ICefX509Certificate);

View File

@ -47,10 +47,10 @@ unit uCEFSetCookieCallback;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefSetCookieCallbackOwn = class(TCefBaseOwn, ICefSetCookieCallback)
TCefSetCookieCallbackOwn = class(TCefBaseRefCountedOwn, ICefSetCookieCallback)
protected
procedure OnComplete(success: Boolean); virtual; abstract;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefSslInfoRef = class(TCefBaseRef, ICefSslInfo)
TCefSslInfoRef = class(TCefBaseRefCountedRef, ICefSslInfo)
protected
function GetCertStatus: TCefCertStatus;
function GetX509Certificate: ICefX509Certificate;

View File

@ -52,10 +52,10 @@ uses
{$ELSE}
Classes,
{$ENDIF}
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefStreamReaderRef = class(TCefBaseRef, ICefStreamReader)
TCefStreamReaderRef = class(TCefBaseRefCountedRef, ICefStreamReader)
protected
function Read(ptr: Pointer; size, n: NativeUInt): NativeUInt;
function Seek(offset: Int64; whence: Integer): Integer;

View File

@ -47,10 +47,10 @@ unit uCEFStreamWriter;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefStreamWriterRef = class(TCefBaseRef, ICefStreamWriter)
TCefStreamWriterRef = class(TCefBaseRefCountedRef, ICefStreamWriter)
protected
function write(const ptr: Pointer; size, n: NativeUInt): NativeUInt;
function Seek(offset: Int64; whence: Integer): Integer;

View File

@ -47,7 +47,7 @@ unit uCEFStringMap;
interface
uses
uCEFBase, uCEFInterfaces, uCEFTypes;
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
type
TCefStringMapOwn = class(TInterfacedObject, ICefStringMap)

Some files were not shown because too many files have changed in this diff Show More