mirror of
https://github.com/salvadordf/CEF4Delphi.git
synced 2025-06-02 21:57:37 +02:00
Update to CEF 3.3325.1746.ge81cdf2
This commit is contained in:
parent
381f43394b
commit
368479b0eb
@ -1,14 +0,0 @@
|
|||||||
del /s /q *.dcu
|
|
||||||
del /s /q *.exe
|
|
||||||
del /s /q *.res
|
|
||||||
del /s /q *.log
|
|
||||||
del /s /q *.dsk
|
|
||||||
del /s /q *.identcache
|
|
||||||
del /s /q *.stat
|
|
||||||
del /s /q *.local
|
|
||||||
del /s /q *.~*
|
|
||||||
rmdir Win32\Debug
|
|
||||||
rmdir Win32\Release
|
|
||||||
rmdir Win32
|
|
||||||
rmdir __history
|
|
||||||
rmdir __recovery
|
|
@ -1,71 +0,0 @@
|
|||||||
// ************************************************************************
|
|
||||||
// ***************************** 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 © 2018 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.
|
|
||||||
*
|
|
||||||
*)
|
|
||||||
|
|
||||||
program Geolocation;
|
|
||||||
|
|
||||||
{$I cef.inc}
|
|
||||||
|
|
||||||
uses
|
|
||||||
{$IFDEF DELPHI16_UP}
|
|
||||||
Vcl.Forms,
|
|
||||||
WinApi.Windows,
|
|
||||||
{$ELSE}
|
|
||||||
Forms,
|
|
||||||
Windows,
|
|
||||||
{$ENDIF }
|
|
||||||
uCEFApplication,
|
|
||||||
uGeolocation in 'uGeolocation.pas' {GeolocationFrm};
|
|
||||||
|
|
||||||
{$R *.res}
|
|
||||||
|
|
||||||
{$SetPEFlags IMAGE_FILE_LARGE_ADDRESS_AWARE}
|
|
||||||
|
|
||||||
begin
|
|
||||||
GlobalCEFApp := TCefApplication.Create;
|
|
||||||
|
|
||||||
if GlobalCEFApp.StartMainProcess then
|
|
||||||
begin
|
|
||||||
Application.Initialize;
|
|
||||||
{$IFDEF DELPHI11_UP}
|
|
||||||
Application.MainFormOnTaskbar := True;
|
|
||||||
{$ENDIF}
|
|
||||||
Application.CreateForm(TGeolocationFrm, GeolocationFrm);
|
|
||||||
Application.Run;
|
|
||||||
end;
|
|
||||||
|
|
||||||
GlobalCEFApp.Free;
|
|
||||||
end.
|
|
@ -1,566 +0,0 @@
|
|||||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<PropertyGroup>
|
|
||||||
<ProjectGuid>{BE765054-B28F-4C25-8A16-E73CA1BD9E87}</ProjectGuid>
|
|
||||||
<ProjectVersion>18.2</ProjectVersion>
|
|
||||||
<FrameworkType>VCL</FrameworkType>
|
|
||||||
<MainSource>Geolocation.dpr</MainSource>
|
|
||||||
<Base>True</Base>
|
|
||||||
<Config Condition="'$(Config)'==''">Debug</Config>
|
|
||||||
<Platform Condition="'$(Platform)'==''">Win32</Platform>
|
|
||||||
<TargetedPlatforms>1</TargetedPlatforms>
|
|
||||||
<AppType>Application</AppType>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
|
|
||||||
<Base_Win32>true</Base_Win32>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
|
|
||||||
<Base_Win64>true</Base_Win64>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_1)'!=''">
|
|
||||||
<Cfg_1>true</Cfg_1>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
|
|
||||||
<Cfg_1_Win32>true</Cfg_1_Win32>
|
|
||||||
<CfgParent>Cfg_1</CfgParent>
|
|
||||||
<Cfg_1>true</Cfg_1>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_2)'!=''">
|
|
||||||
<Cfg_2>true</Cfg_2>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''">
|
|
||||||
<Cfg_2_Win32>true</Cfg_2_Win32>
|
|
||||||
<CfgParent>Cfg_2</CfgParent>
|
|
||||||
<Cfg_2>true</Cfg_2>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Base)'!=''">
|
|
||||||
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
|
|
||||||
<SanitizedProjectName>Geolocation</SanitizedProjectName>
|
|
||||||
<Icon_MainIcon>$(BDS)\bin\delphi_PROJECTICON.ico</Icon_MainIcon>
|
|
||||||
<DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)</DCC_Namespace>
|
|
||||||
<VerInfo_Locale>3082</VerInfo_Locale>
|
|
||||||
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
|
|
||||||
<DCC_E>false</DCC_E>
|
|
||||||
<DCC_N>false</DCC_N>
|
|
||||||
<DCC_S>false</DCC_S>
|
|
||||||
<DCC_F>false</DCC_F>
|
|
||||||
<DCC_K>false</DCC_K>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Base_Win32)'!=''">
|
|
||||||
<Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File>
|
|
||||||
<VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
|
|
||||||
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
|
|
||||||
<DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
|
|
||||||
<DCC_UsePackage>DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;frxe23;vclFireDAC;emsclientfiredac;DataSnapFireDAC;svnui;tethering;Componentes;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;Intraweb;DBXOracleDriver;inetdb;Componentes_Int;CEF4Delphi;FmxTeeUI;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyProtocols230;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;frxTee23;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;vcl;DBXSybaseASEDriver;FireDACDb2Driver;GR32_DSGN_RSXE5;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;Componentes_UI;TeeDB;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;Componentes_Misc;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;FireDACDSDriver;DbxClientDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;GR32_RSXE5;bindcomp;appanalytics;Componentes_RTF;DBXInformixDriver;bindcompvcl;frxDB23;Componentes_vCard;TeeUI;IndyCore230;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;IndySystem230;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;frx23;fmxase;$(DCC_UsePackage)</DCC_UsePackage>
|
|
||||||
<VerInfo_Locale>1033</VerInfo_Locale>
|
|
||||||
<UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
|
|
||||||
<UWP_DelphiLogo150>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png</UWP_DelphiLogo150>
|
|
||||||
<DCC_ExeOutput>..\..\bin</DCC_ExeOutput>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Base_Win64)'!=''">
|
|
||||||
<DCC_UsePackage>DBXSqliteDriver;RESTComponents;DataSnapServerMidas;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;emsclientfiredac;DataSnapFireDAC;tethering;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;Intraweb;DBXOracleDriver;inetdb;FmxTeeUI;FireDACIBDriver;fmx;fmxdae;vclib;FireDACDBXDriver;dbexpress;IndyProtocols230;vclx;dsnap;DataSnapCommon;emsclient;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;CloudService;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonDriver;DataSnapClient;inet;bindcompdbx;vcl;DBXSybaseASEDriver;FireDACDb2Driver;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;TeeDB;FireDAC;FireDACSqliteDriver;FireDACPgDriver;ibmonitor;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;ibxpress;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;ibxbindings;rtl;FireDACDSDriver;DbxClientDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;bindcomp;appanalytics;DBXInformixDriver;bindcompvcl;TeeUI;IndyCore230;vclribbon;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;IndySystem230;dsnapxml;DataSnapProviderClient;dbrtl;inetdbxpress;FireDACMongoDBDriver;fmxase;$(DCC_UsePackage)</DCC_UsePackage>
|
|
||||||
<UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
|
|
||||||
<UWP_DelphiLogo150>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png</UWP_DelphiLogo150>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Cfg_1)'!=''">
|
|
||||||
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
|
|
||||||
<DCC_DebugDCUs>true</DCC_DebugDCUs>
|
|
||||||
<DCC_Optimize>false</DCC_Optimize>
|
|
||||||
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
|
|
||||||
<DCC_DebugInfoInExe>true</DCC_DebugInfoInExe>
|
|
||||||
<DCC_RemoteDebug>true</DCC_RemoteDebug>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
|
|
||||||
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
|
|
||||||
<AppEnableRuntimeThemes>true</AppEnableRuntimeThemes>
|
|
||||||
<VerInfo_Locale>1033</VerInfo_Locale>
|
|
||||||
<AppEnableHighDPI>true</AppEnableHighDPI>
|
|
||||||
<DCC_RemoteDebug>false</DCC_RemoteDebug>
|
|
||||||
<BT_BuildType>Debug</BT_BuildType>
|
|
||||||
<DCC_ExeOutput>..\..\bin</DCC_ExeOutput>
|
|
||||||
<VerInfo_Keys>CompanyName=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductVersion=1.0.0.0;Comments=;ProgramID=com.embarcadero.$(MSBuildProjectName);FileDescription=$(MSBuildProjectName);ProductName=$(MSBuildProjectName)</VerInfo_Keys>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Cfg_2)'!=''">
|
|
||||||
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
|
|
||||||
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
|
|
||||||
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
|
|
||||||
<DCC_DebugInformation>0</DCC_DebugInformation>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
|
|
||||||
<AppEnableRuntimeThemes>true</AppEnableRuntimeThemes>
|
|
||||||
<AppEnableHighDPI>true</AppEnableHighDPI>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<DelphiCompile Include="$(MainSource)">
|
|
||||||
<MainSource>MainSource</MainSource>
|
|
||||||
</DelphiCompile>
|
|
||||||
<DCCReference Include="uGeolocation.pas">
|
|
||||||
<Form>GeolocationFrm</Form>
|
|
||||||
</DCCReference>
|
|
||||||
<BuildConfiguration Include="Release">
|
|
||||||
<Key>Cfg_2</Key>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
</BuildConfiguration>
|
|
||||||
<BuildConfiguration Include="Base">
|
|
||||||
<Key>Base</Key>
|
|
||||||
</BuildConfiguration>
|
|
||||||
<BuildConfiguration Include="Debug">
|
|
||||||
<Key>Cfg_1</Key>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
</BuildConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<ProjectExtensions>
|
|
||||||
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
|
|
||||||
<Borland.ProjectType>Application</Borland.ProjectType>
|
|
||||||
<BorlandProject>
|
|
||||||
<Delphi.Personality>
|
|
||||||
<Source>
|
|
||||||
<Source Name="MainSource">Geolocation.dpr</Source>
|
|
||||||
</Source>
|
|
||||||
<Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDSBIN)\dclIPIndyImpl250.bpl">IP Abstraction Indy Implementation Design Time</Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDSBIN)\dcloffice2k250.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDSBIN)\dclofficexp250.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
|
||||||
</Excluded_Packages>
|
|
||||||
</Delphi.Personality>
|
|
||||||
<Deployment Version="3">
|
|
||||||
<DeployFile LocalName="Win32\Debug\Geolocation.exe" Configuration="Debug" Class="ProjectOutput"/>
|
|
||||||
<DeployClass Name="AdditionalDebugSymbols">
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidClassesDexFile">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>classes</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidGDBServer">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidLibnativeArmeabiFile">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>library\lib\armeabi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidLibnativeMipsFile">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>library\lib\mips</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidServiceOutput">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidSplashImageDef">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidSplashStyles">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\values</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_DefaultAppIcon">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_LauncherIcon144">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_LauncherIcon36">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-ldpi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_LauncherIcon48">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-mdpi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_LauncherIcon72">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-hdpi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_LauncherIcon96">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-xhdpi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_SplashImage426">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-small</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_SplashImage470">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-normal</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_SplashImage640">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-large</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_SplashImage960">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-xlarge</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="DebugSymbols">
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="DependencyFramework">
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.framework</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="DependencyModule">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
<Extensions>.dll;.bpl</Extensions>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Required="true" Name="DependencyPackage">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
<Extensions>.bpl</Extensions>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="File">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\Resources\StartUp\</RemoteDir>
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPad_Launch1024">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPad_Launch1536">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPad_Launch2048">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPad_Launch768">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPhone_Launch320">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPhone_Launch640">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPhone_Launch640x1136">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectAndroidManifest">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectiOSDeviceDebug">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectiOSDeviceResourceRules">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectiOSEntitlements">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<RemoteDir>..\</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<RemoteDir>..\</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectiOSInfoPList">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectiOSResource">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectOSXEntitlements">
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>..\</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectOSXInfoPList">
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectOSXResource">
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\Resources</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Required="true" Name="ProjectOutput">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Linux64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectUWPManifest">
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="UWP_DelphiLogo150">
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<RemoteDir>Assets</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win64">
|
|
||||||
<RemoteDir>Assets</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="UWP_DelphiLogo44">
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<RemoteDir>Assets</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win64">
|
|
||||||
<RemoteDir>Assets</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<ProjectRoot Platform="iOSDevice64" Name="$(PROJECTNAME).app"/>
|
|
||||||
<ProjectRoot Platform="Win64" Name="$(PROJECTNAME)"/>
|
|
||||||
<ProjectRoot Platform="iOSDevice32" Name="$(PROJECTNAME).app"/>
|
|
||||||
<ProjectRoot Platform="Win32" Name="$(PROJECTNAME)"/>
|
|
||||||
<ProjectRoot Platform="Linux64" Name="$(PROJECTNAME)"/>
|
|
||||||
<ProjectRoot Platform="OSX32" Name="$(PROJECTNAME).app"/>
|
|
||||||
<ProjectRoot Platform="Android" Name="$(PROJECTNAME)"/>
|
|
||||||
<ProjectRoot Platform="iOSSimulator" Name="$(PROJECTNAME).app"/>
|
|
||||||
</Deployment>
|
|
||||||
<Platforms>
|
|
||||||
<Platform value="Win32">True</Platform>
|
|
||||||
<Platform value="Win64">False</Platform>
|
|
||||||
</Platforms>
|
|
||||||
</BorlandProject>
|
|
||||||
<ProjectFileVersion>12</ProjectFileVersion>
|
|
||||||
</ProjectExtensions>
|
|
||||||
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
|
|
||||||
<Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
|
|
||||||
<Import Project="$(MSBuildProjectName).deployproj" Condition="Exists('$(MSBuildProjectName).deployproj')"/>
|
|
||||||
</Project>
|
|
@ -1,384 +0,0 @@
|
|||||||
// ************************************************************************
|
|
||||||
// ***************************** 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.
|
|
||||||
*
|
|
||||||
*)
|
|
||||||
|
|
||||||
// The complete list of compiler versions is here :
|
|
||||||
// http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Compiler_Versions
|
|
||||||
|
|
||||||
{$DEFINE DELPHI_VERSION_UNKNOW}
|
|
||||||
|
|
||||||
{$IFDEF FPC}
|
|
||||||
{$DEFINE CEF_MULTI_THREADED_MESSAGE_LOOP}
|
|
||||||
{$DEFINE SUPPORTS_INLINE}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 5
|
|
||||||
{$IFDEF VER130}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 6
|
|
||||||
{$IFDEF VER140}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 7
|
|
||||||
{$IFDEF VER150}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 8
|
|
||||||
{$IFDEF VER160}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 2005
|
|
||||||
{$IFDEF VER170}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
{$IFDEF VER180}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
// Delphi 2007
|
|
||||||
{$IFDEF VER185}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
// Delphi 2006
|
|
||||||
{$ELSE}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 2009
|
|
||||||
{$IFDEF VER200}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
//Delphi 2010
|
|
||||||
{$IFDEF VER210}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE
|
|
||||||
{$IFDEF VER220}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE2
|
|
||||||
{$IFDEF VER230}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE3
|
|
||||||
{$IFDEF VER240}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE4
|
|
||||||
{$IFDEF VER250}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE5
|
|
||||||
{$IFDEF VER260}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE6
|
|
||||||
{$IFDEF VER270}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE7
|
|
||||||
{$IFDEF VER280}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE8
|
|
||||||
{$IFDEF VER290}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$DEFINE DELPHI22_UP}
|
|
||||||
{$ENDIF VER290}
|
|
||||||
|
|
||||||
// Rad Studio 10 - Delphi Seattle
|
|
||||||
{$IFDEF VER300}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$DEFINE DELPHI22_UP}
|
|
||||||
{$DEFINE DELPHI23_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Rad Studio 10.1 - Delphi Berlin
|
|
||||||
{$IFDEF VER310}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$DEFINE DELPHI22_UP}
|
|
||||||
{$DEFINE DELPHI23_UP}
|
|
||||||
{$DEFINE DELPHI24_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Rad Studio 10.2 - Delphi Tokyo
|
|
||||||
{$IFDEF VER320}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$DEFINE DELPHI22_UP}
|
|
||||||
{$DEFINE DELPHI23_UP}
|
|
||||||
{$DEFINE DELPHI24_UP}
|
|
||||||
{$DEFINE DELPHI25_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
|
|
||||||
{$IFDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$DEFINE DELPHI22_UP}
|
|
||||||
{$DEFINE DELPHI23_UP}
|
|
||||||
{$DEFINE DELPHI24_UP}
|
|
||||||
{$DEFINE DELPHI25_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
{$IFDEF DELPHI9_UP}
|
|
||||||
{$DEFINE SUPPORTS_INLINE}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
@ -1,93 +0,0 @@
|
|||||||
object GeolocationFrm: TGeolocationFrm
|
|
||||||
Left = 0
|
|
||||||
Top = 0
|
|
||||||
Caption = 'Geolocation'
|
|
||||||
ClientHeight = 691
|
|
||||||
ClientWidth = 978
|
|
||||||
Color = clBtnFace
|
|
||||||
Font.Charset = DEFAULT_CHARSET
|
|
||||||
Font.Color = clWindowText
|
|
||||||
Font.Height = -11
|
|
||||||
Font.Name = 'Tahoma'
|
|
||||||
Font.Style = []
|
|
||||||
OldCreateOrder = False
|
|
||||||
Position = poScreenCenter
|
|
||||||
OnCreate = FormCreate
|
|
||||||
OnShow = FormShow
|
|
||||||
PixelsPerInch = 96
|
|
||||||
TextHeight = 13
|
|
||||||
object CEFWindowParent1: TCEFWindowParent
|
|
||||||
Left = 0
|
|
||||||
Top = 30
|
|
||||||
Width = 978
|
|
||||||
Height = 642
|
|
||||||
Align = alClient
|
|
||||||
TabOrder = 0
|
|
||||||
end
|
|
||||||
object NavControlPnl: TPanel
|
|
||||||
Left = 0
|
|
||||||
Top = 0
|
|
||||||
Width = 978
|
|
||||||
Height = 30
|
|
||||||
Align = alTop
|
|
||||||
BevelOuter = bvNone
|
|
||||||
Enabled = False
|
|
||||||
Padding.Left = 5
|
|
||||||
Padding.Top = 5
|
|
||||||
Padding.Right = 5
|
|
||||||
Padding.Bottom = 5
|
|
||||||
ShowCaption = False
|
|
||||||
TabOrder = 1
|
|
||||||
object Edit1: TEdit
|
|
||||||
Left = 5
|
|
||||||
Top = 5
|
|
||||||
Width = 937
|
|
||||||
Height = 20
|
|
||||||
Margins.Right = 5
|
|
||||||
Align = alClient
|
|
||||||
TabOrder = 0
|
|
||||||
Text = 'http://www.google.com'
|
|
||||||
ExplicitHeight = 21
|
|
||||||
end
|
|
||||||
object GoBtn: TButton
|
|
||||||
Left = 942
|
|
||||||
Top = 5
|
|
||||||
Width = 31
|
|
||||||
Height = 20
|
|
||||||
Margins.Left = 5
|
|
||||||
Align = alRight
|
|
||||||
Caption = 'Go'
|
|
||||||
TabOrder = 1
|
|
||||||
OnClick = GoBtnClick
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object StatusBar1: TStatusBar
|
|
||||||
Left = 0
|
|
||||||
Top = 672
|
|
||||||
Width = 978
|
|
||||||
Height = 19
|
|
||||||
Panels = <
|
|
||||||
item
|
|
||||||
Width = 200
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Width = 200
|
|
||||||
end
|
|
||||||
item
|
|
||||||
Width = 200
|
|
||||||
end>
|
|
||||||
end
|
|
||||||
object Chromium1: TChromium
|
|
||||||
OnBeforePopup = Chromium1BeforePopup
|
|
||||||
OnAfterCreated = Chromium1AfterCreated
|
|
||||||
Left = 32
|
|
||||||
Top = 224
|
|
||||||
end
|
|
||||||
object Timer1: TTimer
|
|
||||||
Enabled = False
|
|
||||||
Interval = 300
|
|
||||||
OnTimer = Timer1Timer
|
|
||||||
Left = 32
|
|
||||||
Top = 288
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,198 +0,0 @@
|
|||||||
// ************************************************************************
|
|
||||||
// ***************************** 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 © 2018 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 uGeolocation;
|
|
||||||
|
|
||||||
{$I cef.inc}
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
{$IFDEF DELPHI16_UP}
|
|
||||||
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
|
|
||||||
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.ComCtrls,
|
|
||||||
{$ELSE}
|
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics,
|
|
||||||
Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls,
|
|
||||||
{$ENDIF}
|
|
||||||
uCEFChromium, uCEFWindowParent, uCEFInterfaces, uCEFApplication, uCEFTypes, uCEFConstants;
|
|
||||||
|
|
||||||
const
|
|
||||||
MINIBROWSER_NEWLOCATION = WM_APP + $100;
|
|
||||||
|
|
||||||
type
|
|
||||||
TGeolocationFrm = class(TForm)
|
|
||||||
CEFWindowParent1: TCEFWindowParent;
|
|
||||||
Chromium1: TChromium;
|
|
||||||
NavControlPnl: TPanel;
|
|
||||||
Edit1: TEdit;
|
|
||||||
GoBtn: TButton;
|
|
||||||
StatusBar1: TStatusBar;
|
|
||||||
Timer1: TTimer;
|
|
||||||
|
|
||||||
procedure Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser);
|
|
||||||
procedure GoBtnClick(Sender: TObject);
|
|
||||||
procedure FormShow(Sender: TObject);
|
|
||||||
procedure Timer1Timer(Sender: TObject);
|
|
||||||
procedure FormCreate(Sender: TObject);
|
|
||||||
procedure Chromium1BeforePopup(Sender: TObject;
|
|
||||||
const browser: ICefBrowser; const frame: ICefFrame; const targetUrl,
|
|
||||||
targetFrameName: ustring;
|
|
||||||
targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean;
|
|
||||||
var popupFeatures: TCefPopupFeatures; var windowInfo: TCefWindowInfo;
|
|
||||||
var client: ICefClient; var settings: TCefBrowserSettings;
|
|
||||||
var noJavascriptAccess: Boolean; out Result: Boolean);
|
|
||||||
protected
|
|
||||||
procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED;
|
|
||||||
procedure NewLocationMsg(var aMessage : TMessage); message MINIBROWSER_NEWLOCATION;
|
|
||||||
procedure WMMove(var aMessage : TWMMove); message WM_MOVE;
|
|
||||||
procedure WMMoving(var aMessage : TMessage); message WM_MOVING;
|
|
||||||
procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP;
|
|
||||||
procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP;
|
|
||||||
end;
|
|
||||||
|
|
||||||
var
|
|
||||||
GeolocationFrm : TGeolocationFrm;
|
|
||||||
GlobalPosition : TCefGeoposition;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
uses
|
|
||||||
uCEFMiscFunctions;
|
|
||||||
|
|
||||||
procedure GeoLocationUpdate(const position: PCefGeoposition);
|
|
||||||
begin
|
|
||||||
GlobalPosition.latitude := position.latitude;
|
|
||||||
GlobalPosition.longitude := position.longitude;
|
|
||||||
GlobalPosition.altitude := position.altitude;
|
|
||||||
GlobalPosition.accuracy := position.accuracy;
|
|
||||||
GlobalPosition.altitude_accuracy := position.altitude_accuracy;
|
|
||||||
GlobalPosition.heading := position.heading;
|
|
||||||
GlobalPosition.speed := position.speed;
|
|
||||||
GlobalPosition.timestamp := position.timestamp;
|
|
||||||
GlobalPosition.error_code := position.error_code;
|
|
||||||
GlobalPosition.error_message := position.error_message;
|
|
||||||
|
|
||||||
PostMessage(GeolocationFrm.Handle, MINIBROWSER_NEWLOCATION, 0, 0);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser);
|
|
||||||
begin
|
|
||||||
PostMessage(Handle, CEF_AFTERCREATED, 0, 0);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.Chromium1BeforePopup(Sender: TObject;
|
|
||||||
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;
|
|
||||||
out Result: Boolean);
|
|
||||||
begin
|
|
||||||
// For simplicity, this demo blocks all popup windows and new tabs
|
|
||||||
Result := (targetDisposition in [WOD_NEW_FOREGROUND_TAB, WOD_NEW_BACKGROUND_TAB, WOD_NEW_POPUP, WOD_NEW_WINDOW]);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.FormCreate(Sender: TObject);
|
|
||||||
begin
|
|
||||||
CefGetGeolocation(GeoLocationUpdate);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.FormShow(Sender: TObject);
|
|
||||||
begin
|
|
||||||
// GlobalCEFApp.GlobalContextInitialized has to be TRUE before creating any browser
|
|
||||||
// If it's not initialized yet, we use a simple timer to create the browser later.
|
|
||||||
if not(Chromium1.CreateBrowser(CEFWindowParent1, '')) then Timer1.Enabled := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.GoBtnClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
Chromium1.LoadURL(Edit1.Text);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.BrowserCreatedMsg(var aMessage : TMessage);
|
|
||||||
begin
|
|
||||||
CEFWindowParent1.UpdateSize;
|
|
||||||
NavControlPnl.Enabled := True;
|
|
||||||
GoBtn.Click;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.NewLocationMsg(var aMessage : TMessage);
|
|
||||||
begin
|
|
||||||
StatusBar1.Panels[0].Text := 'lat : ' + floattostr(GlobalPosition.latitude);
|
|
||||||
StatusBar1.Panels[1].Text := 'lon : ' + floattostr(GlobalPosition.longitude);
|
|
||||||
StatusBar1.Panels[2].Text := 'alt : ' + floattostr(GlobalPosition.altitude);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.Timer1Timer(Sender: TObject);
|
|
||||||
begin
|
|
||||||
Timer1.Enabled := False;
|
|
||||||
if not(Chromium1.CreateBrowser(CEFWindowParent1, '')) and not(Chromium1.Initialized) then
|
|
||||||
Timer1.Enabled := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.WMMove(var aMessage : TWMMove);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if (Chromium1 <> nil) then Chromium1.NotifyMoveOrResizeStarted;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.WMMoving(var aMessage : TMessage);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if (Chromium1 <> nil) then Chromium1.NotifyMoveOrResizeStarted;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.WMEnterMenuLoop(var aMessage: TMessage);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if (aMessage.wParam = 0) and (GlobalCEFApp <> nil) then GlobalCEFApp.OsmodalLoop := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TGeolocationFrm.WMExitMenuLoop(var aMessage: TMessage);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if (aMessage.wParam = 0) and (GlobalCEFApp <> nil) then GlobalCEFApp.OsmodalLoop := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
@ -1,14 +0,0 @@
|
|||||||
del /s /q *.dcu
|
|
||||||
del /s /q *.exe
|
|
||||||
del /s /q *.res
|
|
||||||
del /s /q *.log
|
|
||||||
del /s /q *.dsk
|
|
||||||
del /s /q *.identcache
|
|
||||||
del /s /q *.stat
|
|
||||||
del /s /q *.local
|
|
||||||
del /s /q *.~*
|
|
||||||
rmdir Win32\Debug
|
|
||||||
rmdir Win32\Release
|
|
||||||
rmdir Win32
|
|
||||||
rmdir __history
|
|
||||||
rmdir __recovery
|
|
@ -1,72 +0,0 @@
|
|||||||
// ************************************************************************
|
|
||||||
// ***************************** 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 © 2018 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.
|
|
||||||
*
|
|
||||||
*)
|
|
||||||
|
|
||||||
program PostDataInspector;
|
|
||||||
|
|
||||||
{$I cef.inc}
|
|
||||||
|
|
||||||
uses
|
|
||||||
{$IFDEF DELPHI16_UP}
|
|
||||||
Vcl.Forms,
|
|
||||||
WinApi.Windows,
|
|
||||||
{$ELSE}
|
|
||||||
Forms,
|
|
||||||
Windows,
|
|
||||||
{$ENDIF }
|
|
||||||
uCEFApplication,
|
|
||||||
uPostDataInspector in 'uPostDataInspector.pas' {PostDataInspectorFrm};
|
|
||||||
|
|
||||||
{$R *.res}
|
|
||||||
|
|
||||||
{$SetPEFlags IMAGE_FILE_LARGE_ADDRESS_AWARE}
|
|
||||||
|
|
||||||
begin
|
|
||||||
GlobalCEFApp := TCefApplication.Create;
|
|
||||||
GlobalCEFApp.OnBeforeNavigation := GlobalCEFApp_OnBeforeNavigation;
|
|
||||||
|
|
||||||
if GlobalCEFApp.StartMainProcess then
|
|
||||||
begin
|
|
||||||
Application.Initialize;
|
|
||||||
{$IFDEF DELPHI11_UP}
|
|
||||||
Application.MainFormOnTaskbar := True;
|
|
||||||
{$ENDIF}
|
|
||||||
Application.CreateForm(TPostDataInspectorFrm, PostDataInspectorFrm);
|
|
||||||
Application.Run;
|
|
||||||
end;
|
|
||||||
|
|
||||||
GlobalCEFApp.Free;
|
|
||||||
end.
|
|
@ -1,567 +0,0 @@
|
|||||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<PropertyGroup>
|
|
||||||
<ProjectGuid>{8B6462D2-96EC-4314-9844-122457AB64FA}</ProjectGuid>
|
|
||||||
<ProjectVersion>18.2</ProjectVersion>
|
|
||||||
<FrameworkType>VCL</FrameworkType>
|
|
||||||
<MainSource>PostDataInspector.dpr</MainSource>
|
|
||||||
<Base>True</Base>
|
|
||||||
<Config Condition="'$(Config)'==''">Debug</Config>
|
|
||||||
<Platform Condition="'$(Platform)'==''">Win32</Platform>
|
|
||||||
<TargetedPlatforms>1</TargetedPlatforms>
|
|
||||||
<AppType>Application</AppType>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
|
|
||||||
<Base_Win32>true</Base_Win32>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
|
|
||||||
<Base_Win64>true</Base_Win64>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_1)'!=''">
|
|
||||||
<Cfg_1>true</Cfg_1>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
|
|
||||||
<Cfg_1_Win32>true</Cfg_1_Win32>
|
|
||||||
<CfgParent>Cfg_1</CfgParent>
|
|
||||||
<Cfg_1>true</Cfg_1>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_2)'!=''">
|
|
||||||
<Cfg_2>true</Cfg_2>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''">
|
|
||||||
<Cfg_2_Win32>true</Cfg_2_Win32>
|
|
||||||
<CfgParent>Cfg_2</CfgParent>
|
|
||||||
<Cfg_2>true</Cfg_2>
|
|
||||||
<Base>true</Base>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Base)'!=''">
|
|
||||||
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
|
|
||||||
<DCC_E>false</DCC_E>
|
|
||||||
<DCC_N>false</DCC_N>
|
|
||||||
<DCC_S>false</DCC_S>
|
|
||||||
<DCC_F>false</DCC_F>
|
|
||||||
<DCC_K>false</DCC_K>
|
|
||||||
<DCC_UsePackage>RESTComponents;emsclientfiredac;FireDAC;FireDACSqliteDriver;soaprtl;FireDACIBDriver;soapmidas;FireDACCommon;emsclient;RESTBackendComponents;soapserver;FireDACCommonDriver;CloudService;inet;$(DCC_UsePackage)</DCC_UsePackage>
|
|
||||||
<DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;$(DCC_Namespace)</DCC_Namespace>
|
|
||||||
<Icon_MainIcon>$(BDS)\bin\delphi_PROJECTICON.ico</Icon_MainIcon>
|
|
||||||
<UWP_DelphiLogo44>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_44.png</UWP_DelphiLogo44>
|
|
||||||
<UWP_DelphiLogo150>$(BDS)\bin\Artwork\Windows\UWP\delphi_UwpDefault_150.png</UWP_DelphiLogo150>
|
|
||||||
<VerInfo_Locale>3082</VerInfo_Locale>
|
|
||||||
<SanitizedProjectName>PostDataInspector</SanitizedProjectName>
|
|
||||||
<VerInfo_Keys>CompanyName=;FileDescription=$(MSBuildProjectName);FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProgramID=com.embarcadero.$(MSBuildProjectName);ProductName=$(MSBuildProjectName);ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Base_Win32)'!=''">
|
|
||||||
<DCC_UsePackage>DBXSqliteDriver;bindcompdbx;fmxase;DBXDb2Driver;DBXInterBaseDriver;vcl;DBXSybaseASEDriver;vclactnband;vclFireDAC;FireDACDb2Driver;GR32_DSGN_RSXE5;DataSnapFireDAC;svnui;tethering;dsnapcon;FireDACADSDriver;FireDACMSAccDriver;fmxFireDAC;DBXMSSQLDriver;vclimg;FireDACInfxDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;svn;FireDACPgDriver;DBXOracleDriver;inetdb;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;CEF4Delphi;DbxCommonDriver;IndyProtocols240;IndySystem240;fmx;DataSnapServer;xmlrtl;DataSnapNativeClient;fmxobj;fmxdae;vclwinx;rtl;FireDACDSDriver;DbxClientDriver;IndyCore240;DBXSybaseASADriver;CustomIPTransport;vcldsnap;dbexpress;FireDACDBXDriver;vclx;GR32_RSXE5;bindcomp;appanalytics;dsnap;DataSnapCommon;DBXInformixDriver;bindcompvcl;DataSnapConnectors;VCLRESTComponents;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;dsnapxml;FireDACMySQLDriver;dbrtl;inetdbxpress;DBXFirebirdDriver;DataSnapProviderClient;FireDACMongoDBDriver;FireDACCommonODBC;DataSnapClient;DataSnapServerMidas;$(DCC_UsePackage)</DCC_UsePackage>
|
|
||||||
<DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
|
|
||||||
<BT_BuildType>Debug</BT_BuildType>
|
|
||||||
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
|
|
||||||
<VerInfo_Locale>1033</VerInfo_Locale>
|
|
||||||
<Manifest_File>$(BDS)\bin\default_app.manifest</Manifest_File>
|
|
||||||
<DCC_ExeOutput>..\..\bin</DCC_ExeOutput>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Base_Win64)'!=''">
|
|
||||||
<DCC_UsePackage>DBXSqliteDriver;bindcompdbx;fmxase;DBXDb2Driver;DBXInterBaseDriver;vcl;DBXSybaseASEDriver;vclactnband;vclFireDAC;FireDACDb2Driver;DataSnapFireDAC;tethering;dsnapcon;FireDACADSDriver;FireDACMSAccDriver;fmxFireDAC;DBXMSSQLDriver;vclimg;FireDACInfxDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;vcltouch;vcldb;bindcompfmx;FireDACPgDriver;DBXOracleDriver;inetdb;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;DbxCommonDriver;IndyProtocols240;IndySystem240;fmx;DataSnapServer;xmlrtl;DataSnapNativeClient;fmxobj;fmxdae;vclwinx;rtl;FireDACDSDriver;DbxClientDriver;IndyCore240;DBXSybaseASADriver;CustomIPTransport;vcldsnap;dbexpress;FireDACDBXDriver;vclx;bindcomp;appanalytics;dsnap;DataSnapCommon;DBXInformixDriver;bindcompvcl;DataSnapConnectors;VCLRESTComponents;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;vclie;bindengine;DBXMySQLDriver;FireDACOracleDriver;dsnapxml;FireDACMySQLDriver;dbrtl;inetdbxpress;DBXFirebirdDriver;DataSnapProviderClient;FireDACMongoDBDriver;FireDACCommonODBC;DataSnapClient;DataSnapServerMidas;$(DCC_UsePackage)</DCC_UsePackage>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Cfg_1)'!=''">
|
|
||||||
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
|
|
||||||
<DCC_DebugDCUs>true</DCC_DebugDCUs>
|
|
||||||
<DCC_Optimize>false</DCC_Optimize>
|
|
||||||
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
|
|
||||||
<DCC_DebugInfoInExe>true</DCC_DebugInfoInExe>
|
|
||||||
<DCC_RemoteDebug>true</DCC_RemoteDebug>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
|
|
||||||
<DCC_RemoteDebug>false</DCC_RemoteDebug>
|
|
||||||
<AppEnableRuntimeThemes>true</AppEnableRuntimeThemes>
|
|
||||||
<AppEnableHighDPI>true</AppEnableHighDPI>
|
|
||||||
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
|
|
||||||
<VerInfo_Locale>1033</VerInfo_Locale>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Cfg_2)'!=''">
|
|
||||||
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
|
|
||||||
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
|
|
||||||
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
|
|
||||||
<DCC_DebugInformation>0</DCC_DebugInformation>
|
|
||||||
</PropertyGroup>
|
|
||||||
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
|
|
||||||
<AppEnableRuntimeThemes>true</AppEnableRuntimeThemes>
|
|
||||||
<AppEnableHighDPI>true</AppEnableHighDPI>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemGroup>
|
|
||||||
<DelphiCompile Include="$(MainSource)">
|
|
||||||
<MainSource>MainSource</MainSource>
|
|
||||||
</DelphiCompile>
|
|
||||||
<DCCReference Include="uPostDataInspector.pas">
|
|
||||||
<Form>PostDataInspectorFrm</Form>
|
|
||||||
</DCCReference>
|
|
||||||
<BuildConfiguration Include="Release">
|
|
||||||
<Key>Cfg_2</Key>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
</BuildConfiguration>
|
|
||||||
<BuildConfiguration Include="Base">
|
|
||||||
<Key>Base</Key>
|
|
||||||
</BuildConfiguration>
|
|
||||||
<BuildConfiguration Include="Debug">
|
|
||||||
<Key>Cfg_1</Key>
|
|
||||||
<CfgParent>Base</CfgParent>
|
|
||||||
</BuildConfiguration>
|
|
||||||
</ItemGroup>
|
|
||||||
<ProjectExtensions>
|
|
||||||
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
|
|
||||||
<Borland.ProjectType>Application</Borland.ProjectType>
|
|
||||||
<BorlandProject>
|
|
||||||
<Delphi.Personality>
|
|
||||||
<Source>
|
|
||||||
<Source Name="MainSource">PostDataInspector.dpr</Source>
|
|
||||||
</Source>
|
|
||||||
<Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDSBIN)\dclIPIndyImpl250.bpl">IP Abstraction Indy Implementation Design Time</Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDSBIN)\dcloffice2k250.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
|
|
||||||
<Excluded_Packages Name="$(BDSBIN)\dclofficexp250.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
|
|
||||||
</Excluded_Packages>
|
|
||||||
</Delphi.Personality>
|
|
||||||
<Deployment Version="3">
|
|
||||||
<DeployFile LocalName="Win32\Debug\PostDataInspector.exe" Configuration="Debug" Class="ProjectOutput">
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<RemoteName>PostDataInspector.exe</RemoteName>
|
|
||||||
<Overwrite>true</Overwrite>
|
|
||||||
</Platform>
|
|
||||||
</DeployFile>
|
|
||||||
<DeployClass Name="AdditionalDebugSymbols">
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidClassesDexFile">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>classes</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidGDBServer">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidLibnativeArmeabiFile">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>library\lib\armeabi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidLibnativeMipsFile">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>library\lib\mips</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidServiceOutput">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidSplashImageDef">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="AndroidSplashStyles">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\values</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_DefaultAppIcon">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_LauncherIcon144">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_LauncherIcon36">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-ldpi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_LauncherIcon48">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-mdpi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_LauncherIcon72">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-hdpi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_LauncherIcon96">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-xhdpi</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_SplashImage426">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-small</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_SplashImage470">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-normal</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_SplashImage640">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-large</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="Android_SplashImage960">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>res\drawable-xlarge</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="DebugSymbols">
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="DependencyFramework">
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.framework</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="DependencyModule">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
<Extensions>.dll;.bpl</Extensions>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Required="true" Name="DependencyPackage">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
<Extensions>.dylib</Extensions>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
<Extensions>.bpl</Extensions>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="File">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\Resources\StartUp\</RemoteDir>
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPad_Launch1024">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPad_Launch1536">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPad_Launch2048">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPad_Launch768">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPhone_Launch320">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPhone_Launch640">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="iPhone_Launch640x1136">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectAndroidManifest">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectiOSDeviceDebug">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectiOSDeviceResourceRules">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectiOSEntitlements">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<RemoteDir>..\</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<RemoteDir>..\</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectiOSInfoPList">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectiOSResource">
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectOSXEntitlements">
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>..\</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectOSXInfoPList">
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectOSXResource">
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\Resources</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Required="true" Name="ProjectOutput">
|
|
||||||
<Platform Name="Android">
|
|
||||||
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSDevice64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="iOSSimulator">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Linux64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="OSX32">
|
|
||||||
<RemoteDir>Contents\MacOS</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>0</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="ProjectUWPManifest">
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win64">
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="UWP_DelphiLogo150">
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<RemoteDir>Assets</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win64">
|
|
||||||
<RemoteDir>Assets</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<DeployClass Name="UWP_DelphiLogo44">
|
|
||||||
<Platform Name="Win32">
|
|
||||||
<RemoteDir>Assets</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
<Platform Name="Win64">
|
|
||||||
<RemoteDir>Assets</RemoteDir>
|
|
||||||
<Operation>1</Operation>
|
|
||||||
</Platform>
|
|
||||||
</DeployClass>
|
|
||||||
<ProjectRoot Platform="iOSDevice64" Name="$(PROJECTNAME).app"/>
|
|
||||||
<ProjectRoot Platform="Win64" Name="$(PROJECTNAME)"/>
|
|
||||||
<ProjectRoot Platform="iOSDevice32" Name="$(PROJECTNAME).app"/>
|
|
||||||
<ProjectRoot Platform="Linux64" Name="$(PROJECTNAME)"/>
|
|
||||||
<ProjectRoot Platform="Win32" Name="$(PROJECTNAME)"/>
|
|
||||||
<ProjectRoot Platform="OSX32" Name="$(PROJECTNAME).app"/>
|
|
||||||
<ProjectRoot Platform="Android" Name="$(PROJECTNAME)"/>
|
|
||||||
<ProjectRoot Platform="iOSSimulator" Name="$(PROJECTNAME).app"/>
|
|
||||||
</Deployment>
|
|
||||||
<Platforms>
|
|
||||||
<Platform value="Win32">True</Platform>
|
|
||||||
<Platform value="Win64">False</Platform>
|
|
||||||
</Platforms>
|
|
||||||
</BorlandProject>
|
|
||||||
<ProjectFileVersion>12</ProjectFileVersion>
|
|
||||||
</ProjectExtensions>
|
|
||||||
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
|
|
||||||
<Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
|
|
||||||
<Import Project="$(MSBuildProjectName).deployproj" Condition="Exists('$(MSBuildProjectName).deployproj')"/>
|
|
||||||
</Project>
|
|
@ -1,384 +0,0 @@
|
|||||||
// ************************************************************************
|
|
||||||
// ***************************** 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.
|
|
||||||
*
|
|
||||||
*)
|
|
||||||
|
|
||||||
// The complete list of compiler versions is here :
|
|
||||||
// http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Compiler_Versions
|
|
||||||
|
|
||||||
{$DEFINE DELPHI_VERSION_UNKNOW}
|
|
||||||
|
|
||||||
{$IFDEF FPC}
|
|
||||||
{$DEFINE CEF_MULTI_THREADED_MESSAGE_LOOP}
|
|
||||||
{$DEFINE SUPPORTS_INLINE}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 5
|
|
||||||
{$IFDEF VER130}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 6
|
|
||||||
{$IFDEF VER140}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 7
|
|
||||||
{$IFDEF VER150}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 8
|
|
||||||
{$IFDEF VER160}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 2005
|
|
||||||
{$IFDEF VER170}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
{$IFDEF VER180}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
// Delphi 2007
|
|
||||||
{$IFDEF VER185}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
// Delphi 2006
|
|
||||||
{$ELSE}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi 2009
|
|
||||||
{$IFDEF VER200}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
//Delphi 2010
|
|
||||||
{$IFDEF VER210}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE
|
|
||||||
{$IFDEF VER220}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE2
|
|
||||||
{$IFDEF VER230}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE3
|
|
||||||
{$IFDEF VER240}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE4
|
|
||||||
{$IFDEF VER250}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE5
|
|
||||||
{$IFDEF VER260}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE6
|
|
||||||
{$IFDEF VER270}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE7
|
|
||||||
{$IFDEF VER280}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Delphi XE8
|
|
||||||
{$IFDEF VER290}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$DEFINE DELPHI22_UP}
|
|
||||||
{$ENDIF VER290}
|
|
||||||
|
|
||||||
// Rad Studio 10 - Delphi Seattle
|
|
||||||
{$IFDEF VER300}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$DEFINE DELPHI22_UP}
|
|
||||||
{$DEFINE DELPHI23_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Rad Studio 10.1 - Delphi Berlin
|
|
||||||
{$IFDEF VER310}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$DEFINE DELPHI22_UP}
|
|
||||||
{$DEFINE DELPHI23_UP}
|
|
||||||
{$DEFINE DELPHI24_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
// Rad Studio 10.2 - Delphi Tokyo
|
|
||||||
{$IFDEF VER320}
|
|
||||||
{$UNDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$DEFINE DELPHI22_UP}
|
|
||||||
{$DEFINE DELPHI23_UP}
|
|
||||||
{$DEFINE DELPHI24_UP}
|
|
||||||
{$DEFINE DELPHI25_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
|
|
||||||
{$IFDEF DELPHI_VERSION_UNKNOW}
|
|
||||||
{$DEFINE DELPHI5_UP}
|
|
||||||
{$DEFINE DELPHI6_UP}
|
|
||||||
{$DEFINE DELPHI7_UP}
|
|
||||||
{$DEFINE DELPHI8_UP}
|
|
||||||
{$DEFINE DELPHI9_UP}
|
|
||||||
{$DEFINE DELPHI10_UP}
|
|
||||||
{$DEFINE DELPHI11_UP}
|
|
||||||
{$DEFINE DELPHI12_UP}
|
|
||||||
{$DEFINE DELPHI14_UP}
|
|
||||||
{$DEFINE DELPHI15_UP}
|
|
||||||
{$DEFINE DELPHI16_UP}
|
|
||||||
{$DEFINE DELPHI17_UP}
|
|
||||||
{$DEFINE DELPHI18_UP}
|
|
||||||
{$DEFINE DELPHI19_UP}
|
|
||||||
{$DEFINE DELPHI20_UP}
|
|
||||||
{$DEFINE DELPHI21_UP}
|
|
||||||
{$DEFINE DELPHI22_UP}
|
|
||||||
{$DEFINE DELPHI23_UP}
|
|
||||||
{$DEFINE DELPHI24_UP}
|
|
||||||
{$DEFINE DELPHI25_UP}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
{$IFDEF DELPHI9_UP}
|
|
||||||
{$DEFINE SUPPORTS_INLINE}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
@ -1,89 +0,0 @@
|
|||||||
object PostDataInspectorFrm: TPostDataInspectorFrm
|
|
||||||
Left = 0
|
|
||||||
Top = 0
|
|
||||||
Caption = 'PostData inspector'
|
|
||||||
ClientHeight = 715
|
|
||||||
ClientWidth = 1004
|
|
||||||
Color = clBtnFace
|
|
||||||
Font.Charset = DEFAULT_CHARSET
|
|
||||||
Font.Color = clWindowText
|
|
||||||
Font.Height = -11
|
|
||||||
Font.Name = 'Tahoma'
|
|
||||||
Font.Style = []
|
|
||||||
OldCreateOrder = False
|
|
||||||
Position = poScreenCenter
|
|
||||||
OnShow = FormShow
|
|
||||||
PixelsPerInch = 96
|
|
||||||
TextHeight = 13
|
|
||||||
object StatusBar1: TStatusBar
|
|
||||||
Left = 0
|
|
||||||
Top = 696
|
|
||||||
Width = 1004
|
|
||||||
Height = 19
|
|
||||||
Panels = <
|
|
||||||
item
|
|
||||||
Width = 50
|
|
||||||
end>
|
|
||||||
end
|
|
||||||
object CEFWindowParent1: TCEFWindowParent
|
|
||||||
Left = 0
|
|
||||||
Top = 30
|
|
||||||
Width = 1004
|
|
||||||
Height = 666
|
|
||||||
Align = alClient
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
object NavControlPnl: TPanel
|
|
||||||
Left = 0
|
|
||||||
Top = 0
|
|
||||||
Width = 1004
|
|
||||||
Height = 30
|
|
||||||
Align = alTop
|
|
||||||
BevelOuter = bvNone
|
|
||||||
Enabled = False
|
|
||||||
Padding.Left = 5
|
|
||||||
Padding.Top = 5
|
|
||||||
Padding.Right = 5
|
|
||||||
Padding.Bottom = 5
|
|
||||||
ShowCaption = False
|
|
||||||
TabOrder = 2
|
|
||||||
object Edit1: TEdit
|
|
||||||
Left = 5
|
|
||||||
Top = 5
|
|
||||||
Width = 963
|
|
||||||
Height = 20
|
|
||||||
Margins.Right = 5
|
|
||||||
Align = alClient
|
|
||||||
TabOrder = 0
|
|
||||||
Text =
|
|
||||||
'https://www.w3schools.com/php/showphp.asp?filename=demo_form_pos' +
|
|
||||||
't'
|
|
||||||
ExplicitHeight = 21
|
|
||||||
end
|
|
||||||
object GoBtn: TButton
|
|
||||||
Left = 968
|
|
||||||
Top = 5
|
|
||||||
Width = 31
|
|
||||||
Height = 20
|
|
||||||
Margins.Left = 5
|
|
||||||
Align = alRight
|
|
||||||
Caption = 'Go'
|
|
||||||
TabOrder = 1
|
|
||||||
OnClick = GoBtnClick
|
|
||||||
end
|
|
||||||
end
|
|
||||||
object Chromium1: TChromium
|
|
||||||
OnProcessMessageReceived = Chromium1ProcessMessageReceived
|
|
||||||
OnBeforePopup = Chromium1BeforePopup
|
|
||||||
OnAfterCreated = Chromium1AfterCreated
|
|
||||||
Left = 32
|
|
||||||
Top = 224
|
|
||||||
end
|
|
||||||
object Timer1: TTimer
|
|
||||||
Enabled = False
|
|
||||||
Interval = 300
|
|
||||||
OnTimer = Timer1Timer
|
|
||||||
Left = 32
|
|
||||||
Top = 288
|
|
||||||
end
|
|
||||||
end
|
|
@ -1,237 +0,0 @@
|
|||||||
// ************************************************************************
|
|
||||||
// ***************************** 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 © 2018 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 uPostDataInspector;
|
|
||||||
|
|
||||||
{$I cef.inc}
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
{$IFDEF DELPHI16_UP}
|
|
||||||
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
|
|
||||||
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.ComCtrls,
|
|
||||||
{$ELSE}
|
|
||||||
Windows, Messages, SysUtils, Variants, Classes, Graphics,
|
|
||||||
Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls,
|
|
||||||
{$ENDIF}
|
|
||||||
uCEFChromium, uCEFWindowParent, uCEFInterfaces, uCEFApplication, uCEFTypes, uCEFConstants;
|
|
||||||
|
|
||||||
const
|
|
||||||
POSTDATA_MSGNAME = 'postdatainfo';
|
|
||||||
|
|
||||||
type
|
|
||||||
TPostDataInspectorFrm = class(TForm)
|
|
||||||
StatusBar1: TStatusBar;
|
|
||||||
CEFWindowParent1: TCEFWindowParent;
|
|
||||||
Chromium1: TChromium;
|
|
||||||
NavControlPnl: TPanel;
|
|
||||||
Edit1: TEdit;
|
|
||||||
GoBtn: TButton;
|
|
||||||
Timer1: TTimer;
|
|
||||||
procedure GoBtnClick(Sender: TObject);
|
|
||||||
procedure FormShow(Sender: TObject);
|
|
||||||
procedure Chromium1ProcessMessageReceived(Sender: TObject;
|
|
||||||
const browser: ICefBrowser; sourceProcess: TCefProcessId;
|
|
||||||
const message: ICefProcessMessage; out Result: Boolean);
|
|
||||||
procedure Chromium1AfterCreated(Sender: TObject;
|
|
||||||
const browser: ICefBrowser);
|
|
||||||
procedure Timer1Timer(Sender: TObject);
|
|
||||||
procedure Chromium1BeforePopup(Sender: TObject;
|
|
||||||
const browser: ICefBrowser; const frame: ICefFrame; const targetUrl,
|
|
||||||
targetFrameName: ustring;
|
|
||||||
targetDisposition: TCefWindowOpenDisposition; userGesture: Boolean;
|
|
||||||
var popupFeatures: TCefPopupFeatures; var windowInfo: TCefWindowInfo;
|
|
||||||
var client: ICefClient; var settings: TCefBrowserSettings;
|
|
||||||
var noJavascriptAccess: Boolean; out Result: Boolean);
|
|
||||||
protected
|
|
||||||
|
|
||||||
procedure BrowserCreatedMsg(var aMessage : TMessage); message CEF_AFTERCREATED;
|
|
||||||
procedure WMMove(var aMessage : TWMMove); message WM_MOVE;
|
|
||||||
procedure WMMoving(var aMessage : TMessage); message WM_MOVING;
|
|
||||||
procedure WMEnterMenuLoop(var aMessage: TMessage); message WM_ENTERMENULOOP;
|
|
||||||
procedure WMExitMenuLoop(var aMessage: TMessage); message WM_EXITMENULOOP;
|
|
||||||
public
|
|
||||||
{ Public declarations }
|
|
||||||
end;
|
|
||||||
|
|
||||||
var
|
|
||||||
PostDataInspectorFrm: TPostDataInspectorFrm;
|
|
||||||
|
|
||||||
procedure GlobalCEFApp_OnBeforeNavigation(const browser : ICefBrowser;
|
|
||||||
const frame : ICefFrame;
|
|
||||||
const request : ICefRequest;
|
|
||||||
navigationType : TCefNavigationType;
|
|
||||||
isRedirect : Boolean;
|
|
||||||
var aStopNavigation : boolean);
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
{$R *.dfm}
|
|
||||||
|
|
||||||
uses
|
|
||||||
uCEFRenderProcessHandler, uCEFProcessMessage;
|
|
||||||
|
|
||||||
// This demo shows an alternative way to inspect the POST data in read only mode.
|
|
||||||
// This data is not always available in the request of TChromium.OnBeforeBrowse
|
|
||||||
// so this demo uses the TCefCustomRenderProcessHandler.OnBeforeNavigationEvent event
|
|
||||||
// and sends the results in a process message.
|
|
||||||
// That message is received in the Chromium1ProcessMessageReceived function.
|
|
||||||
|
|
||||||
// If you need more control over the POST data register an scheme.
|
|
||||||
// See the SchemeRegistrationBrowser demo.
|
|
||||||
|
|
||||||
procedure GlobalCEFApp_OnBeforeNavigation(const browser : ICefBrowser;
|
|
||||||
const frame : ICefFrame;
|
|
||||||
const request : ICefRequest;
|
|
||||||
navigationType : TCefNavigationType;
|
|
||||||
isRedirect : Boolean;
|
|
||||||
var aStopNavigation : boolean);
|
|
||||||
var
|
|
||||||
msg: ICefProcessMessage;
|
|
||||||
TempString : string;
|
|
||||||
begin
|
|
||||||
aStopNavigation := False;
|
|
||||||
|
|
||||||
if (request = nil) then
|
|
||||||
TempString := 'no request'
|
|
||||||
else
|
|
||||||
if (request.postdata = nil) then
|
|
||||||
TempString := 'no postdata'
|
|
||||||
else
|
|
||||||
TempString := 'postdata elements : ' + inttostr(request.postdata.GetCount);
|
|
||||||
|
|
||||||
msg := TCefProcessMessageRef.New(POSTDATA_MSGNAME);
|
|
||||||
msg.ArgumentList.SetString(0, TempString);
|
|
||||||
browser.SendProcessMessage(PID_BROWSER, msg);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPostDataInspectorFrm.Chromium1AfterCreated(Sender: TObject; const browser: ICefBrowser);
|
|
||||||
begin
|
|
||||||
PostMessage(Handle, CEF_AFTERCREATED, 0, 0);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPostDataInspectorFrm.Chromium1BeforePopup(Sender: TObject;
|
|
||||||
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;
|
|
||||||
out Result: Boolean);
|
|
||||||
begin
|
|
||||||
// For simplicity, this demo blocks all popup windows and new tabs
|
|
||||||
Result := (targetDisposition in [WOD_NEW_FOREGROUND_TAB, WOD_NEW_BACKGROUND_TAB, WOD_NEW_POPUP, WOD_NEW_WINDOW]);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPostDataInspectorFrm.Chromium1ProcessMessageReceived(
|
|
||||||
Sender: TObject; const browser: ICefBrowser;
|
|
||||||
sourceProcess: TCefProcessId; const message: ICefProcessMessage;
|
|
||||||
out Result: Boolean);
|
|
||||||
begin
|
|
||||||
Result := False;
|
|
||||||
|
|
||||||
if (message = nil) or (message.ArgumentList = nil) then exit;
|
|
||||||
|
|
||||||
// Many of these events are received in different threads and the VCL
|
|
||||||
// doesn't like to create and destroy components in different threads.
|
|
||||||
|
|
||||||
// It's safer to store the results and send a message to the main thread to show them.
|
|
||||||
|
|
||||||
// The message names is also used in the ProcessHandler_OnBeforeNavigationEvent function of the DPR file.
|
|
||||||
|
|
||||||
if (message.Name = POSTDATA_MSGNAME) then
|
|
||||||
begin
|
|
||||||
StatusBar1.Panels[0].Text := message.ArgumentList.GetString(0); // this doesn't create/destroy components
|
|
||||||
Result := True;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPostDataInspectorFrm.FormShow(Sender: TObject);
|
|
||||||
begin
|
|
||||||
// GlobalCEFApp.GlobalContextInitialized has to be TRUE before creating any browser
|
|
||||||
// If it's not initialized yet, we use a simple timer to create the browser later.
|
|
||||||
if not(Chromium1.CreateBrowser(CEFWindowParent1, '')) then Timer1.Enabled := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPostDataInspectorFrm.GoBtnClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
Chromium1.LoadURL(Edit1.Text);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPostDataInspectorFrm.Timer1Timer(Sender: TObject);
|
|
||||||
begin
|
|
||||||
Timer1.Enabled := False;
|
|
||||||
if not(Chromium1.CreateBrowser(CEFWindowParent1, '')) and not(Chromium1.Initialized) then
|
|
||||||
Timer1.Enabled := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPostDataInspectorFrm.WMMove(var aMessage : TWMMove);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if (Chromium1 <> nil) then Chromium1.NotifyMoveOrResizeStarted;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPostDataInspectorFrm.WMMoving(var aMessage : TMessage);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if (Chromium1 <> nil) then Chromium1.NotifyMoveOrResizeStarted;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPostDataInspectorFrm.WMEnterMenuLoop(var aMessage: TMessage);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if (aMessage.wParam = 0) and (GlobalCEFApp <> nil) then GlobalCEFApp.OsmodalLoop := True;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPostDataInspectorFrm.WMExitMenuLoop(var aMessage: TMessage);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
|
|
||||||
if (aMessage.wParam = 0) and (GlobalCEFApp <> nil) then GlobalCEFApp.OsmodalLoop := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TPostDataInspectorFrm.BrowserCreatedMsg(var aMessage : TMessage);
|
|
||||||
begin
|
|
||||||
CEFWindowParent1.UpdateSize;
|
|
||||||
NavControlPnl.Enabled := True;
|
|
||||||
GoBtn.Click;
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
@ -22,6 +22,7 @@ object Form1: TForm1
|
|||||||
Height = 594
|
Height = 594
|
||||||
Align = alClient
|
Align = alClient
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
|
ShowHint = False
|
||||||
OnAfterCreated = ChromiumWindow1AfterCreated
|
OnAfterCreated = ChromiumWindow1AfterCreated
|
||||||
end
|
end
|
||||||
object AddressPnl: TPanel
|
object AddressPnl: TPanel
|
||||||
|
@ -27,8 +27,6 @@ object ChildForm: TChildForm
|
|||||||
Height = 394
|
Height = 394
|
||||||
Align = alClient
|
Align = alClient
|
||||||
TabOrder = 0
|
TabOrder = 0
|
||||||
ExplicitWidth = 400
|
|
||||||
ExplicitHeight = 300
|
|
||||||
end
|
end
|
||||||
object Chromium1: TChromium
|
object Chromium1: TChromium
|
||||||
OnPreKeyEvent = Chromium1PreKeyEvent
|
OnPreKeyEvent = Chromium1PreKeyEvent
|
||||||
|
@ -75,7 +75,6 @@ contains
|
|||||||
uCEFKeyboardHandler in '..\source\uCEFKeyboardHandler.pas',
|
uCEFKeyboardHandler in '..\source\uCEFKeyboardHandler.pas',
|
||||||
uCEFDisplayHandler in '..\source\uCEFDisplayHandler.pas',
|
uCEFDisplayHandler in '..\source\uCEFDisplayHandler.pas',
|
||||||
uCEFDownloadHandler in '..\source\uCEFDownloadHandler.pas',
|
uCEFDownloadHandler in '..\source\uCEFDownloadHandler.pas',
|
||||||
uCEFGeolocationHandler in '..\source\uCEFGeolocationHandler.pas',
|
|
||||||
uCEFJsDialogHandler in '..\source\uCEFJsDialogHandler.pas',
|
uCEFJsDialogHandler in '..\source\uCEFJsDialogHandler.pas',
|
||||||
uCEFLifeSpanHandler in '..\source\uCEFLifeSpanHandler.pas',
|
uCEFLifeSpanHandler in '..\source\uCEFLifeSpanHandler.pas',
|
||||||
uCEFRequestHandler in '..\source\uCEFRequestHandler.pas',
|
uCEFRequestHandler in '..\source\uCEFRequestHandler.pas',
|
||||||
@ -112,7 +111,6 @@ contains
|
|||||||
uCEFDownloadItemCallback in '..\source\uCEFDownloadItemCallback.pas',
|
uCEFDownloadItemCallback in '..\source\uCEFDownloadItemCallback.pas',
|
||||||
uCEFAuthCallback in '..\source\uCEFAuthCallback.pas',
|
uCEFAuthCallback in '..\source\uCEFAuthCallback.pas',
|
||||||
uCEFJsDialogCallback in '..\source\uCEFJsDialogCallback.pas',
|
uCEFJsDialogCallback in '..\source\uCEFJsDialogCallback.pas',
|
||||||
uCEFGeolocationCallback in '..\source\uCEFGeolocationCallback.pas',
|
|
||||||
uCEFContextMenuParams in '..\source\uCEFContextMenuParams.pas',
|
uCEFContextMenuParams in '..\source\uCEFContextMenuParams.pas',
|
||||||
uCEFMenuModel in '..\source\uCEFMenuModel.pas',
|
uCEFMenuModel in '..\source\uCEFMenuModel.pas',
|
||||||
uCEFBrowserProcessHandler in '..\source\uCEFBrowserProcessHandler.pas',
|
uCEFBrowserProcessHandler in '..\source\uCEFBrowserProcessHandler.pas',
|
||||||
@ -122,7 +120,6 @@ contains
|
|||||||
uCEFWebPluginInfoVisitor in '..\source\uCEFWebPluginInfoVisitor.pas',
|
uCEFWebPluginInfoVisitor in '..\source\uCEFWebPluginInfoVisitor.pas',
|
||||||
uCEFWebPluginUnstableCallback in '..\source\uCEFWebPluginUnstableCallback.pas',
|
uCEFWebPluginUnstableCallback in '..\source\uCEFWebPluginUnstableCallback.pas',
|
||||||
uCEFEndTracingCallback in '..\source\uCEFEndTracingCallback.pas',
|
uCEFEndTracingCallback in '..\source\uCEFEndTracingCallback.pas',
|
||||||
uCEFGetGeolocationCallback in '..\source\uCEFGetGeolocationCallback.pas',
|
|
||||||
uCEFFileDialogCallback in '..\source\uCEFFileDialogCallback.pas',
|
uCEFFileDialogCallback in '..\source\uCEFFileDialogCallback.pas',
|
||||||
uCEFDragData in '..\source\uCEFDragData.pas',
|
uCEFDragData in '..\source\uCEFDragData.pas',
|
||||||
uCEFResolveCallback in '..\source\uCEFResolveCallback.pas',
|
uCEFResolveCallback in '..\source\uCEFResolveCallback.pas',
|
||||||
|
@ -166,7 +166,6 @@
|
|||||||
<DCCReference Include="..\source\uCEFKeyboardHandler.pas"/>
|
<DCCReference Include="..\source\uCEFKeyboardHandler.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFDisplayHandler.pas"/>
|
<DCCReference Include="..\source\uCEFDisplayHandler.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFDownloadHandler.pas"/>
|
<DCCReference Include="..\source\uCEFDownloadHandler.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFGeolocationHandler.pas"/>
|
|
||||||
<DCCReference Include="..\source\uCEFJsDialogHandler.pas"/>
|
<DCCReference Include="..\source\uCEFJsDialogHandler.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFLifeSpanHandler.pas"/>
|
<DCCReference Include="..\source\uCEFLifeSpanHandler.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFRequestHandler.pas"/>
|
<DCCReference Include="..\source\uCEFRequestHandler.pas"/>
|
||||||
@ -203,7 +202,6 @@
|
|||||||
<DCCReference Include="..\source\uCEFDownloadItemCallback.pas"/>
|
<DCCReference Include="..\source\uCEFDownloadItemCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFAuthCallback.pas"/>
|
<DCCReference Include="..\source\uCEFAuthCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFJsDialogCallback.pas"/>
|
<DCCReference Include="..\source\uCEFJsDialogCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFGeolocationCallback.pas"/>
|
|
||||||
<DCCReference Include="..\source\uCEFContextMenuParams.pas"/>
|
<DCCReference Include="..\source\uCEFContextMenuParams.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFMenuModel.pas"/>
|
<DCCReference Include="..\source\uCEFMenuModel.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFBrowserProcessHandler.pas"/>
|
<DCCReference Include="..\source\uCEFBrowserProcessHandler.pas"/>
|
||||||
@ -213,7 +211,6 @@
|
|||||||
<DCCReference Include="..\source\uCEFWebPluginInfoVisitor.pas"/>
|
<DCCReference Include="..\source\uCEFWebPluginInfoVisitor.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFWebPluginUnstableCallback.pas"/>
|
<DCCReference Include="..\source\uCEFWebPluginUnstableCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFEndTracingCallback.pas"/>
|
<DCCReference Include="..\source\uCEFEndTracingCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFGetGeolocationCallback.pas"/>
|
|
||||||
<DCCReference Include="..\source\uCEFFileDialogCallback.pas"/>
|
<DCCReference Include="..\source\uCEFFileDialogCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFDragData.pas"/>
|
<DCCReference Include="..\source\uCEFDragData.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFResolveCallback.pas"/>
|
<DCCReference Include="..\source\uCEFResolveCallback.pas"/>
|
||||||
|
@ -73,7 +73,6 @@ contains
|
|||||||
uCEFKeyboardHandler in '..\source\uCEFKeyboardHandler.pas',
|
uCEFKeyboardHandler in '..\source\uCEFKeyboardHandler.pas',
|
||||||
uCEFDisplayHandler in '..\source\uCEFDisplayHandler.pas',
|
uCEFDisplayHandler in '..\source\uCEFDisplayHandler.pas',
|
||||||
uCEFDownloadHandler in '..\source\uCEFDownloadHandler.pas',
|
uCEFDownloadHandler in '..\source\uCEFDownloadHandler.pas',
|
||||||
uCEFGeolocationHandler in '..\source\uCEFGeolocationHandler.pas',
|
|
||||||
uCEFJsDialogHandler in '..\source\uCEFJsDialogHandler.pas',
|
uCEFJsDialogHandler in '..\source\uCEFJsDialogHandler.pas',
|
||||||
uCEFLifeSpanHandler in '..\source\uCEFLifeSpanHandler.pas',
|
uCEFLifeSpanHandler in '..\source\uCEFLifeSpanHandler.pas',
|
||||||
uCEFRequestHandler in '..\source\uCEFRequestHandler.pas',
|
uCEFRequestHandler in '..\source\uCEFRequestHandler.pas',
|
||||||
@ -110,7 +109,6 @@ contains
|
|||||||
uCEFDownloadItemCallback in '..\source\uCEFDownloadItemCallback.pas',
|
uCEFDownloadItemCallback in '..\source\uCEFDownloadItemCallback.pas',
|
||||||
uCEFAuthCallback in '..\source\uCEFAuthCallback.pas',
|
uCEFAuthCallback in '..\source\uCEFAuthCallback.pas',
|
||||||
uCEFJsDialogCallback in '..\source\uCEFJsDialogCallback.pas',
|
uCEFJsDialogCallback in '..\source\uCEFJsDialogCallback.pas',
|
||||||
uCEFGeolocationCallback in '..\source\uCEFGeolocationCallback.pas',
|
|
||||||
uCEFContextMenuParams in '..\source\uCEFContextMenuParams.pas',
|
uCEFContextMenuParams in '..\source\uCEFContextMenuParams.pas',
|
||||||
uCEFMenuModel in '..\source\uCEFMenuModel.pas',
|
uCEFMenuModel in '..\source\uCEFMenuModel.pas',
|
||||||
uCEFBrowserProcessHandler in '..\source\uCEFBrowserProcessHandler.pas',
|
uCEFBrowserProcessHandler in '..\source\uCEFBrowserProcessHandler.pas',
|
||||||
@ -120,7 +118,6 @@ contains
|
|||||||
uCEFWebPluginInfoVisitor in '..\source\uCEFWebPluginInfoVisitor.pas',
|
uCEFWebPluginInfoVisitor in '..\source\uCEFWebPluginInfoVisitor.pas',
|
||||||
uCEFWebPluginUnstableCallback in '..\source\uCEFWebPluginUnstableCallback.pas',
|
uCEFWebPluginUnstableCallback in '..\source\uCEFWebPluginUnstableCallback.pas',
|
||||||
uCEFEndTracingCallback in '..\source\uCEFEndTracingCallback.pas',
|
uCEFEndTracingCallback in '..\source\uCEFEndTracingCallback.pas',
|
||||||
uCEFGetGeolocationCallback in '..\source\uCEFGetGeolocationCallback.pas',
|
|
||||||
uCEFFileDialogCallback in '..\source\uCEFFileDialogCallback.pas',
|
uCEFFileDialogCallback in '..\source\uCEFFileDialogCallback.pas',
|
||||||
uCEFDragData in '..\source\uCEFDragData.pas',
|
uCEFDragData in '..\source\uCEFDragData.pas',
|
||||||
uCEFResolveCallback in '..\source\uCEFResolveCallback.pas',
|
uCEFResolveCallback in '..\source\uCEFResolveCallback.pas',
|
||||||
|
@ -76,7 +76,6 @@ contains
|
|||||||
uCEFKeyboardHandler in '..\source\uCEFKeyboardHandler.pas',
|
uCEFKeyboardHandler in '..\source\uCEFKeyboardHandler.pas',
|
||||||
uCEFDisplayHandler in '..\source\uCEFDisplayHandler.pas',
|
uCEFDisplayHandler in '..\source\uCEFDisplayHandler.pas',
|
||||||
uCEFDownloadHandler in '..\source\uCEFDownloadHandler.pas',
|
uCEFDownloadHandler in '..\source\uCEFDownloadHandler.pas',
|
||||||
uCEFGeolocationHandler in '..\source\uCEFGeolocationHandler.pas',
|
|
||||||
uCEFJsDialogHandler in '..\source\uCEFJsDialogHandler.pas',
|
uCEFJsDialogHandler in '..\source\uCEFJsDialogHandler.pas',
|
||||||
uCEFLifeSpanHandler in '..\source\uCEFLifeSpanHandler.pas',
|
uCEFLifeSpanHandler in '..\source\uCEFLifeSpanHandler.pas',
|
||||||
uCEFRequestHandler in '..\source\uCEFRequestHandler.pas',
|
uCEFRequestHandler in '..\source\uCEFRequestHandler.pas',
|
||||||
@ -113,7 +112,6 @@ contains
|
|||||||
uCEFDownloadItemCallback in '..\source\uCEFDownloadItemCallback.pas',
|
uCEFDownloadItemCallback in '..\source\uCEFDownloadItemCallback.pas',
|
||||||
uCEFAuthCallback in '..\source\uCEFAuthCallback.pas',
|
uCEFAuthCallback in '..\source\uCEFAuthCallback.pas',
|
||||||
uCEFJsDialogCallback in '..\source\uCEFJsDialogCallback.pas',
|
uCEFJsDialogCallback in '..\source\uCEFJsDialogCallback.pas',
|
||||||
uCEFGeolocationCallback in '..\source\uCEFGeolocationCallback.pas',
|
|
||||||
uCEFContextMenuParams in '..\source\uCEFContextMenuParams.pas',
|
uCEFContextMenuParams in '..\source\uCEFContextMenuParams.pas',
|
||||||
uCEFMenuModel in '..\source\uCEFMenuModel.pas',
|
uCEFMenuModel in '..\source\uCEFMenuModel.pas',
|
||||||
uCEFBrowserProcessHandler in '..\source\uCEFBrowserProcessHandler.pas',
|
uCEFBrowserProcessHandler in '..\source\uCEFBrowserProcessHandler.pas',
|
||||||
@ -123,7 +121,6 @@ contains
|
|||||||
uCEFWebPluginInfoVisitor in '..\source\uCEFWebPluginInfoVisitor.pas',
|
uCEFWebPluginInfoVisitor in '..\source\uCEFWebPluginInfoVisitor.pas',
|
||||||
uCEFWebPluginUnstableCallback in '..\source\uCEFWebPluginUnstableCallback.pas',
|
uCEFWebPluginUnstableCallback in '..\source\uCEFWebPluginUnstableCallback.pas',
|
||||||
uCEFEndTracingCallback in '..\source\uCEFEndTracingCallback.pas',
|
uCEFEndTracingCallback in '..\source\uCEFEndTracingCallback.pas',
|
||||||
uCEFGetGeolocationCallback in '..\source\uCEFGetGeolocationCallback.pas',
|
|
||||||
uCEFFileDialogCallback in '..\source\uCEFFileDialogCallback.pas',
|
uCEFFileDialogCallback in '..\source\uCEFFileDialogCallback.pas',
|
||||||
uCEFDragData in '..\source\uCEFDragData.pas',
|
uCEFDragData in '..\source\uCEFDragData.pas',
|
||||||
uCEFResolveCallback in '..\source\uCEFResolveCallback.pas',
|
uCEFResolveCallback in '..\source\uCEFResolveCallback.pas',
|
||||||
|
@ -167,7 +167,6 @@
|
|||||||
<DCCReference Include="..\source\uCEFKeyboardHandler.pas"/>
|
<DCCReference Include="..\source\uCEFKeyboardHandler.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFDisplayHandler.pas"/>
|
<DCCReference Include="..\source\uCEFDisplayHandler.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFDownloadHandler.pas"/>
|
<DCCReference Include="..\source\uCEFDownloadHandler.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFGeolocationHandler.pas"/>
|
|
||||||
<DCCReference Include="..\source\uCEFJsDialogHandler.pas"/>
|
<DCCReference Include="..\source\uCEFJsDialogHandler.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFLifeSpanHandler.pas"/>
|
<DCCReference Include="..\source\uCEFLifeSpanHandler.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFRequestHandler.pas"/>
|
<DCCReference Include="..\source\uCEFRequestHandler.pas"/>
|
||||||
@ -204,7 +203,6 @@
|
|||||||
<DCCReference Include="..\source\uCEFDownloadItemCallback.pas"/>
|
<DCCReference Include="..\source\uCEFDownloadItemCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFAuthCallback.pas"/>
|
<DCCReference Include="..\source\uCEFAuthCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFJsDialogCallback.pas"/>
|
<DCCReference Include="..\source\uCEFJsDialogCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFGeolocationCallback.pas"/>
|
|
||||||
<DCCReference Include="..\source\uCEFContextMenuParams.pas"/>
|
<DCCReference Include="..\source\uCEFContextMenuParams.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFMenuModel.pas"/>
|
<DCCReference Include="..\source\uCEFMenuModel.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFBrowserProcessHandler.pas"/>
|
<DCCReference Include="..\source\uCEFBrowserProcessHandler.pas"/>
|
||||||
@ -214,7 +212,6 @@
|
|||||||
<DCCReference Include="..\source\uCEFWebPluginInfoVisitor.pas"/>
|
<DCCReference Include="..\source\uCEFWebPluginInfoVisitor.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFWebPluginUnstableCallback.pas"/>
|
<DCCReference Include="..\source\uCEFWebPluginUnstableCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFEndTracingCallback.pas"/>
|
<DCCReference Include="..\source\uCEFEndTracingCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFGetGeolocationCallback.pas"/>
|
|
||||||
<DCCReference Include="..\source\uCEFFileDialogCallback.pas"/>
|
<DCCReference Include="..\source\uCEFFileDialogCallback.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFDragData.pas"/>
|
<DCCReference Include="..\source\uCEFDragData.pas"/>
|
||||||
<DCCReference Include="..\source\uCEFResolveCallback.pas"/>
|
<DCCReference Include="..\source\uCEFResolveCallback.pas"/>
|
||||||
@ -294,9 +291,9 @@
|
|||||||
<DeployFile LocalName="$(BDS)\Redist\iossimulator\libcgunwind.1.0.dylib" Class="DependencyModule"/>
|
<DeployFile LocalName="$(BDS)\Redist\iossimulator\libcgunwind.1.0.dylib" Class="DependencyModule"/>
|
||||||
<DeployFile LocalName="..\..\..\..\..\..\..\Public\Documents\Embarcadero\Studio\17.0\Bpl\CEF4Delphi.bpl" Configuration="Debug" Class="ProjectOutput"/>
|
<DeployFile LocalName="..\..\..\..\..\..\..\Public\Documents\Embarcadero\Studio\17.0\Bpl\CEF4Delphi.bpl" Configuration="Debug" Class="ProjectOutput"/>
|
||||||
<DeployFile LocalName="$(BDS)\Redist\iossimulator\libPCRE.dylib" Class="DependencyModule"/>
|
<DeployFile LocalName="$(BDS)\Redist\iossimulator\libPCRE.dylib" Class="DependencyModule"/>
|
||||||
<DeployFile LocalName="..\..\..\..\..\..\..\Public\Documents\Embarcadero\Studio\19.0\Bpl\CEF4Delphi.bpl" Configuration="Debug" Class="ProjectOutput">
|
<DeployFile LocalName="..\..\..\..\..\..\..\Public\Documents\Embarcadero\Studio\19.0\Bpl\CEF4Delphi_FMX.bpl" Configuration="Debug" Class="ProjectOutput">
|
||||||
<Platform Name="Win32">
|
<Platform Name="Win32">
|
||||||
<RemoteName>CEF4Delphi.bpl</RemoteName>
|
<RemoteName>CEF4Delphi_FMX.bpl</RemoteName>
|
||||||
<Overwrite>true</Overwrite>
|
<Overwrite>true</Overwrite>
|
||||||
</Platform>
|
</Platform>
|
||||||
</DeployFile>
|
</DeployFile>
|
||||||
|
@ -56,14 +56,14 @@ uses
|
|||||||
|
|
||||||
const
|
const
|
||||||
CEF_SUPPORTED_VERSION_MAJOR = 3;
|
CEF_SUPPORTED_VERSION_MAJOR = 3;
|
||||||
CEF_SUPPORTED_VERSION_MINOR = 3282;
|
CEF_SUPPORTED_VERSION_MINOR = 3325;
|
||||||
CEF_SUPPORTED_VERSION_RELEASE = 1741;
|
CEF_SUPPORTED_VERSION_RELEASE = 1746;
|
||||||
CEF_SUPPORTED_VERSION_BUILD = 0;
|
CEF_SUPPORTED_VERSION_BUILD = 0;
|
||||||
|
|
||||||
CEF_CHROMEELF_VERSION_MAJOR = 64;
|
CEF_CHROMEELF_VERSION_MAJOR = 65;
|
||||||
CEF_CHROMEELF_VERSION_MINOR = 0;
|
CEF_CHROMEELF_VERSION_MINOR = 0;
|
||||||
CEF_CHROMEELF_VERSION_RELEASE = 3282;
|
CEF_CHROMEELF_VERSION_RELEASE = 3325;
|
||||||
CEF_CHROMEELF_VERSION_BUILD = 119;
|
CEF_CHROMEELF_VERSION_BUILD = 146;
|
||||||
|
|
||||||
LIBCEF_DLL = 'libcef.dll';
|
LIBCEF_DLL = 'libcef.dll';
|
||||||
CHROMEELF_DLL = 'chrome_elf.dll';
|
CHROMEELF_DLL = 'chrome_elf.dll';
|
||||||
@ -157,7 +157,6 @@ type
|
|||||||
FOnWebKitInitialized : TOnWebKitInitializedEvent;
|
FOnWebKitInitialized : TOnWebKitInitializedEvent;
|
||||||
FOnBrowserCreated : TOnBrowserCreatedEvent;
|
FOnBrowserCreated : TOnBrowserCreatedEvent;
|
||||||
FOnBrowserDestroyed : TOnBrowserDestroyedEvent;
|
FOnBrowserDestroyed : TOnBrowserDestroyedEvent;
|
||||||
FOnBeforeNavigation : TOnBeforeNavigationEvent;
|
|
||||||
FOnContextCreated : TOnContextCreatedEvent;
|
FOnContextCreated : TOnContextCreatedEvent;
|
||||||
FOnContextReleased : TOnContextReleasedEvent;
|
FOnContextReleased : TOnContextReleasedEvent;
|
||||||
FOnUncaughtException : TOnUncaughtExceptionEvent;
|
FOnUncaughtException : TOnUncaughtExceptionEvent;
|
||||||
@ -191,7 +190,6 @@ type
|
|||||||
function Load_cef_crash_util_h : boolean;
|
function Load_cef_crash_util_h : boolean;
|
||||||
function Load_cef_drag_data_capi_h : boolean;
|
function Load_cef_drag_data_capi_h : boolean;
|
||||||
function Load_cef_file_util_capi_h : boolean;
|
function Load_cef_file_util_capi_h : boolean;
|
||||||
function Load_cef_geolocation_capi_h : boolean;
|
|
||||||
function Load_cef_image_capi_h : boolean;
|
function Load_cef_image_capi_h : boolean;
|
||||||
function Load_cef_menu_model_capi_h : boolean;
|
function Load_cef_menu_model_capi_h : boolean;
|
||||||
function Load_cef_origin_whitelist_capi_h : boolean;
|
function Load_cef_origin_whitelist_capi_h : boolean;
|
||||||
@ -273,7 +271,6 @@ type
|
|||||||
procedure Internal_OnWebKitInitialized;
|
procedure Internal_OnWebKitInitialized;
|
||||||
procedure Internal_OnBrowserCreated(const browser: ICefBrowser);
|
procedure Internal_OnBrowserCreated(const browser: ICefBrowser);
|
||||||
procedure Internal_OnBrowserDestroyed(const browser: ICefBrowser);
|
procedure Internal_OnBrowserDestroyed(const browser: ICefBrowser);
|
||||||
procedure Internal_OnBeforeNavigation(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; navigationType: TCefNavigationType; isRedirect: Boolean; var aStopNavigation : boolean);
|
|
||||||
procedure Internal_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context);
|
procedure Internal_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context);
|
||||||
procedure Internal_OnContextReleased(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context);
|
procedure Internal_OnContextReleased(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context);
|
||||||
procedure Internal_OnUncaughtException(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace);
|
procedure Internal_OnUncaughtException(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace);
|
||||||
@ -376,7 +373,6 @@ type
|
|||||||
property OnWebKitInitialized : TOnWebKitInitializedEvent read FOnWebKitInitialized write FOnWebKitInitialized;
|
property OnWebKitInitialized : TOnWebKitInitializedEvent read FOnWebKitInitialized write FOnWebKitInitialized;
|
||||||
property OnBrowserCreated : TOnBrowserCreatedEvent read FOnBrowserCreated write FOnBrowserCreated;
|
property OnBrowserCreated : TOnBrowserCreatedEvent read FOnBrowserCreated write FOnBrowserCreated;
|
||||||
property OnBrowserDestroyed : TOnBrowserDestroyedEvent read FOnBrowserDestroyed write FOnBrowserDestroyed;
|
property OnBrowserDestroyed : TOnBrowserDestroyedEvent read FOnBrowserDestroyed write FOnBrowserDestroyed;
|
||||||
property OnBeforeNavigation : TOnBeforeNavigationEvent read FOnBeforeNavigation write FOnBeforeNavigation;
|
|
||||||
property OnContextCreated : TOnContextCreatedEvent read FOnContextCreated write FOnContextCreated;
|
property OnContextCreated : TOnContextCreatedEvent read FOnContextCreated write FOnContextCreated;
|
||||||
property OnContextReleased : TOnContextReleasedEvent read FOnContextReleased write FOnContextReleased;
|
property OnContextReleased : TOnContextReleasedEvent read FOnContextReleased write FOnContextReleased;
|
||||||
property OnUncaughtException : TOnUncaughtExceptionEvent read FOnUncaughtException write FOnUncaughtException;
|
property OnUncaughtException : TOnUncaughtExceptionEvent read FOnUncaughtException write FOnUncaughtException;
|
||||||
@ -486,7 +482,6 @@ begin
|
|||||||
FOnWebKitInitialized := nil;
|
FOnWebKitInitialized := nil;
|
||||||
FOnBrowserCreated := nil;
|
FOnBrowserCreated := nil;
|
||||||
FOnBrowserDestroyed := nil;
|
FOnBrowserDestroyed := nil;
|
||||||
FOnBeforeNavigation := nil;
|
|
||||||
FOnContextCreated := nil;
|
FOnContextCreated := nil;
|
||||||
FOnContextReleased := nil;
|
FOnContextReleased := nil;
|
||||||
FOnUncaughtException := nil;
|
FOnUncaughtException := nil;
|
||||||
@ -1177,14 +1172,6 @@ begin
|
|||||||
if assigned(FOnBrowserDestroyed) then FOnBrowserDestroyed(browser);
|
if assigned(FOnBrowserDestroyed) then FOnBrowserDestroyed(browser);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCefApplication.Internal_OnBeforeNavigation(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; navigationType: TCefNavigationType; isRedirect: Boolean; var aStopNavigation : boolean);
|
|
||||||
begin
|
|
||||||
if assigned(FOnBeforeNavigation) then
|
|
||||||
FOnBeforeNavigation(browser, frame, request, navigationType, isRedirect, aStopNavigation)
|
|
||||||
else
|
|
||||||
aStopNavigation := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCefApplication.Internal_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context);
|
procedure TCefApplication.Internal_OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context);
|
||||||
begin
|
begin
|
||||||
if assigned(FOnContextCreated) then FOnContextCreated(browser, frame, context);
|
if assigned(FOnContextCreated) then FOnContextCreated(browser, frame, context);
|
||||||
@ -1351,7 +1338,6 @@ begin
|
|||||||
assigned(FOnWebKitInitialized) or
|
assigned(FOnWebKitInitialized) or
|
||||||
assigned(FOnBrowserCreated) or
|
assigned(FOnBrowserCreated) or
|
||||||
assigned(FOnBrowserDestroyed) or
|
assigned(FOnBrowserDestroyed) or
|
||||||
assigned(FOnBeforeNavigation) or
|
|
||||||
assigned(FOnContextCreated) or
|
assigned(FOnContextCreated) or
|
||||||
assigned(FOnContextReleased) or
|
assigned(FOnContextReleased) or
|
||||||
assigned(FOnUncaughtException) or
|
assigned(FOnUncaughtException) or
|
||||||
@ -1405,7 +1391,6 @@ begin
|
|||||||
Load_cef_crash_util_h and
|
Load_cef_crash_util_h and
|
||||||
Load_cef_drag_data_capi_h and
|
Load_cef_drag_data_capi_h and
|
||||||
Load_cef_file_util_capi_h and
|
Load_cef_file_util_capi_h and
|
||||||
Load_cef_geolocation_capi_h and
|
|
||||||
Load_cef_image_capi_h and
|
Load_cef_image_capi_h and
|
||||||
Load_cef_menu_model_capi_h and
|
Load_cef_menu_model_capi_h and
|
||||||
Load_cef_origin_whitelist_capi_h and
|
Load_cef_origin_whitelist_capi_h and
|
||||||
@ -1548,13 +1533,6 @@ begin
|
|||||||
assigned(cef_load_crlsets_file);
|
assigned(cef_load_crlsets_file);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TCefApplication.Load_cef_geolocation_capi_h : boolean;
|
|
||||||
begin
|
|
||||||
cef_get_geolocation := GetProcAddress(FLibHandle, 'cef_get_geolocation');
|
|
||||||
|
|
||||||
Result := assigned(cef_get_geolocation);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TCefApplication.Load_cef_image_capi_h : boolean;
|
function TCefApplication.Load_cef_image_capi_h : boolean;
|
||||||
begin
|
begin
|
||||||
cef_image_create := GetProcAddress(FLibHandle, 'cef_image_create');
|
cef_image_create := GetProcAddress(FLibHandle, 'cef_image_create');
|
||||||
|
@ -144,10 +144,6 @@ type
|
|||||||
FOnBeforeDownload : TOnBeforeDownload;
|
FOnBeforeDownload : TOnBeforeDownload;
|
||||||
FOnDownloadUpdated : TOnDownloadUpdated;
|
FOnDownloadUpdated : TOnDownloadUpdated;
|
||||||
|
|
||||||
// ICefGeolocationHandler
|
|
||||||
FOnRequestGeolocationPermission : TOnRequestGeolocationPermission;
|
|
||||||
FOnCancelGeolocationPermission : TOnCancelGeolocationPermission;
|
|
||||||
|
|
||||||
// ICefJsDialogHandler
|
// ICefJsDialogHandler
|
||||||
FOnJsdialog : TOnJsdialog;
|
FOnJsdialog : TOnJsdialog;
|
||||||
FOnBeforeUnloadDialog : TOnBeforeUnloadDialog;
|
FOnBeforeUnloadDialog : TOnBeforeUnloadDialog;
|
||||||
@ -297,7 +293,6 @@ type
|
|||||||
function MustCreateKeyboardHandler : boolean; virtual;
|
function MustCreateKeyboardHandler : boolean; virtual;
|
||||||
function MustCreateDisplayHandler : boolean; virtual;
|
function MustCreateDisplayHandler : boolean; virtual;
|
||||||
function MustCreateDownloadHandler : boolean; virtual;
|
function MustCreateDownloadHandler : boolean; virtual;
|
||||||
function MustCreateGeolocationHandler : boolean; virtual;
|
|
||||||
function MustCreateJsDialogHandler : boolean; virtual;
|
function MustCreateJsDialogHandler : boolean; virtual;
|
||||||
function MustCreateDragHandler : boolean; virtual;
|
function MustCreateDragHandler : boolean; virtual;
|
||||||
function MustCreateFindHandler : boolean; virtual;
|
function MustCreateFindHandler : boolean; virtual;
|
||||||
@ -356,10 +351,6 @@ type
|
|||||||
procedure doOnBeforeDownload(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback); virtual;
|
procedure doOnBeforeDownload(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback); virtual;
|
||||||
procedure doOnDownloadUpdated(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback); virtual;
|
procedure doOnDownloadUpdated(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback); virtual;
|
||||||
|
|
||||||
// ICefGeolocationHandler
|
|
||||||
function doOnRequestGeolocationPermission(const browser: ICefBrowser; const requestingUrl: ustring; requestId: Integer; const callback: ICefGeolocationCallback): Boolean; virtual;
|
|
||||||
procedure doOnCancelGeolocationPermission(const browser: ICefBrowser; requestId: Integer); virtual;
|
|
||||||
|
|
||||||
// ICefJsDialogHandler
|
// ICefJsDialogHandler
|
||||||
function doOnJsdialog(const browser: ICefBrowser; const originUrl: ustring; dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring; const callback: ICefJsDialogCallback; out suppressMessage: Boolean): Boolean; virtual;
|
function doOnJsdialog(const browser: ICefBrowser; const originUrl: ustring; dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring; const callback: ICefJsDialogCallback; out suppressMessage: Boolean): Boolean; virtual;
|
||||||
function doOnBeforeUnloadDialog(const browser: ICefBrowser; const messageText: ustring; isReload: Boolean; const callback: ICefJsDialogCallback): Boolean; virtual;
|
function doOnBeforeUnloadDialog(const browser: ICefBrowser; const messageText: ustring; isReload: Boolean; const callback: ICefJsDialogCallback): Boolean; virtual;
|
||||||
@ -624,10 +615,6 @@ type
|
|||||||
property OnBeforeDownload : TOnBeforeDownload read FOnBeforeDownload write FOnBeforeDownload;
|
property OnBeforeDownload : TOnBeforeDownload read FOnBeforeDownload write FOnBeforeDownload;
|
||||||
property OnDownloadUpdated : TOnDownloadUpdated read FOnDownloadUpdated write FOnDownloadUpdated;
|
property OnDownloadUpdated : TOnDownloadUpdated read FOnDownloadUpdated write FOnDownloadUpdated;
|
||||||
|
|
||||||
// ICefGeolocationHandler
|
|
||||||
property OnRequestGeolocationPermission : TOnRequestGeolocationPermission read FOnRequestGeolocationPermission write FOnRequestGeolocationPermission;
|
|
||||||
property OnCancelGeolocationPermission : TOnCancelGeolocationPermission read FOnCancelGeolocationPermission write FOnCancelGeolocationPermission;
|
|
||||||
|
|
||||||
// ICefJsDialogHandler
|
// ICefJsDialogHandler
|
||||||
property OnJsdialog : TOnJsdialog read FOnJsdialog write FOnJsdialog;
|
property OnJsdialog : TOnJsdialog read FOnJsdialog write FOnJsdialog;
|
||||||
property OnBeforeUnloadDialog : TOnBeforeUnloadDialog read FOnBeforeUnloadDialog write FOnBeforeUnloadDialog;
|
property OnBeforeUnloadDialog : TOnBeforeUnloadDialog read FOnBeforeUnloadDialog write FOnBeforeUnloadDialog;
|
||||||
@ -845,7 +832,6 @@ begin
|
|||||||
MustCreateKeyboardHandler,
|
MustCreateKeyboardHandler,
|
||||||
MustCreateDisplayHandler,
|
MustCreateDisplayHandler,
|
||||||
MustCreateDownloadHandler,
|
MustCreateDownloadHandler,
|
||||||
MustCreateGeolocationHandler,
|
|
||||||
MustCreateJsDialogHandler,
|
MustCreateJsDialogHandler,
|
||||||
True,
|
True,
|
||||||
FIsOSR, // Create the Render Handler in OSR mode only
|
FIsOSR, // Create the Render Handler in OSR mode only
|
||||||
@ -912,10 +898,6 @@ begin
|
|||||||
FOnBeforeDownload := nil;
|
FOnBeforeDownload := nil;
|
||||||
FOnDownloadUpdated := nil;
|
FOnDownloadUpdated := nil;
|
||||||
|
|
||||||
// ICefGeolocationHandler
|
|
||||||
FOnRequestGeolocationPermission := nil;
|
|
||||||
FOnCancelGeolocationPermission := nil;
|
|
||||||
|
|
||||||
// ICefJsDialogHandler
|
// ICefJsDialogHandler
|
||||||
FOnJsdialog := nil;
|
FOnJsdialog := nil;
|
||||||
FOnBeforeUnloadDialog := nil;
|
FOnBeforeUnloadDialog := nil;
|
||||||
@ -2647,12 +2629,6 @@ begin
|
|||||||
assigned(FOnDownloadUpdated);
|
assigned(FOnDownloadUpdated);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TChromium.MustCreateGeolocationHandler : boolean;
|
|
||||||
begin
|
|
||||||
Result := assigned(FOnRequestGeolocationPermission) or
|
|
||||||
assigned(FOnCancelGeolocationPermission);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TChromium.MustCreateJsDialogHandler : boolean;
|
function TChromium.MustCreateJsDialogHandler : boolean;
|
||||||
begin
|
begin
|
||||||
Result := assigned(FOnJsdialog) or
|
Result := assigned(FOnJsdialog) or
|
||||||
@ -2935,12 +2911,6 @@ begin
|
|||||||
if Assigned(FOnBeforeUnloadDialog) then FOnBeforeUnloadDialog(Self, browser, messageText, isReload, callback, Result);
|
if Assigned(FOnBeforeUnloadDialog) then FOnBeforeUnloadDialog(Self, browser, messageText, isReload, callback, Result);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TChromium.doOnCancelGeolocationPermission(const browser : ICefBrowser; requestId : Integer);
|
|
||||||
begin
|
|
||||||
if Assigned(FOnCancelGeolocationPermission) then
|
|
||||||
FOnCancelGeolocationPermission(Self, browser, requestId);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TChromium.doOnCertificateError(const browser : ICefBrowser;
|
function TChromium.doOnCertificateError(const browser : ICefBrowser;
|
||||||
certError : TCefErrorcode;
|
certError : TCefErrorcode;
|
||||||
const requestUrl : ustring;
|
const requestUrl : ustring;
|
||||||
@ -3308,17 +3278,6 @@ begin
|
|||||||
if Assigned(FOnRenderViewReady) then FOnRenderViewReady(Self, browser);
|
if Assigned(FOnRenderViewReady) then FOnRenderViewReady(Self, browser);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TChromium.doOnRequestGeolocationPermission(const browser : ICefBrowser;
|
|
||||||
const requestingUrl : ustring;
|
|
||||||
requestId : Integer;
|
|
||||||
const callback : ICefGeolocationCallback): Boolean;
|
|
||||||
begin
|
|
||||||
Result := False;
|
|
||||||
|
|
||||||
if Assigned(FOnRequestGeolocationPermission) then
|
|
||||||
FOnRequestGeolocationPermission(Self, browser, requestingUrl, requestId, callback, Result);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TChromium.doOnResetDialogState(const browser: ICefBrowser);
|
procedure TChromium.doOnResetDialogState(const browser: ICefBrowser);
|
||||||
begin
|
begin
|
||||||
if Assigned(FOnResetDialogState) then FOnResetDialogState(Self, browser);
|
if Assigned(FOnResetDialogState) then FOnResetDialogState(Self, browser);
|
||||||
|
@ -93,10 +93,6 @@ type
|
|||||||
TOnBeforeDownload = procedure(Sender: TObject; const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback) of object;
|
TOnBeforeDownload = procedure(Sender: TObject; const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback) of object;
|
||||||
TOnDownloadUpdated = procedure(Sender: TObject; const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback) of object;
|
TOnDownloadUpdated = procedure(Sender: TObject; const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback) of object;
|
||||||
|
|
||||||
// ICefGeolocationHandler
|
|
||||||
TOnRequestGeolocationPermission = procedure(Sender: TObject; const browser: ICefBrowser; const requestingUrl: ustring; requestId: Integer; const callback: ICefGeolocationCallback; out Result: Boolean) of object;
|
|
||||||
TOnCancelGeolocationPermission = procedure(Sender: TObject; const browser: ICefBrowser; requestId: Integer) of object;
|
|
||||||
|
|
||||||
// ICefJsDialogHandler
|
// ICefJsDialogHandler
|
||||||
TOnJsdialog = procedure(Sender: TObject; const browser: ICefBrowser; const originUrl: ustring; dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring; const callback: ICefJsDialogCallback; out suppressMessage: Boolean; out Result: Boolean) of object;
|
TOnJsdialog = procedure(Sender: TObject; const browser: ICefBrowser; const originUrl: ustring; dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring; const callback: ICefJsDialogCallback; out suppressMessage: Boolean; out Result: Boolean) of object;
|
||||||
TOnBeforeUnloadDialog = procedure(Sender: TObject; const browser: ICefBrowser; const messageText: ustring; isReload: Boolean; const callback: ICefJsDialogCallback; out Result: Boolean) of object;
|
TOnBeforeUnloadDialog = procedure(Sender: TObject; const browser: ICefBrowser; const messageText: ustring; isReload: Boolean; const callback: ICefJsDialogCallback; out Result: Boolean) of object;
|
||||||
|
@ -59,7 +59,6 @@ type
|
|||||||
function GetDragHandler: ICefDragHandler; virtual;
|
function GetDragHandler: ICefDragHandler; virtual;
|
||||||
function GetFindHandler: ICefFindHandler; virtual;
|
function GetFindHandler: ICefFindHandler; virtual;
|
||||||
function GetFocusHandler: ICefFocusHandler; virtual;
|
function GetFocusHandler: ICefFocusHandler; virtual;
|
||||||
function GetGeolocationHandler: ICefGeolocationHandler; virtual;
|
|
||||||
function GetJsdialogHandler: ICefJsdialogHandler; virtual;
|
function GetJsdialogHandler: ICefJsdialogHandler; virtual;
|
||||||
function GetKeyboardHandler: ICefKeyboardHandler; virtual;
|
function GetKeyboardHandler: ICefKeyboardHandler; virtual;
|
||||||
function GetLifeSpanHandler: ICefLifeSpanHandler; virtual;
|
function GetLifeSpanHandler: ICefLifeSpanHandler; virtual;
|
||||||
@ -83,7 +82,6 @@ type
|
|||||||
function GetDragHandler: ICefDragHandler; virtual;
|
function GetDragHandler: ICefDragHandler; virtual;
|
||||||
function GetFindHandler: ICefFindHandler; virtual;
|
function GetFindHandler: ICefFindHandler; virtual;
|
||||||
function GetFocusHandler: ICefFocusHandler; virtual;
|
function GetFocusHandler: ICefFocusHandler; virtual;
|
||||||
function GetGeolocationHandler: ICefGeolocationHandler; virtual;
|
|
||||||
function GetJsdialogHandler: ICefJsdialogHandler; virtual;
|
function GetJsdialogHandler: ICefJsdialogHandler; virtual;
|
||||||
function GetKeyboardHandler: ICefKeyboardHandler; virtual;
|
function GetKeyboardHandler: ICefKeyboardHandler; virtual;
|
||||||
function GetLifeSpanHandler: ICefLifeSpanHandler; virtual;
|
function GetLifeSpanHandler: ICefLifeSpanHandler; virtual;
|
||||||
@ -108,7 +106,6 @@ type
|
|||||||
FKeyboardHandler : ICefKeyboardHandler;
|
FKeyboardHandler : ICefKeyboardHandler;
|
||||||
FDisplayHandler : ICefDisplayHandler;
|
FDisplayHandler : ICefDisplayHandler;
|
||||||
FDownloadHandler : ICefDownloadHandler;
|
FDownloadHandler : ICefDownloadHandler;
|
||||||
FGeolocationHandler : ICefGeolocationHandler;
|
|
||||||
FJsDialogHandler : ICefJsDialogHandler;
|
FJsDialogHandler : ICefJsDialogHandler;
|
||||||
FLifeSpanHandler : ICefLifeSpanHandler;
|
FLifeSpanHandler : ICefLifeSpanHandler;
|
||||||
FRenderHandler : ICefRenderHandler;
|
FRenderHandler : ICefRenderHandler;
|
||||||
@ -124,7 +121,6 @@ type
|
|||||||
function GetDragHandler: ICefDragHandler; override;
|
function GetDragHandler: ICefDragHandler; override;
|
||||||
function GetFindHandler: ICefFindHandler; override;
|
function GetFindHandler: ICefFindHandler; override;
|
||||||
function GetFocusHandler: ICefFocusHandler; override;
|
function GetFocusHandler: ICefFocusHandler; override;
|
||||||
function GetGeolocationHandler: ICefGeolocationHandler; override;
|
|
||||||
function GetJsdialogHandler: ICefJsdialogHandler; override;
|
function GetJsdialogHandler: ICefJsdialogHandler; override;
|
||||||
function GetKeyboardHandler: ICefKeyboardHandler; override;
|
function GetKeyboardHandler: ICefKeyboardHandler; override;
|
||||||
function GetLifeSpanHandler: ICefLifeSpanHandler; override;
|
function GetLifeSpanHandler: ICefLifeSpanHandler; override;
|
||||||
@ -138,9 +134,9 @@ type
|
|||||||
public
|
public
|
||||||
constructor Create(const events: IChromiumEvents;
|
constructor Create(const events: IChromiumEvents;
|
||||||
aCreateLoadHandler, aCreateFocusHandler, aCreateContextMenuHandler, aCreateDialogHandler,
|
aCreateLoadHandler, aCreateFocusHandler, aCreateContextMenuHandler, aCreateDialogHandler,
|
||||||
aCreateKeyboardHandler, aCreateDisplayHandler, aCreateDownloadHandler, aCreateGeolocationHandler,
|
aCreateKeyboardHandler, aCreateDisplayHandler, aCreateDownloadHandler, aCreateJsDialogHandler,
|
||||||
aCreateJsDialogHandler, aCreateLifeSpanHandler, aCreateRenderHandler, aCreateRequestHandler,
|
aCreateLifeSpanHandler, aCreateRenderHandler, aCreateRequestHandler, aCreateDragHandler,
|
||||||
aCreateDragHandler, aCreateFindHandler : boolean); reintroduce; virtual;
|
aCreateFindHandler : boolean); reintroduce; virtual;
|
||||||
procedure BeforeDestruction; override;
|
procedure BeforeDestruction; override;
|
||||||
procedure RemoveReferences; override;
|
procedure RemoveReferences; override;
|
||||||
end;
|
end;
|
||||||
@ -155,7 +151,7 @@ uses
|
|||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
uCEFMiscFunctions, uCEFLibFunctions, uCEFProcessMessage, uCEFBrowser, uCEFLoadHandler,
|
uCEFMiscFunctions, uCEFLibFunctions, uCEFProcessMessage, uCEFBrowser, uCEFLoadHandler,
|
||||||
uCEFFocusHandler, uCEFContextMenuHandler, uCEFDialogHandler, uCEFKeyboardHandler,
|
uCEFFocusHandler, uCEFContextMenuHandler, uCEFDialogHandler, uCEFKeyboardHandler,
|
||||||
uCEFDisplayHandler, uCEFDownloadHandler, uCEFGeolocationHandler, uCEFJsDialogHandler,
|
uCEFDisplayHandler, uCEFDownloadHandler, uCEFJsDialogHandler,
|
||||||
uCEFLifeSpanHandler, uCEFRequestHandler, uCEFRenderHandler, uCEFDragHandler,
|
uCEFLifeSpanHandler, uCEFRequestHandler, uCEFRenderHandler, uCEFDragHandler,
|
||||||
uCEFFindHandler, uCEFConstants, uCEFApplication;
|
uCEFFindHandler, uCEFConstants, uCEFApplication;
|
||||||
|
|
||||||
@ -207,11 +203,6 @@ begin
|
|||||||
Result := nil;
|
Result := nil;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TCefClientRef.GetGeolocationHandler: ICefGeolocationHandler;
|
|
||||||
begin
|
|
||||||
Result := nil;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TCefClientRef.GetJsdialogHandler: ICefJsDialogHandler;
|
function TCefClientRef.GetJsdialogHandler: ICefJsDialogHandler;
|
||||||
begin
|
begin
|
||||||
Result := nil;
|
Result := nil;
|
||||||
@ -300,12 +291,6 @@ begin
|
|||||||
Result := CefGetData(GetFocusHandler);
|
Result := CefGetData(GetFocusHandler);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function cef_client_own_get_geolocation_handler(self: PCefClient): PCefGeolocationHandler; stdcall;
|
|
||||||
begin
|
|
||||||
with TCefClientOwn(CefGetObject(self)) do
|
|
||||||
Result := CefGetData(GetGeolocationHandler);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function cef_client_own_get_jsdialog_handler(self: PCefClient): PCefJsDialogHandler; stdcall;
|
function cef_client_own_get_jsdialog_handler(self: PCefClient): PCefJsDialogHandler; stdcall;
|
||||||
begin
|
begin
|
||||||
with TCefClientOwn(CefGetObject(self)) do
|
with TCefClientOwn(CefGetObject(self)) do
|
||||||
@ -362,7 +347,6 @@ begin
|
|||||||
get_drag_handler := cef_client_own_get_drag_handler;
|
get_drag_handler := cef_client_own_get_drag_handler;
|
||||||
get_find_handler := cef_client_own_get_find_handler;
|
get_find_handler := cef_client_own_get_find_handler;
|
||||||
get_focus_handler := cef_client_own_get_focus_handler;
|
get_focus_handler := cef_client_own_get_focus_handler;
|
||||||
get_geolocation_handler := cef_client_own_get_geolocation_handler;
|
|
||||||
get_jsdialog_handler := cef_client_own_get_jsdialog_handler;
|
get_jsdialog_handler := cef_client_own_get_jsdialog_handler;
|
||||||
get_keyboard_handler := cef_client_own_get_keyboard_handler;
|
get_keyboard_handler := cef_client_own_get_keyboard_handler;
|
||||||
get_life_span_handler := cef_client_own_get_life_span_handler;
|
get_life_span_handler := cef_client_own_get_life_span_handler;
|
||||||
@ -408,11 +392,6 @@ begin
|
|||||||
Result := nil;
|
Result := nil;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TCefClientOwn.GetGeolocationHandler: ICefGeolocationHandler;
|
|
||||||
begin
|
|
||||||
Result := nil;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TCefClientOwn.GetJsdialogHandler: ICefJsDialogHandler;
|
function TCefClientOwn.GetJsdialogHandler: ICefJsDialogHandler;
|
||||||
begin
|
begin
|
||||||
Result := nil;
|
Result := nil;
|
||||||
@ -467,7 +446,6 @@ constructor TCustomClientHandler.Create(const events : IChro
|
|||||||
aCreateKeyboardHandler : boolean;
|
aCreateKeyboardHandler : boolean;
|
||||||
aCreateDisplayHandler : boolean;
|
aCreateDisplayHandler : boolean;
|
||||||
aCreateDownloadHandler : boolean;
|
aCreateDownloadHandler : boolean;
|
||||||
aCreateGeolocationHandler : boolean;
|
|
||||||
aCreateJsDialogHandler : boolean;
|
aCreateJsDialogHandler : boolean;
|
||||||
aCreateLifeSpanHandler : boolean;
|
aCreateLifeSpanHandler : boolean;
|
||||||
aCreateRenderHandler : boolean;
|
aCreateRenderHandler : boolean;
|
||||||
@ -490,7 +468,6 @@ begin
|
|||||||
if aCreateKeyboardHandler then FKeyboardHandler := TCustomKeyboardHandler.Create(FEvents);
|
if aCreateKeyboardHandler then FKeyboardHandler := TCustomKeyboardHandler.Create(FEvents);
|
||||||
if aCreateDisplayHandler then FDisplayHandler := TCustomDisplayHandler.Create(FEvents);
|
if aCreateDisplayHandler then FDisplayHandler := TCustomDisplayHandler.Create(FEvents);
|
||||||
if aCreateDownloadHandler then FDownloadHandler := TCustomDownloadHandler.Create(FEvents);
|
if aCreateDownloadHandler then FDownloadHandler := TCustomDownloadHandler.Create(FEvents);
|
||||||
if aCreateGeolocationHandler then FGeolocationHandler := TCustomGeolocationHandler.Create(FEvents);
|
|
||||||
if aCreateJsDialogHandler then FJsDialogHandler := TCustomJsDialogHandler.Create(FEvents);
|
if aCreateJsDialogHandler then FJsDialogHandler := TCustomJsDialogHandler.Create(FEvents);
|
||||||
if aCreateLifeSpanHandler then FLifeSpanHandler := TCustomLifeSpanHandler.Create(FEvents);
|
if aCreateLifeSpanHandler then FLifeSpanHandler := TCustomLifeSpanHandler.Create(FEvents);
|
||||||
if aCreateRenderHandler then FRenderHandler := TCustomRenderHandler.Create(FEvents);
|
if aCreateRenderHandler then FRenderHandler := TCustomRenderHandler.Create(FEvents);
|
||||||
@ -518,7 +495,6 @@ begin
|
|||||||
if (FKeyboardHandler <> nil) then FKeyboardHandler.RemoveReferences;
|
if (FKeyboardHandler <> nil) then FKeyboardHandler.RemoveReferences;
|
||||||
if (FDisplayHandler <> nil) then FDisplayHandler.RemoveReferences;
|
if (FDisplayHandler <> nil) then FDisplayHandler.RemoveReferences;
|
||||||
if (FDownloadHandler <> nil) then FDownloadHandler.RemoveReferences;
|
if (FDownloadHandler <> nil) then FDownloadHandler.RemoveReferences;
|
||||||
if (FGeolocationHandler <> nil) then FGeolocationHandler.RemoveReferences;
|
|
||||||
if (FJsDialogHandler <> nil) then FJsDialogHandler.RemoveReferences;
|
if (FJsDialogHandler <> nil) then FJsDialogHandler.RemoveReferences;
|
||||||
if (FLifeSpanHandler <> nil) then FLifeSpanHandler.RemoveReferences;
|
if (FLifeSpanHandler <> nil) then FLifeSpanHandler.RemoveReferences;
|
||||||
if (FRequestHandler <> nil) then FRequestHandler.RemoveReferences;
|
if (FRequestHandler <> nil) then FRequestHandler.RemoveReferences;
|
||||||
@ -536,7 +512,6 @@ begin
|
|||||||
FKeyboardHandler := nil;
|
FKeyboardHandler := nil;
|
||||||
FDisplayHandler := nil;
|
FDisplayHandler := nil;
|
||||||
FDownloadHandler := nil;
|
FDownloadHandler := nil;
|
||||||
FGeolocationHandler := nil;
|
|
||||||
FJsDialogHandler := nil;
|
FJsDialogHandler := nil;
|
||||||
FLifeSpanHandler := nil;
|
FLifeSpanHandler := nil;
|
||||||
FRequestHandler := nil;
|
FRequestHandler := nil;
|
||||||
@ -581,11 +556,6 @@ begin
|
|||||||
Result := FFocusHandler;
|
Result := FFocusHandler;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TCustomClientHandler.GetGeolocationHandler: ICefGeolocationHandler;
|
|
||||||
begin
|
|
||||||
Result := FGeolocationHandler;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TCustomClientHandler.GetJsdialogHandler: ICefJsDialogHandler;
|
function TCustomClientHandler.GetJsdialogHandler: ICefJsDialogHandler;
|
||||||
begin
|
begin
|
||||||
Result := FJsDialogHandler;
|
Result := FJsDialogHandler;
|
||||||
|
@ -1,78 +0,0 @@
|
|||||||
// ************************************************************************
|
|
||||||
// ***************************** 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 © 2018 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 uCEFGeolocationCallback;
|
|
||||||
|
|
||||||
{$IFNDEF CPUX64}
|
|
||||||
{$ALIGN ON}
|
|
||||||
{$MINENUMSIZE 4}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
{$I cef.inc}
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
|
|
||||||
|
|
||||||
type
|
|
||||||
TCefGeolocationCallbackRef = class(TCefBaseRefCountedRef, ICefGeolocationCallback)
|
|
||||||
protected
|
|
||||||
procedure Cont(allow: Boolean);
|
|
||||||
public
|
|
||||||
class function UnWrap(data: Pointer): ICefGeolocationCallback;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
uCEFMiscFunctions, uCEFLibFunctions;
|
|
||||||
|
|
||||||
procedure TCefGeolocationCallbackRef.Cont(allow: Boolean);
|
|
||||||
begin
|
|
||||||
PCefGeolocationCallback(FData).cont(PCefGeolocationCallback(FData), Ord(allow));
|
|
||||||
end;
|
|
||||||
|
|
||||||
class function TCefGeolocationCallbackRef.UnWrap(data: Pointer): ICefGeolocationCallback;
|
|
||||||
begin
|
|
||||||
if data <> nil then
|
|
||||||
Result := Create(data) as ICefGeolocationCallback else
|
|
||||||
Result := nil;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
end.
|
|
@ -1,172 +0,0 @@
|
|||||||
// ************************************************************************
|
|
||||||
// ***************************** 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 © 2018 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 uCEFGeolocationHandler;
|
|
||||||
|
|
||||||
{$IFNDEF CPUX64}
|
|
||||||
{$ALIGN ON}
|
|
||||||
{$MINENUMSIZE 4}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
{$I cef.inc}
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
|
|
||||||
|
|
||||||
type
|
|
||||||
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;
|
|
||||||
|
|
||||||
procedure RemoveReferences; virtual;
|
|
||||||
|
|
||||||
public
|
|
||||||
constructor Create; virtual;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TCustomGeolocationHandler = class(TCefGeolocationHandlerOwn)
|
|
||||||
protected
|
|
||||||
FEvents : Pointer;
|
|
||||||
|
|
||||||
function OnRequestGeolocationPermission(const browser: ICefBrowser; const requestingUrl: ustring; requestId: Integer; const callback: ICefGeolocationCallback): Boolean; override;
|
|
||||||
procedure OnCancelGeolocationPermission(const browser: ICefBrowser; requestId: Integer); override;
|
|
||||||
|
|
||||||
procedure RemoveReferences; override;
|
|
||||||
|
|
||||||
public
|
|
||||||
constructor Create(const events: Pointer); reintroduce; virtual;
|
|
||||||
destructor Destroy; override;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
{$IFDEF DELPHI16_UP}
|
|
||||||
System.SysUtils,
|
|
||||||
{$ELSE}
|
|
||||||
SysUtils,
|
|
||||||
{$ENDIF}
|
|
||||||
uCEFMiscFunctions, uCEFLibFunctions, uCEFBrowser, uCEFGeolocationCallback;
|
|
||||||
|
|
||||||
function cef_geolocation_handler_on_request_geolocation_permission(self: PCefGeolocationHandler;
|
|
||||||
browser: PCefBrowser; const requesting_url: PCefString; request_id: Integer;
|
|
||||||
callback: PCefGeolocationCallback): Integer; stdcall;
|
|
||||||
begin
|
|
||||||
with TCefGeolocationHandlerOwn(CefGetObject(self)) do
|
|
||||||
Result := Ord(OnRequestGeolocationPermission(TCefBrowserRef.UnWrap(browser), CefString(requesting_url),
|
|
||||||
request_id, TCefGeolocationCallbackRef.UnWrap(callback)));
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure cef_geolocation_handler_on_cancel_geolocation_permission(self: PCefGeolocationHandler;
|
|
||||||
browser: PCefBrowser; request_id: Integer); stdcall;
|
|
||||||
begin
|
|
||||||
with TCefGeolocationHandlerOwn(CefGetObject(self)) do
|
|
||||||
OnCancelGeolocationPermission(TCefBrowserRef.UnWrap(browser), request_id);
|
|
||||||
end;
|
|
||||||
|
|
||||||
// TCefGeolocationHandlerOwn
|
|
||||||
|
|
||||||
constructor TCefGeolocationHandlerOwn.Create;
|
|
||||||
begin
|
|
||||||
inherited CreateData(SizeOf(TCefGeolocationHandler));
|
|
||||||
|
|
||||||
with PCefGeolocationHandler(FData)^ do
|
|
||||||
begin
|
|
||||||
on_request_geolocation_permission := cef_geolocation_handler_on_request_geolocation_permission;
|
|
||||||
on_cancel_geolocation_permission := cef_geolocation_handler_on_cancel_geolocation_permission;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
function TCefGeolocationHandlerOwn.OnRequestGeolocationPermission(
|
|
||||||
const browser: ICefBrowser; const requestingUrl: ustring; requestId: Integer;
|
|
||||||
const callback: ICefGeolocationCallback): Boolean;
|
|
||||||
begin
|
|
||||||
Result := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCefGeolocationHandlerOwn.OnCancelGeolocationPermission(const browser: ICefBrowser; requestId: Integer);
|
|
||||||
begin
|
|
||||||
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCefGeolocationHandlerOwn.RemoveReferences;
|
|
||||||
begin
|
|
||||||
//
|
|
||||||
end;
|
|
||||||
|
|
||||||
// TCustomGeolocationHandler
|
|
||||||
|
|
||||||
constructor TCustomGeolocationHandler.Create(const events: Pointer);
|
|
||||||
begin
|
|
||||||
inherited Create;
|
|
||||||
|
|
||||||
FEvents := events;
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TCustomGeolocationHandler.Destroy;
|
|
||||||
begin
|
|
||||||
RemoveReferences;
|
|
||||||
|
|
||||||
inherited Destroy;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCustomGeolocationHandler.RemoveReferences;
|
|
||||||
begin
|
|
||||||
FEvents := nil;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCustomGeolocationHandler.OnCancelGeolocationPermission(const browser: ICefBrowser; requestId: Integer);
|
|
||||||
begin
|
|
||||||
if (FEvents <> nil) then IChromiumEvents(FEvents).doOnCancelGeolocationPermission(browser, requestId);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TCustomGeolocationHandler.OnRequestGeolocationPermission(const browser : ICefBrowser;
|
|
||||||
const requestingUrl : ustring;
|
|
||||||
requestId : Integer;
|
|
||||||
const callback : ICefGeolocationCallback): Boolean;
|
|
||||||
begin
|
|
||||||
if (FEvents <> nil) then
|
|
||||||
Result := IChromiumEvents(FEvents).doOnRequestGeolocationPermission(browser, requestingUrl, requestId, callback)
|
|
||||||
else
|
|
||||||
Result := inherited OnRequestGeolocationPermission(browser, requestingUrl, requestId, callback);
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
@ -1,115 +0,0 @@
|
|||||||
// ************************************************************************
|
|
||||||
// ***************************** 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 © 2018 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 uCEFGetGeolocationCallback;
|
|
||||||
|
|
||||||
{$IFNDEF CPUX64}
|
|
||||||
{$ALIGN ON}
|
|
||||||
{$MINENUMSIZE 4}
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
{$I cef.inc}
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
|
|
||||||
|
|
||||||
type
|
|
||||||
TCefGetGeolocationCallbackOwn = class(TCefBaseRefCountedOwn, ICefGetGeolocationCallback)
|
|
||||||
protected
|
|
||||||
procedure OnLocationUpdate(const position: PCefGeoposition); virtual;
|
|
||||||
|
|
||||||
public
|
|
||||||
constructor Create; virtual;
|
|
||||||
end;
|
|
||||||
|
|
||||||
TOnLocationUpdate = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const position: PCefGeoposition);
|
|
||||||
|
|
||||||
TCefFastGetGeolocationCallback = class(TCefGetGeolocationCallbackOwn)
|
|
||||||
protected
|
|
||||||
FCallback: TOnLocationUpdate;
|
|
||||||
|
|
||||||
procedure OnLocationUpdate(const position: PCefGeoposition); override;
|
|
||||||
|
|
||||||
public
|
|
||||||
constructor Create(const callback: TOnLocationUpdate); reintroduce;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
|
|
||||||
uses
|
|
||||||
uCEFMiscFunctions, uCEFLibFunctions;
|
|
||||||
|
|
||||||
procedure cef_get_geolocation_callback_on_location_update(
|
|
||||||
self: PCefGetGeolocationCallback; const position: PCefGeoposition); stdcall;
|
|
||||||
begin
|
|
||||||
with TCefGetGeolocationCallbackOwn(CefGetObject(self)) do
|
|
||||||
OnLocationUpdate(position);
|
|
||||||
end;
|
|
||||||
|
|
||||||
// TCefGetGeolocationCallbackOwn
|
|
||||||
|
|
||||||
constructor TCefGetGeolocationCallbackOwn.Create;
|
|
||||||
begin
|
|
||||||
inherited CreateData(SizeOf(TCefGetGeolocationCallback));
|
|
||||||
with PCefGetGeolocationCallback(FData)^ do
|
|
||||||
on_location_update := cef_get_geolocation_callback_on_location_update;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCefGetGeolocationCallbackOwn.OnLocationUpdate(
|
|
||||||
const position: PCefGeoposition);
|
|
||||||
begin
|
|
||||||
|
|
||||||
end;
|
|
||||||
|
|
||||||
// TCefFastGetGeolocationCallback
|
|
||||||
|
|
||||||
constructor TCefFastGetGeolocationCallback.Create(
|
|
||||||
const callback: TOnLocationUpdate);
|
|
||||||
begin
|
|
||||||
inherited Create;
|
|
||||||
FCallback := callback;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCefFastGetGeolocationCallback.OnLocationUpdate(
|
|
||||||
const position: PCefGeoposition);
|
|
||||||
begin
|
|
||||||
FCallback(position);
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
|
@ -119,7 +119,6 @@ type
|
|||||||
TOnWebKitInitializedEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure() {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
TOnWebKitInitializedEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure() {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
||||||
TOnBrowserCreatedEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
TOnBrowserCreatedEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
||||||
TOnBrowserDestroyedEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
TOnBrowserDestroyedEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
||||||
TOnBeforeNavigationEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; navigationType: TCefNavigationType; isRedirect: Boolean; var aStopNavigation : boolean) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
|
||||||
TOnContextCreatedEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
TOnContextCreatedEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
||||||
TOnContextReleasedEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
TOnContextReleasedEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
||||||
TOnUncaughtExceptionEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
TOnUncaughtExceptionEvent = {$IFDEF DELPHI12_UP}reference to{$ENDIF} procedure(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace) {$IFNDEF DELPHI12_UP}of object{$ENDIF};
|
||||||
@ -387,7 +386,7 @@ type
|
|||||||
|
|
||||||
ICefFrame = interface(ICefBaseRefCounted)
|
ICefFrame = interface(ICefBaseRefCounted)
|
||||||
['{8FD3D3A6-EA3A-4A72-8501-0276BD5C3D1D}']
|
['{8FD3D3A6-EA3A-4A72-8501-0276BD5C3D1D}']
|
||||||
function IsValid: Boolean;
|
function IsValid: Boolean;
|
||||||
procedure Undo;
|
procedure Undo;
|
||||||
procedure Redo;
|
procedure Redo;
|
||||||
procedure Cut;
|
procedure Cut;
|
||||||
@ -404,20 +403,21 @@ type
|
|||||||
procedure LoadUrl(const url: ustring);
|
procedure LoadUrl(const url: ustring);
|
||||||
procedure LoadString(const str, url: ustring);
|
procedure LoadString(const str, url: ustring);
|
||||||
procedure ExecuteJavaScript(const code, scriptUrl: ustring; startLine: Integer);
|
procedure ExecuteJavaScript(const code, scriptUrl: ustring; startLine: Integer);
|
||||||
function IsMain: Boolean;
|
function IsMain: Boolean;
|
||||||
function IsFocused: Boolean;
|
function IsFocused: Boolean;
|
||||||
function GetName: ustring;
|
function GetName: ustring;
|
||||||
function GetIdentifier: Int64;
|
function GetIdentifier: Int64;
|
||||||
function GetParent: ICefFrame;
|
function GetParent: ICefFrame;
|
||||||
function GetUrl: ustring;
|
function GetUrl: ustring;
|
||||||
function GetBrowser: ICefBrowser;
|
function GetBrowser: ICefBrowser;
|
||||||
function GetV8Context: ICefv8Context;
|
function GetV8Context: ICefv8Context;
|
||||||
procedure VisitDom(const visitor: ICefDomVisitor);
|
procedure VisitDom(const visitor: ICefDomVisitor);
|
||||||
procedure VisitDomProc(const proc: TCefDomVisitorProc);
|
procedure VisitDomProc(const proc: TCefDomVisitorProc);
|
||||||
property Name: ustring read GetName;
|
property Name : ustring read GetName;
|
||||||
property Url: ustring read GetUrl;
|
property Url : ustring read GetUrl;
|
||||||
property Browser: ICefBrowser read GetBrowser;
|
property Browser : ICefBrowser read GetBrowser;
|
||||||
property Parent: ICefFrame read GetParent;
|
property Parent : ICefFrame read GetParent;
|
||||||
|
property Identifier : int64 read GetIdentifier;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -883,7 +883,6 @@ type
|
|||||||
procedure OnBrowserCreated(const browser: ICefBrowser);
|
procedure OnBrowserCreated(const browser: ICefBrowser);
|
||||||
procedure OnBrowserDestroyed(const browser: ICefBrowser);
|
procedure OnBrowserDestroyed(const browser: ICefBrowser);
|
||||||
function GetLoadHandler : ICefLoadHandler;
|
function GetLoadHandler : ICefLoadHandler;
|
||||||
function OnBeforeNavigation(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; navigationType: TCefNavigationType; isRedirect: Boolean): Boolean;
|
|
||||||
procedure OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context);
|
procedure OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context);
|
||||||
procedure OnContextReleased(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context);
|
procedure OnContextReleased(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context);
|
||||||
procedure OnUncaughtException(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace);
|
procedure OnUncaughtException(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace);
|
||||||
@ -1364,19 +1363,6 @@ type
|
|||||||
procedure RemoveReferences; // custom procedure to clear all references
|
procedure RemoveReferences; // custom procedure to clear all references
|
||||||
end;
|
end;
|
||||||
|
|
||||||
ICefGeolocationCallback = interface(ICefBaseRefCounted)
|
|
||||||
['{272B8E4F-4AE4-4F14-BC4E-5924FA0C149D}']
|
|
||||||
procedure Cont(allow: Boolean);
|
|
||||||
end;
|
|
||||||
|
|
||||||
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);
|
|
||||||
|
|
||||||
procedure RemoveReferences; // custom procedure to clear all references
|
|
||||||
end;
|
|
||||||
|
|
||||||
ICefRenderHandler = interface(ICefBaseRefCounted)
|
ICefRenderHandler = interface(ICefBaseRefCounted)
|
||||||
['{1FC1C22B-085A-4741-9366-5249B88EC410}']
|
['{1FC1C22B-085A-4741-9366-5249B88EC410}']
|
||||||
procedure GetAccessibilityHandler(var aAccessibilityHandler : ICefAccessibilityHandler);
|
procedure GetAccessibilityHandler(var aAccessibilityHandler : ICefAccessibilityHandler);
|
||||||
@ -1402,7 +1388,6 @@ type
|
|||||||
function GetDisplayHandler: ICefDisplayHandler;
|
function GetDisplayHandler: ICefDisplayHandler;
|
||||||
function GetDownloadHandler: ICefDownloadHandler;
|
function GetDownloadHandler: ICefDownloadHandler;
|
||||||
function GetFocusHandler: ICefFocusHandler;
|
function GetFocusHandler: ICefFocusHandler;
|
||||||
function GetGeolocationHandler: ICefGeolocationHandler;
|
|
||||||
function GetJsdialogHandler: ICefJsdialogHandler;
|
function GetJsdialogHandler: ICefJsdialogHandler;
|
||||||
function GetKeyboardHandler: ICefKeyboardHandler;
|
function GetKeyboardHandler: ICefKeyboardHandler;
|
||||||
function GetLifeSpanHandler: ICefLifeSpanHandler;
|
function GetLifeSpanHandler: ICefLifeSpanHandler;
|
||||||
@ -1460,11 +1445,6 @@ type
|
|||||||
procedure OnEndTracingComplete(const tracingFile: ustring);
|
procedure OnEndTracingComplete(const tracingFile: ustring);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
ICefGetGeolocationCallback = interface(ICefBaseRefCounted)
|
|
||||||
['{ACB82FD9-3FFD-43F9-BF1A-A4849BF5B814}']
|
|
||||||
procedure OnLocationUpdate(const position: PCefGeoposition);
|
|
||||||
end;
|
|
||||||
|
|
||||||
ICefFileDialogCallback = interface(ICefBaseRefCounted)
|
ICefFileDialogCallback = interface(ICefBaseRefCounted)
|
||||||
['{1AF659AB-4522-4E39-9C52-184000D8E3C7}']
|
['{1AF659AB-4522-4E39-9C52-184000D8E3C7}']
|
||||||
procedure Cont(selectedAcceptFilter: Integer; const filePaths: TStrings);
|
procedure Cont(selectedAcceptFilter: Integer; const filePaths: TStrings);
|
||||||
@ -1777,10 +1757,6 @@ type
|
|||||||
procedure doOnBeforeDownload(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback);
|
procedure doOnBeforeDownload(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback);
|
||||||
procedure doOnDownloadUpdated(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback);
|
procedure doOnDownloadUpdated(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback);
|
||||||
|
|
||||||
// ICefGeolocationHandler
|
|
||||||
function doOnRequestGeolocationPermission(const browser: ICefBrowser; const requestingUrl: ustring; requestId: Integer; const callback: ICefGeolocationCallback): Boolean;
|
|
||||||
procedure doOnCancelGeolocationPermission(const browser: ICefBrowser; requestId: Integer);
|
|
||||||
|
|
||||||
// ICefJsDialogHandler
|
// ICefJsDialogHandler
|
||||||
function doOnJsdialog(const browser: ICefBrowser; const originUrl: ustring; dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring; const callback: ICefJsDialogCallback; out suppressMessage: Boolean): Boolean;
|
function doOnJsdialog(const browser: ICefBrowser; const originUrl: ustring; dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring; const callback: ICefJsDialogCallback; out suppressMessage: Boolean): Boolean;
|
||||||
function doOnBeforeUnloadDialog(const browser: ICefBrowser; const messageText: ustring; isReload: Boolean; const callback: ICefJsDialogCallback): Boolean;
|
function doOnBeforeUnloadDialog(const browser: ICefBrowser; const messageText: ustring; isReload: Boolean; const callback: ICefJsDialogCallback): Boolean;
|
||||||
|
@ -94,9 +94,6 @@ var
|
|||||||
cef_zip_directory : function(const src_dir, dest_file : PCefString; include_hidden_files : integer): Integer; {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
|
cef_zip_directory : function(const src_dir, dest_file : PCefString; include_hidden_files : integer): Integer; {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
|
||||||
cef_load_crlsets_file : procedure(const path : PCefString); {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
|
cef_load_crlsets_file : procedure(const path : PCefString); {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
|
||||||
|
|
||||||
// /include/capi/cef_geolocation_capi.h
|
|
||||||
cef_get_geolocation : function(callback: PCefGetGeolocationCallback): Integer; {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
|
|
||||||
|
|
||||||
// /include/capi/cef_image_capi.h
|
// /include/capi/cef_image_capi.h
|
||||||
cef_image_create : function : PCefImage; {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
|
cef_image_create : function : PCefImage; {$IFDEF CPUX64}stdcall{$ELSE}cdecl{$ENDIF};
|
||||||
|
|
||||||
|
@ -53,7 +53,7 @@ uses
|
|||||||
{$ELSE}
|
{$ELSE}
|
||||||
Windows, Classes, SysUtils, Controls, ActiveX, Math,
|
Windows, Classes, SysUtils, Controls, ActiveX, Math,
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
uCEFTypes, uCEFInterfaces, uCEFLibFunctions, uCEFResourceHandler, uCEFGetGeolocationCallback,
|
uCEFTypes, uCEFInterfaces, uCEFLibFunctions, uCEFResourceHandler,
|
||||||
uCEFRegisterCDMCallback;
|
uCEFRegisterCDMCallback;
|
||||||
|
|
||||||
const
|
const
|
||||||
@ -192,8 +192,6 @@ procedure LogicalToDevice(var aRect : TCEFRect; const aDeviceScaleFactor : doubl
|
|||||||
function GetScreenDPI : integer;
|
function GetScreenDPI : integer;
|
||||||
function GetDeviceScaleFactor : single;
|
function GetDeviceScaleFactor : single;
|
||||||
|
|
||||||
function CefGetGeolocation(const aCallbackFunction : TOnLocationUpdate) : boolean;
|
|
||||||
|
|
||||||
procedure CefRegisterWidevineCdm(const path: ustring; const callback: ICefRegisterCdmCallback);
|
procedure CefRegisterWidevineCdm(const path: ustring; const callback: ICefRegisterCdmCallback);
|
||||||
procedure CefFastRegisterWidevineCdm(const path: ustring; const callback: TCefRegisterCDMProc);
|
procedure CefFastRegisterWidevineCdm(const path: ustring; const callback: TCefRegisterCDMProc);
|
||||||
|
|
||||||
@ -1238,14 +1236,6 @@ begin
|
|||||||
cef_load_crlsets_file(@TempPath);
|
cef_load_crlsets_file(@TempPath);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function CefGetGeolocation(const aCallbackFunction : TOnLocationUpdate) : boolean;
|
|
||||||
var
|
|
||||||
TempGeoCallBack : ICefGetGeolocationCallback;
|
|
||||||
begin
|
|
||||||
TempGeoCallBack := TCefFastGetGeolocationCallback.Create(aCallbackFunction);
|
|
||||||
Result := (cef_get_geolocation(TempGeoCallBack.Wrap) <> 0);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function CefIsKeyDown(aWparam : WPARAM) : boolean;
|
function CefIsKeyDown(aWparam : WPARAM) : boolean;
|
||||||
begin
|
begin
|
||||||
Result := (GetKeyState(aWparam) < 0);
|
Result := (GetKeyState(aWparam) < 0);
|
||||||
|
@ -63,7 +63,6 @@ type
|
|||||||
procedure OnBrowserCreated(const browser: ICefBrowser); virtual; abstract;
|
procedure OnBrowserCreated(const browser: ICefBrowser); virtual; abstract;
|
||||||
procedure OnBrowserDestroyed(const browser: ICefBrowser); virtual; abstract;
|
procedure OnBrowserDestroyed(const browser: ICefBrowser); virtual; abstract;
|
||||||
function GetLoadHandler: ICefLoadHandler; virtual;
|
function GetLoadHandler: ICefLoadHandler; virtual;
|
||||||
function OnBeforeNavigation(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; navigationType: TCefNavigationType; isRedirect: Boolean): Boolean; virtual;
|
|
||||||
procedure OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); virtual; abstract;
|
procedure OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); virtual; abstract;
|
||||||
procedure OnContextReleased(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); virtual; abstract;
|
procedure OnContextReleased(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); virtual; abstract;
|
||||||
procedure OnUncaughtException(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace); virtual; abstract;
|
procedure OnUncaughtException(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace); virtual; abstract;
|
||||||
@ -84,7 +83,6 @@ type
|
|||||||
procedure OnWebKitInitialized; override;
|
procedure OnWebKitInitialized; override;
|
||||||
procedure OnBrowserCreated(const browser: ICefBrowser); override;
|
procedure OnBrowserCreated(const browser: ICefBrowser); override;
|
||||||
procedure OnBrowserDestroyed(const browser: ICefBrowser); override;
|
procedure OnBrowserDestroyed(const browser: ICefBrowser); override;
|
||||||
function OnBeforeNavigation(const browser: ICefBrowser; const frame: ICefFrame; const request: ICefRequest; navigationType: TCefNavigationType; isRedirect: Boolean): Boolean; override;
|
|
||||||
procedure OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); override;
|
procedure OnContextCreated(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); override;
|
||||||
procedure OnContextReleased(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); override;
|
procedure OnContextReleased(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context); override;
|
||||||
procedure OnUncaughtException(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace); override;
|
procedure OnUncaughtException(const browser: ICefBrowser; const frame: ICefFrame; const context: ICefv8Context; const exception: ICefV8Exception; const stackTrace: ICefV8StackTrace); override;
|
||||||
@ -157,27 +155,6 @@ begin
|
|||||||
Result := nil;
|
Result := nil;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function cef_render_process_handler_on_before_navigation(self : PCefRenderProcessHandler;
|
|
||||||
browser : PCefBrowser;
|
|
||||||
frame : PCefFrame;
|
|
||||||
request : PCefRequest;
|
|
||||||
navigation_type : TCefNavigationType;
|
|
||||||
is_redirect : Integer): Integer; stdcall;
|
|
||||||
var
|
|
||||||
TempObject : TObject;
|
|
||||||
begin
|
|
||||||
TempObject := CefGetObject(self);
|
|
||||||
|
|
||||||
if (TempObject <> nil) and (TempObject is TCefRenderProcessHandlerOwn) then
|
|
||||||
Result := Ord(TCefRenderProcessHandlerOwn(TempObject).OnBeforeNavigation(TCefBrowserRef.UnWrap(browser),
|
|
||||||
TCefFrameRef.UnWrap(frame),
|
|
||||||
TCefRequestRef.UnWrap(request),
|
|
||||||
navigation_type,
|
|
||||||
is_redirect <> 0))
|
|
||||||
else
|
|
||||||
Result := 0;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure cef_render_process_handler_on_context_created(self : PCefRenderProcessHandler;
|
procedure cef_render_process_handler_on_context_created(self : PCefRenderProcessHandler;
|
||||||
browser : PCefBrowser;
|
browser : PCefBrowser;
|
||||||
frame : PCefFrame;
|
frame : PCefFrame;
|
||||||
@ -274,7 +251,6 @@ begin
|
|||||||
on_browser_created := cef_render_process_handler_on_browser_created;
|
on_browser_created := cef_render_process_handler_on_browser_created;
|
||||||
on_browser_destroyed := cef_render_process_handler_on_browser_destroyed;
|
on_browser_destroyed := cef_render_process_handler_on_browser_destroyed;
|
||||||
get_load_handler := cef_render_process_handler_get_load_handler;
|
get_load_handler := cef_render_process_handler_get_load_handler;
|
||||||
on_before_navigation := cef_render_process_handler_on_before_navigation;
|
|
||||||
on_context_created := cef_render_process_handler_on_context_created;
|
on_context_created := cef_render_process_handler_on_context_created;
|
||||||
on_context_released := cef_render_process_handler_on_context_released;
|
on_context_released := cef_render_process_handler_on_context_released;
|
||||||
on_uncaught_exception := cef_render_process_handler_on_uncaught_exception;
|
on_uncaught_exception := cef_render_process_handler_on_uncaught_exception;
|
||||||
@ -288,15 +264,6 @@ begin
|
|||||||
Result := nil;
|
Result := nil;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TCefRenderProcessHandlerOwn.OnBeforeNavigation(const browser : ICefBrowser;
|
|
||||||
const frame : ICefFrame;
|
|
||||||
const request : ICefRequest;
|
|
||||||
navigationType : TCefNavigationType;
|
|
||||||
isRedirect : Boolean): Boolean;
|
|
||||||
begin
|
|
||||||
Result := False;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TCefRenderProcessHandlerOwn.OnProcessMessageReceived(const browser : ICefBrowser;
|
function TCefRenderProcessHandlerOwn.OnProcessMessageReceived(const browser : ICefBrowser;
|
||||||
sourceProcess : TCefProcessId;
|
sourceProcess : TCefProcessId;
|
||||||
const aMessage : ICefProcessMessage): Boolean;
|
const aMessage : ICefProcessMessage): Boolean;
|
||||||
@ -347,17 +314,6 @@ begin
|
|||||||
if (FCefApp <> nil) then FCefApp.Internal_OnBrowserDestroyed(browser);
|
if (FCefApp <> nil) then FCefApp.Internal_OnBrowserDestroyed(browser);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TCefCustomRenderProcessHandler.OnBeforeNavigation(const browser : ICefBrowser;
|
|
||||||
const frame : ICefFrame;
|
|
||||||
const request : ICefRequest;
|
|
||||||
navigationType : TCefNavigationType;
|
|
||||||
isRedirect : Boolean): Boolean;
|
|
||||||
begin
|
|
||||||
Result := inherited OnBeforeNavigation(browser, frame, request, navigationType, isRedirect);
|
|
||||||
|
|
||||||
if (FCefApp <> nil) then FCefApp.Internal_OnBeforeNavigation(browser, frame, request, navigationType, isRedirect, Result);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCefCustomRenderProcessHandler.OnContextCreated(const browser : ICefBrowser;
|
procedure TCefCustomRenderProcessHandler.OnContextCreated(const browser : ICefBrowser;
|
||||||
const frame : ICefFrame;
|
const frame : ICefFrame;
|
||||||
const context : ICefv8Context);
|
const context : ICefv8Context);
|
||||||
|
@ -123,8 +123,6 @@ type
|
|||||||
PCefStreamWriter = ^TCefStreamWriter;
|
PCefStreamWriter = ^TCefStreamWriter;
|
||||||
PCefFindHandler = ^TCefFindHandler;
|
PCefFindHandler = ^TCefFindHandler;
|
||||||
PCefFocusHandler = ^TCefFocusHandler;
|
PCefFocusHandler = ^TCefFocusHandler;
|
||||||
PCefGeolocationHandler = ^TCefGeolocationHandler;
|
|
||||||
PCefGeolocationCallback = ^TCefGeolocationCallback;
|
|
||||||
PCefJsDialogHandler = ^TCefJsDialogHandler;
|
PCefJsDialogHandler = ^TCefJsDialogHandler;
|
||||||
PCefJsDialogCallback = ^TCefJsDialogCallback;
|
PCefJsDialogCallback = ^TCefJsDialogCallback;
|
||||||
PCefKeyboardHandler = ^TCefKeyboardHandler;
|
PCefKeyboardHandler = ^TCefKeyboardHandler;
|
||||||
@ -191,8 +189,6 @@ type
|
|||||||
PCefWebPluginInfoVisitor = ^TCefWebPluginInfoVisitor;
|
PCefWebPluginInfoVisitor = ^TCefWebPluginInfoVisitor;
|
||||||
PCefWebPluginUnstableCallback = ^TCefWebPluginUnstableCallback;
|
PCefWebPluginUnstableCallback = ^TCefWebPluginUnstableCallback;
|
||||||
PCefRegisterCDMCallback = ^TCefRegisterCDMCallback;
|
PCefRegisterCDMCallback = ^TCefRegisterCDMCallback;
|
||||||
PCefGetGeolocationCallback = ^TCefGetGeolocationCallback;
|
|
||||||
PCefGeoposition = ^TCefGeoposition;
|
|
||||||
PCefTaskRunner = ^TCefTaskRunner;
|
PCefTaskRunner = ^TCefTaskRunner;
|
||||||
PCefEndTracingCallback = ^TCefEndTracingCallback;
|
PCefEndTracingCallback = ^TCefEndTracingCallback;
|
||||||
PCefRequestContextSettings = ^TCefRequestContextSettings;
|
PCefRequestContextSettings = ^TCefRequestContextSettings;
|
||||||
@ -845,14 +841,6 @@ type
|
|||||||
DOM_EVENT_PHASE_BUBBLING
|
DOM_EVENT_PHASE_BUBBLING
|
||||||
);
|
);
|
||||||
|
|
||||||
// /include/internal/cef_types.h (cef_geoposition_error_code_t)
|
|
||||||
TCefGeopositionErrorCode = (
|
|
||||||
GEOPOSITON_ERROR_NONE,
|
|
||||||
GEOPOSITON_ERROR_PERMISSION_DENIED,
|
|
||||||
GEOPOSITON_ERROR_POSITION_UNAVAILABLE,
|
|
||||||
GEOPOSITON_ERROR_TIMEOUT
|
|
||||||
);
|
|
||||||
|
|
||||||
// /include/internal/cef_types.h (cef_button_state_t)
|
// /include/internal/cef_types.h (cef_button_state_t)
|
||||||
TCefButtonState = (
|
TCefButtonState = (
|
||||||
CEF_BUTTON_STATE_NORMAL,
|
CEF_BUTTON_STATE_NORMAL,
|
||||||
@ -1134,19 +1122,6 @@ type
|
|||||||
cont: procedure(self: PCefJsDialogCallback; success: Integer; const user_input: PCefString); stdcall;
|
cont: procedure(self: PCefJsDialogCallback; success: Integer; const user_input: PCefString); stdcall;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// /include/capi/cef_geolocation_handler_capi.h (cef_geolocation_handler_t)
|
|
||||||
TCefGeolocationHandler = record
|
|
||||||
base: TCefBaseRefCounted;
|
|
||||||
on_request_geolocation_permission: function(self: PCefGeolocationHandler; browser: PCefBrowser; const requesting_url: PCefString; request_id: Integer; callback: PCefGeolocationCallback): Integer; stdcall;
|
|
||||||
on_cancel_geolocation_permission: procedure(self: PCefGeolocationHandler; browser: PCefBrowser; request_id: Integer); stdcall;
|
|
||||||
end;
|
|
||||||
|
|
||||||
// /include/capi/cef_geolocation_handler_capi.h (cef_geolocation_callback_t)
|
|
||||||
TCefGeolocationCallback = record
|
|
||||||
base: TCefBaseRefCounted;
|
|
||||||
cont: procedure(self: PCefGeolocationCallback; allow: Integer); stdcall;
|
|
||||||
end;
|
|
||||||
|
|
||||||
// /include/internal/cef_types.h (cef_key_event_t)
|
// /include/internal/cef_types.h (cef_key_event_t)
|
||||||
TCefKeyEvent = record
|
TCefKeyEvent = record
|
||||||
kind: TCefKeyEventType;
|
kind: TCefKeyEventType;
|
||||||
@ -1439,26 +1414,6 @@ type
|
|||||||
on_cdm_registration_complete: procedure(self:PCefRegisterCDMCallback; result: TCefCDMRegistrationError; const error_message: PCefString); stdcall;
|
on_cdm_registration_complete: procedure(self:PCefRegisterCDMCallback; result: TCefCDMRegistrationError; const error_message: PCefString); stdcall;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
// /include/capi/cef_geolocation_capi.h (cef_get_geolocation_callback_t)
|
|
||||||
TCefGetGeolocationCallback = record
|
|
||||||
base: TCefBaseRefCounted;
|
|
||||||
on_location_update: procedure(self: PCefGetGeolocationCallback; const position: Pcefgeoposition); stdcall;
|
|
||||||
end;
|
|
||||||
|
|
||||||
// /include/internal/cef_types.h (cef_geoposition_t)
|
|
||||||
TCefGeoposition = record
|
|
||||||
latitude: Double;
|
|
||||||
longitude: Double;
|
|
||||||
altitude: Double;
|
|
||||||
accuracy: Double;
|
|
||||||
altitude_accuracy: Double;
|
|
||||||
heading: Double;
|
|
||||||
speed: Double;
|
|
||||||
timestamp: TCefTime;
|
|
||||||
error_code: TCefGeopositionErrorCode;
|
|
||||||
error_message: TCefString;
|
|
||||||
end;
|
|
||||||
|
|
||||||
// /include/capi/cef_thread_capi.h (cef_thread_t)
|
// /include/capi/cef_thread_capi.h (cef_thread_t)
|
||||||
TCefThread = record
|
TCefThread = record
|
||||||
base: TCefBaseRefCounted;
|
base: TCefBaseRefCounted;
|
||||||
@ -1543,7 +1498,6 @@ type
|
|||||||
on_browser_created: procedure(self: PCefRenderProcessHandler; browser: PCefBrowser); stdcall;
|
on_browser_created: procedure(self: PCefRenderProcessHandler; browser: PCefBrowser); stdcall;
|
||||||
on_browser_destroyed: procedure(self: PCefRenderProcessHandler; browser: PCefBrowser); stdcall;
|
on_browser_destroyed: procedure(self: PCefRenderProcessHandler; browser: PCefBrowser); stdcall;
|
||||||
get_load_handler: function(self: PCefRenderProcessHandler): PCefLoadHandler; stdcall;
|
get_load_handler: function(self: PCefRenderProcessHandler): PCefLoadHandler; stdcall;
|
||||||
on_before_navigation: function(self: PCefRenderProcessHandler; browser: PCefBrowser; frame: PCefFrame; request: PCefRequest; navigation_type: TCefNavigationType; is_redirect: Integer): Integer; stdcall;
|
|
||||||
on_context_created: procedure(self: PCefRenderProcessHandler; browser: PCefBrowser; frame: PCefFrame; context: PCefv8Context); stdcall;
|
on_context_created: procedure(self: PCefRenderProcessHandler; browser: PCefBrowser; frame: PCefFrame; context: PCefv8Context); stdcall;
|
||||||
on_context_released: procedure(self: PCefRenderProcessHandler; browser: PCefBrowser; frame: PCefFrame; context: PCefv8Context); stdcall;
|
on_context_released: procedure(self: PCefRenderProcessHandler; browser: PCefBrowser; frame: PCefFrame; context: PCefv8Context); stdcall;
|
||||||
on_uncaught_exception: procedure(self: PCefRenderProcessHandler; browser: PCefBrowser; frame: PCefFrame; context: PCefv8Context; exception: PCefV8Exception; stackTrace: PCefV8StackTrace); stdcall;
|
on_uncaught_exception: procedure(self: PCefRenderProcessHandler; browser: PCefBrowser; frame: PCefFrame; context: PCefv8Context; exception: PCefV8Exception; stackTrace: PCefV8StackTrace); stdcall;
|
||||||
@ -2449,7 +2403,6 @@ type
|
|||||||
get_drag_handler: function(self: PCefClient): PCefDragHandler; stdcall;
|
get_drag_handler: function(self: PCefClient): PCefDragHandler; stdcall;
|
||||||
get_find_handler: function(self: PCefClient): PCefFindHandler; stdcall;
|
get_find_handler: function(self: PCefClient): PCefFindHandler; stdcall;
|
||||||
get_focus_handler: function(self: PCefClient): PCefFocusHandler; stdcall;
|
get_focus_handler: function(self: PCefClient): PCefFocusHandler; stdcall;
|
||||||
get_geolocation_handler: function(self: PCefClient): PCefGeolocationHandler; stdcall;
|
|
||||||
get_jsdialog_handler: function(self: PCefClient): PCefJsDialogHandler; stdcall;
|
get_jsdialog_handler: function(self: PCefClient): PCefJsDialogHandler; stdcall;
|
||||||
get_keyboard_handler: function(self: PCefClient): PCefKeyboardHandler; stdcall;
|
get_keyboard_handler: function(self: PCefClient): PCefKeyboardHandler; stdcall;
|
||||||
get_life_span_handler: function(self: PCefClient): PCefLifeSpanHandler; stdcall;
|
get_life_span_handler: function(self: PCefClient): PCefLifeSpanHandler; stdcall;
|
||||||
|
@ -77,6 +77,8 @@ type
|
|||||||
property TabStop;
|
property TabStop;
|
||||||
property TabOrder;
|
property TabOrder;
|
||||||
property Visible;
|
property Visible;
|
||||||
|
property ShowHint;
|
||||||
|
property Hint;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
@ -137,10 +137,6 @@ type
|
|||||||
FOnBeforeDownload : TOnBeforeDownload;
|
FOnBeforeDownload : TOnBeforeDownload;
|
||||||
FOnDownloadUpdated : TOnDownloadUpdated;
|
FOnDownloadUpdated : TOnDownloadUpdated;
|
||||||
|
|
||||||
// ICefGeolocationHandler
|
|
||||||
FOnRequestGeolocationPermission : TOnRequestGeolocationPermission;
|
|
||||||
FOnCancelGeolocationPermission : TOnCancelGeolocationPermission;
|
|
||||||
|
|
||||||
// ICefJsDialogHandler
|
// ICefJsDialogHandler
|
||||||
FOnJsdialog : TOnJsdialog;
|
FOnJsdialog : TOnJsdialog;
|
||||||
FOnBeforeUnloadDialog : TOnBeforeUnloadDialog;
|
FOnBeforeUnloadDialog : TOnBeforeUnloadDialog;
|
||||||
@ -287,7 +283,6 @@ type
|
|||||||
function MustCreateKeyboardHandler : boolean; virtual;
|
function MustCreateKeyboardHandler : boolean; virtual;
|
||||||
function MustCreateDisplayHandler : boolean; virtual;
|
function MustCreateDisplayHandler : boolean; virtual;
|
||||||
function MustCreateDownloadHandler : boolean; virtual;
|
function MustCreateDownloadHandler : boolean; virtual;
|
||||||
function MustCreateGeolocationHandler : boolean; virtual;
|
|
||||||
function MustCreateJsDialogHandler : boolean; virtual;
|
function MustCreateJsDialogHandler : boolean; virtual;
|
||||||
function MustCreateDragHandler : boolean; virtual;
|
function MustCreateDragHandler : boolean; virtual;
|
||||||
function MustCreateFindHandler : boolean; virtual;
|
function MustCreateFindHandler : boolean; virtual;
|
||||||
@ -336,10 +331,6 @@ type
|
|||||||
procedure doOnBeforeDownload(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback); virtual;
|
procedure doOnBeforeDownload(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const suggestedName: ustring; const callback: ICefBeforeDownloadCallback); virtual;
|
||||||
procedure doOnDownloadUpdated(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback); virtual;
|
procedure doOnDownloadUpdated(const browser: ICefBrowser; const downloadItem: ICefDownloadItem; const callback: ICefDownloadItemCallback); virtual;
|
||||||
|
|
||||||
// ICefGeolocationHandler
|
|
||||||
function doOnRequestGeolocationPermission(const browser: ICefBrowser; const requestingUrl: ustring; requestId: Integer; const callback: ICefGeolocationCallback): Boolean; virtual;
|
|
||||||
procedure doOnCancelGeolocationPermission(const browser: ICefBrowser; requestId: Integer); virtual;
|
|
||||||
|
|
||||||
// ICefJsDialogHandler
|
// ICefJsDialogHandler
|
||||||
function doOnJsdialog(const browser: ICefBrowser; const originUrl: ustring; dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring; const callback: ICefJsDialogCallback; out suppressMessage: Boolean): Boolean; virtual;
|
function doOnJsdialog(const browser: ICefBrowser; const originUrl: ustring; dialogType: TCefJsDialogType; const messageText, defaultPromptText: ustring; const callback: ICefJsDialogCallback; out suppressMessage: Boolean): Boolean; virtual;
|
||||||
function doOnBeforeUnloadDialog(const browser: ICefBrowser; const messageText: ustring; isReload: Boolean; const callback: ICefJsDialogCallback): Boolean; virtual;
|
function doOnBeforeUnloadDialog(const browser: ICefBrowser; const messageText: ustring; isReload: Boolean; const callback: ICefJsDialogCallback): Boolean; virtual;
|
||||||
@ -595,10 +586,6 @@ type
|
|||||||
property OnBeforeDownload : TOnBeforeDownload read FOnBeforeDownload write FOnBeforeDownload;
|
property OnBeforeDownload : TOnBeforeDownload read FOnBeforeDownload write FOnBeforeDownload;
|
||||||
property OnDownloadUpdated : TOnDownloadUpdated read FOnDownloadUpdated write FOnDownloadUpdated;
|
property OnDownloadUpdated : TOnDownloadUpdated read FOnDownloadUpdated write FOnDownloadUpdated;
|
||||||
|
|
||||||
// ICefGeolocationHandler
|
|
||||||
property OnRequestGeolocationPermission : TOnRequestGeolocationPermission read FOnRequestGeolocationPermission write FOnRequestGeolocationPermission;
|
|
||||||
property OnCancelGeolocationPermission : TOnCancelGeolocationPermission read FOnCancelGeolocationPermission write FOnCancelGeolocationPermission;
|
|
||||||
|
|
||||||
// ICefJsDialogHandler
|
// ICefJsDialogHandler
|
||||||
property OnJsdialog : TOnJsdialog read FOnJsdialog write FOnJsdialog;
|
property OnJsdialog : TOnJsdialog read FOnJsdialog write FOnJsdialog;
|
||||||
property OnBeforeUnloadDialog : TOnBeforeUnloadDialog read FOnBeforeUnloadDialog write FOnBeforeUnloadDialog;
|
property OnBeforeUnloadDialog : TOnBeforeUnloadDialog read FOnBeforeUnloadDialog write FOnBeforeUnloadDialog;
|
||||||
@ -796,7 +783,6 @@ begin
|
|||||||
MustCreateKeyboardHandler,
|
MustCreateKeyboardHandler,
|
||||||
MustCreateDisplayHandler,
|
MustCreateDisplayHandler,
|
||||||
MustCreateDownloadHandler,
|
MustCreateDownloadHandler,
|
||||||
MustCreateGeolocationHandler,
|
|
||||||
MustCreateJsDialogHandler,
|
MustCreateJsDialogHandler,
|
||||||
True,
|
True,
|
||||||
True, // FMX always uses the OSR mode
|
True, // FMX always uses the OSR mode
|
||||||
@ -863,10 +849,6 @@ begin
|
|||||||
FOnBeforeDownload := nil;
|
FOnBeforeDownload := nil;
|
||||||
FOnDownloadUpdated := nil;
|
FOnDownloadUpdated := nil;
|
||||||
|
|
||||||
// ICefGeolocationHandler
|
|
||||||
FOnRequestGeolocationPermission := nil;
|
|
||||||
FOnCancelGeolocationPermission := nil;
|
|
||||||
|
|
||||||
// ICefJsDialogHandler
|
// ICefJsDialogHandler
|
||||||
FOnJsdialog := nil;
|
FOnJsdialog := nil;
|
||||||
FOnBeforeUnloadDialog := nil;
|
FOnBeforeUnloadDialog := nil;
|
||||||
@ -951,7 +933,7 @@ begin
|
|||||||
(FBrowser = nil) and
|
(FBrowser = nil) and
|
||||||
(FBrowserId = 0) and
|
(FBrowserId = 0) and
|
||||||
(GlobalCEFApp <> nil) and
|
(GlobalCEFApp <> nil) and
|
||||||
GlobalCEFApp.GlobalContextInitialized and
|
GlobalCEFApp.GlobalContextInitialized and
|
||||||
CreateClientHandler then
|
CreateClientHandler then
|
||||||
begin
|
begin
|
||||||
GetSettings(FBrowserSettings);
|
GetSettings(FBrowserSettings);
|
||||||
@ -2412,12 +2394,6 @@ begin
|
|||||||
assigned(FOnDownloadUpdated);
|
assigned(FOnDownloadUpdated);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TFMXChromium.MustCreateGeolocationHandler : boolean;
|
|
||||||
begin
|
|
||||||
Result := assigned(FOnRequestGeolocationPermission) or
|
|
||||||
assigned(FOnCancelGeolocationPermission);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TFMXChromium.MustCreateJsDialogHandler : boolean;
|
function TFMXChromium.MustCreateJsDialogHandler : boolean;
|
||||||
begin
|
begin
|
||||||
Result := assigned(FOnJsdialog) or
|
Result := assigned(FOnJsdialog) or
|
||||||
@ -2637,12 +2613,6 @@ begin
|
|||||||
if Assigned(FOnBeforeUnloadDialog) then FOnBeforeUnloadDialog(Self, browser, messageText, isReload, callback, Result);
|
if Assigned(FOnBeforeUnloadDialog) then FOnBeforeUnloadDialog(Self, browser, messageText, isReload, callback, Result);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TFMXChromium.doOnCancelGeolocationPermission(const browser : ICefBrowser; requestId : Integer);
|
|
||||||
begin
|
|
||||||
if Assigned(FOnCancelGeolocationPermission) then
|
|
||||||
FOnCancelGeolocationPermission(Self, browser, requestId);
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TFMXChromium.doOnCertificateError(const browser : ICefBrowser;
|
function TFMXChromium.doOnCertificateError(const browser : ICefBrowser;
|
||||||
certError : TCefErrorcode;
|
certError : TCefErrorcode;
|
||||||
const requestUrl : ustring;
|
const requestUrl : ustring;
|
||||||
@ -3010,17 +2980,6 @@ begin
|
|||||||
if Assigned(FOnRenderViewReady) then FOnRenderViewReady(Self, browser);
|
if Assigned(FOnRenderViewReady) then FOnRenderViewReady(Self, browser);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
function TFMXChromium.doOnRequestGeolocationPermission(const browser : ICefBrowser;
|
|
||||||
const requestingUrl : ustring;
|
|
||||||
requestId : Integer;
|
|
||||||
const callback : ICefGeolocationCallback): Boolean;
|
|
||||||
begin
|
|
||||||
Result := False;
|
|
||||||
|
|
||||||
if Assigned(FOnRequestGeolocationPermission) then
|
|
||||||
FOnRequestGeolocationPermission(Self, browser, requestingUrl, requestId, callback, Result);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TFMXChromium.doOnResetDialogState(const browser: ICefBrowser);
|
procedure TFMXChromium.doOnResetDialogState(const browser: ICefBrowser);
|
||||||
begin
|
begin
|
||||||
if Assigned(FOnResetDialogState) then FOnResetDialogState(Self, browser);
|
if Assigned(FOnResetDialogState) then FOnResetDialogState(Self, browser);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user