1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-11-23 21:34:53 +02:00

Update to CEF 106.1.0

This commit is contained in:
salvadordf
2022-10-14 16:35:50 +02:00
parent 23fdbadbdc
commit be3015fe1f
29 changed files with 176 additions and 79 deletions

View File

@@ -3,15 +3,15 @@ CEF4Delphi is an open source project created by Salvador Díaz Fau to embed Chro
CEF4Delphi is based on DCEF3 and fpCEF3. The original license of those projects still applies to CEF4Delphi. Read the license terms in the first lines of any *.pas file. CEF4Delphi is based on DCEF3 and fpCEF3. The original license of those projects still applies to CEF4Delphi. Read the license terms in the first lines of any *.pas file.
CEF4Delphi uses CEF 106.0.27 which includes Chromium 106.0.5249.103. CEF4Delphi uses CEF 106.1.0 which includes Chromium 106.0.5249.119.
The CEF binaries used by CEF4Delphi are available for download at Spotify : The CEF binaries used by CEF4Delphi are available for download at Spotify :
* [Windows 32 bits](https://cef-builds.spotifycdn.com/cef_binary_106.0.27%2Bg20ed841%2Bchromium-106.0.5249.103_windows32.tar.bz2) * [Windows 32 bits](https://cef-builds.spotifycdn.com/cef_binary_106.1.0%2Bg30ad805%2Bchromium-106.0.5249.119_windows32.tar.bz2)
* [Windows 64 bits](https://cef-builds.spotifycdn.com/cef_binary_106.0.27%2Bg20ed841%2Bchromium-106.0.5249.103_windows64.tar.bz2) * [Windows 64 bits](https://cef-builds.spotifycdn.com/cef_binary_106.1.0%2Bg30ad805%2Bchromium-106.0.5249.119_windows64.tar.bz2)
* [Linux x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_106.0.27%2Bg20ed841%2Bchromium-106.0.5249.103_linux64.tar.bz2) * [Linux x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_106.1.0%2Bg30ad805%2Bchromium-106.0.5249.119_linux64.tar.bz2)
* [Linux ARM 32 bits](https://cef-builds.spotifycdn.com/cef_binary_106.0.27%2Bg20ed841%2Bchromium-106.0.5249.103_linuxarm.tar.bz2) * [Linux ARM 32 bits](https://cef-builds.spotifycdn.com/cef_binary_106.1.0%2Bg30ad805%2Bchromium-106.0.5249.119_linuxarm.tar.bz2)
* [Linux ARM 64 bits](https://cef-builds.spotifycdn.com/cef_binary_106.0.27%2Bg20ed841%2Bchromium-106.0.5249.103_linuxarm64.tar.bz2) * [Linux ARM 64 bits](https://cef-builds.spotifycdn.com/cef_binary_106.1.0%2Bg30ad805%2Bchromium-106.0.5249.119_linuxarm64.tar.bz2)
* [MacOS x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_106.0.27%2Bg20ed841%2Bchromium-106.0.5249.103_macosx64.tar.bz2) * [MacOS x86 64 bits](https://cef-builds.spotifycdn.com/cef_binary_106.1.0%2Bg30ad805%2Bchromium-106.0.5249.119_macosx64.tar.bz2)
CEF4Delphi was developed and tested on Delphi 11.2 and it has been tested in Delphi 7, Delphi XE, Delphi 10, Delphi 10.2, Delphi 10.3, Delphi 10.4 and Lazarus 2.2.4/FPC 3.2.2. CEF4Delphi includes VCL, FireMonkey (FMX) and Lazarus components. CEF4Delphi was developed and tested on Delphi 11.2 and it has been tested in Delphi 7, Delphi XE, Delphi 10, Delphi 10.2, Delphi 10.3, Delphi 10.4 and Lazarus 2.2.4/FPC 3.2.2. CEF4Delphi includes VCL, FireMonkey (FMX) and Lazarus components.

View File

@@ -21,7 +21,7 @@
</CompilerOptions> </CompilerOptions>
<Description Value="CEF4Delphi is an open source project created by Salvador Díaz Fau to embed Chromium-based browsers in applications made with Delphi or Lazarus/FPC."/> <Description Value="CEF4Delphi is an open source project created by Salvador Díaz Fau to embed Chromium-based browsers in applications made with Delphi or Lazarus/FPC."/>
<License Value="MPL 1.1"/> <License Value="MPL 1.1"/>
<Version Major="106" Release="27"/> <Version Major="106" Minor="1"/>
<Files Count="210"> <Files Count="210">
<Item1> <Item1>
<Filename Value="..\source\uCEFAccessibilityHandler.pas"/> <Filename Value="..\source\uCEFAccessibilityHandler.pas"/>

View File

@@ -67,14 +67,14 @@ uses
const const
CEF_SUPPORTED_VERSION_MAJOR = 106; CEF_SUPPORTED_VERSION_MAJOR = 106;
CEF_SUPPORTED_VERSION_MINOR = 0; CEF_SUPPORTED_VERSION_MINOR = 1;
CEF_SUPPORTED_VERSION_RELEASE = 27; CEF_SUPPORTED_VERSION_RELEASE = 0;
CEF_SUPPORTED_VERSION_BUILD = 0; CEF_SUPPORTED_VERSION_BUILD = 0;
CEF_CHROMEELF_VERSION_MAJOR = CEF_SUPPORTED_VERSION_MAJOR; CEF_CHROMEELF_VERSION_MAJOR = CEF_SUPPORTED_VERSION_MAJOR;
CEF_CHROMEELF_VERSION_MINOR = 0; CEF_CHROMEELF_VERSION_MINOR = 0;
CEF_CHROMEELF_VERSION_RELEASE = 5249; CEF_CHROMEELF_VERSION_RELEASE = 5249;
CEF_CHROMEELF_VERSION_BUILD = 103; CEF_CHROMEELF_VERSION_BUILD = 119;
{$IFDEF MSWINDOWS} {$IFDEF MSWINDOWS}
LIBCEF_DLL = 'libcef.dll'; LIBCEF_DLL = 'libcef.dll';
@@ -3146,17 +3146,21 @@ end;
function TCefApplicationCore.Load_cef_display_capi_h : boolean; function TCefApplicationCore.Load_cef_display_capi_h : boolean;
begin begin
{$IFDEF FPC}Pointer({$ENDIF}cef_display_get_primary{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_get_primary'); {$IFDEF FPC}Pointer({$ENDIF}cef_display_get_primary{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_get_primary');
{$IFDEF FPC}Pointer({$ENDIF}cef_display_get_nearest_point{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_get_nearest_point'); {$IFDEF FPC}Pointer({$ENDIF}cef_display_get_nearest_point{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_get_nearest_point');
{$IFDEF FPC}Pointer({$ENDIF}cef_display_get_matching_bounds{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_get_matching_bounds'); {$IFDEF FPC}Pointer({$ENDIF}cef_display_get_matching_bounds{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_get_matching_bounds');
{$IFDEF FPC}Pointer({$ENDIF}cef_display_get_count{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_get_count'); {$IFDEF FPC}Pointer({$ENDIF}cef_display_get_count{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_get_count');
{$IFDEF FPC}Pointer({$ENDIF}cef_display_get_alls{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_get_alls'); {$IFDEF FPC}Pointer({$ENDIF}cef_display_get_alls{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_get_alls');
{$IFDEF FPC}Pointer({$ENDIF}cef_display_convert_screen_point_to_pixels{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_convert_screen_point_to_pixels');
{$IFDEF FPC}Pointer({$ENDIF}cef_display_convert_screen_point_from_pixels{$IFDEF FPC}){$ENDIF} := GetProcAddress(FLibHandle, 'cef_display_convert_screen_point_from_pixels');
Result := assigned(cef_display_get_primary) and Result := assigned(cef_display_get_primary) and
assigned(cef_display_get_nearest_point) and assigned(cef_display_get_nearest_point) and
assigned(cef_display_get_matching_bounds) and assigned(cef_display_get_matching_bounds) and
assigned(cef_display_get_count) and assigned(cef_display_get_count) and
assigned(cef_display_get_alls); assigned(cef_display_get_alls) and
assigned(cef_display_convert_screen_point_to_pixels) and
assigned(cef_display_convert_screen_point_from_pixels);
end; end;
function TCefApplicationCore.Load_cef_label_button_capi_h : boolean; function TCefApplicationCore.Load_cef_label_button_capi_h : boolean;

View File

@@ -57,10 +57,10 @@ uses
LCLProc, LCLType, LCLIntf, LResources, InterfaceBase, LCLProc, LCLType, LCLIntf, LResources, InterfaceBase,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFViewsFrameworkEvents, uCEFViewComponent; uCEFTypes, uCEFInterfaces, uCEFConstants, uCEFViewsFrameworkEvents, uCEFViewComponent;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TCEFBrowserViewComponent = class(TCEFViewComponent, ICefBrowserViewDelegateEvents) TCEFBrowserViewComponent = class(TCEFViewComponent, ICefBrowserViewDelegateEvents)
protected protected
FBrowserView : ICefBrowserView; FBrowserView : ICefBrowserView;

View File

@@ -67,7 +67,7 @@ type
TOnHandledMessageEvent = procedure(Sender: TObject; var aMessage: TMessage; var aHandled : boolean) of object; TOnHandledMessageEvent = procedure(Sender: TObject; var aMessage: TMessage; var aHandled : boolean) of object;
{$ENDIF} {$ENDIF}
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows)]{$ENDIF}{$ENDIF}
TBufferPanel = class(TCustomPanel) TBufferPanel = class(TCustomPanel)
protected protected
FScanlineSize : integer; FScanlineSize : integer;

View File

@@ -59,10 +59,10 @@ uses
Messages, Messages,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFChromiumCore; uCEFConstants, uCEFTypes, uCEFInterfaces, uCEFChromiumCore;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows)]{$ENDIF}{$ENDIF}
TChromium = class(TChromiumCore) TChromium = class(TChromiumCore)
protected protected
function GetParentFormHandle : TCefWindowHandle; override; function GetParentFormHandle : TCefWindowHandle; override;

View File

@@ -72,7 +72,6 @@ uses
type type
TBrowserInfoList = class; TBrowserInfoList = class;
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF}
TChromiumCore = class(TComponent, IChromiumEvents) TChromiumCore = class(TComponent, IChromiumEvents)
protected protected
{$IFDEF MSWINDOWS} {$IFDEF MSWINDOWS}

View File

@@ -63,7 +63,7 @@ uses
uCEFWinControl, uCEFLinkedWinControlBase; uCEFWinControl, uCEFLinkedWinControlBase;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows)]{$ENDIF}{$ENDIF}
{ TChromiumWindow } { TChromiumWindow }

View File

@@ -51,9 +51,9 @@ interface
{$IFDEF MSWINDOWS} {$IFDEF MSWINDOWS}
uses uses
{$IFDEF DELPHI16_UP} {$IFDEF DELPHI16_UP}
Winapi.Messages; System.Classes, Winapi.Messages;
{$ELSE} {$ELSE}
Messages; Classes, Messages;
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
@@ -806,6 +806,43 @@ const
CEF4DELPHI_ALLOC_PADDING = Pointer($44332211); // Some random value used as padding CEF4DELPHI_ALLOC_PADDING = Pointer($44332211); // Some random value used as padding
{$ENDIF} {$ENDIF}
// If any of the platform IDs are not defined then we set them as 0 to avoid build errors on older Delphi versions.
{$IF NOT DECLARED(pidWin32)}
pidWin32 = 0;
{$IFEND}
{$IF NOT DECLARED(pidWin64)}
pidWin64 = 0;
{$IFEND}
{$IF NOT DECLARED(pfidWindows)}
pfidWindows = pidWin32 or pidWin64;
{$IFEND}
{$IF NOT DECLARED(pidOSX32)}
pidOSX32 = 0;
{$IFEND}
{$IF NOT DECLARED(pidOSX64)}
pidOSX64 = 0;
{$IFEND}
{$IF NOT DECLARED(pidOSXArm64)}
pidOSXArm64 = 0;
{$IFEND}
{$IF NOT DECLARED(pfidOSX)}
pfidOSX = pidOSX32 or pidOSX64 or pidOSXArm64;
{$IFEND}
{$IF NOT DECLARED(pidLinux64)}
pidLinux64 = 0;
{$IFEND}
{$IF NOT DECLARED(pfidLinux)}
pfidLinux = pidLinux64;
{$IFEND}
implementation implementation
end. end.

View File

@@ -50,9 +50,9 @@ interface
uses uses
{$IFDEF DELPHI16_UP} {$IFDEF DELPHI16_UP}
System.Classes, System.SysUtils, System.Classes, System.SysUtils, System.Types,
{$ELSE} {$ELSE}
Classes, SysUtils, Classes, SysUtils, Types,
{$ENDIF} {$ENDIF}
uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes; uCEFBaseRefCounted, uCEFInterfaces, uCEFTypes;
@@ -74,12 +74,14 @@ type
class function MatchingBounds(const bounds: TCefRect; input_pixel_coords: boolean): ICefDisplay; class function MatchingBounds(const bounds: TCefRect; input_pixel_coords: boolean): ICefDisplay;
class function GetCount: NativeUInt; class function GetCount: NativeUInt;
class function GetAlls(var aDisplayArray : TCefDisplayArray) : boolean; class function GetAlls(var aDisplayArray : TCefDisplayArray) : boolean;
class function ScreenPointToPixels(const aScreenPoint : TPoint) : TPoint;
class function ScreenPointFromPixels(const aPixelsPoint : TPoint) : TPoint;
end; end;
implementation implementation
uses uses
uCEFLibFunctions; uCEFLibFunctions, uCEFApplicationCore;
function TCefDisplayRef.GetID : int64; function TCefDisplayRef.GetID : int64;
begin begin
@@ -126,22 +128,34 @@ end;
class function TCefDisplayRef.Primary: ICefDisplay; class function TCefDisplayRef.Primary: ICefDisplay;
begin begin
Result := UnWrap(cef_display_get_primary()); if assigned(GlobalCEFApp) and GlobalCEFApp.LibLoaded then
Result := UnWrap(cef_display_get_primary())
else
Result := nil;
end; end;
class function TCefDisplayRef.NearestPoint(const point: TCefPoint; input_pixel_coords: boolean): ICefDisplay; class function TCefDisplayRef.NearestPoint(const point: TCefPoint; input_pixel_coords: boolean): ICefDisplay;
begin begin
Result := UnWrap(cef_display_get_nearest_point(@point, ord(input_pixel_coords))); if assigned(GlobalCEFApp) and GlobalCEFApp.LibLoaded then
Result := UnWrap(cef_display_get_nearest_point(@point, ord(input_pixel_coords)))
else
Result := nil;
end; end;
class function TCefDisplayRef.MatchingBounds(const bounds: TCefRect; input_pixel_coords: boolean): ICefDisplay; class function TCefDisplayRef.MatchingBounds(const bounds: TCefRect; input_pixel_coords: boolean): ICefDisplay;
begin begin
Result := UnWrap(cef_display_get_matching_bounds(@bounds, ord(input_pixel_coords))); if assigned(GlobalCEFApp) and GlobalCEFApp.LibLoaded then
Result := UnWrap(cef_display_get_matching_bounds(@bounds, ord(input_pixel_coords)))
else
Result := nil;
end; end;
class function TCefDisplayRef.GetCount: NativeUInt; class function TCefDisplayRef.GetCount: NativeUInt;
begin begin
Result := cef_display_get_count(); if assigned(GlobalCEFApp) and GlobalCEFApp.LibLoaded then
Result := cef_display_get_count()
else
Result := 0;
end; end;
class function TCefDisplayRef.GetAlls(var aDisplayArray : TCefDisplayArray) : boolean; class function TCefDisplayRef.GetAlls(var aDisplayArray : TCefDisplayArray) : boolean;
@@ -152,7 +166,10 @@ var
displays: PPCefDisplay; displays: PPCefDisplay;
TempSize : integer; TempSize : integer;
begin begin
Result := False; Result := False;
if (GlobalCEFApp = nil) or not(GlobalCEFApp.LibLoaded) then
exit;
displaysCount := GetCount; displaysCount := GetCount;
if (displaysCount > 0) then if (displaysCount > 0) then
@@ -178,4 +195,42 @@ begin
end; end;
end; end;
class function TCefDisplayRef.ScreenPointToPixels(const aScreenPoint : TPoint) : TPoint;
var
TempScreenPt, TempPixelsPt : TCefPoint;
begin
if assigned(GlobalCEFApp) and GlobalCEFApp.LibLoaded then
begin
TempScreenPt.x := aScreenPoint.X;
TempScreenPt.y := aScreenPoint.Y;
TempPixelsPt := cef_display_convert_screen_point_to_pixels(@TempScreenPt);
Result.X := TempPixelsPt.x;
Result.Y := TempPixelsPt.y;
end
else
begin
Result.X := aScreenPoint.X;
Result.X := aScreenPoint.Y;
end;
end;
class function TCefDisplayRef.ScreenPointFromPixels(const aPixelsPoint : TPoint) : TPoint;
var
TempScreenPt, TempPixelsPt : TCefPoint;
begin
if assigned(GlobalCEFApp) and GlobalCEFApp.LibLoaded then
begin
TempPixelsPt.x := aPixelsPoint.X;
TempPixelsPt.y := aPixelsPoint.Y;
TempScreenPt := cef_display_convert_screen_point_from_pixels(@TempPixelsPt);
Result.X := TempScreenPt.x;
Result.Y := TempScreenPt.y;
end
else
begin
Result.X := aPixelsPoint.X;
Result.X := aPixelsPoint.Y;
end;
end;
end. end.

View File

@@ -52,12 +52,12 @@ uses
FMX.Graphics, FMX.Graphics,
{$ENDIF} {$ENDIF}
FMX.Types, FMX.Controls, FMX.Forms, FMX.Types, FMX.Controls, FMX.Forms,
uCEFTypes; uCEFTypes, uCEFConstants;
type type
TDialogKeyEvent = procedure(Sender: TObject; var Key: Word; Shift: TShiftState) of object; TDialogKeyEvent = procedure(Sender: TObject; var Key: Word; Shift: TShiftState) of object;
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TFMXBufferPanel = class(TControl) TFMXBufferPanel = class(TControl)
protected protected
{$IFDEF MSWINDOWS} {$IFDEF MSWINDOWS}

View File

@@ -53,10 +53,10 @@ uses
{$IFDEF DELPHI19_UP} {$IFDEF DELPHI19_UP}
FMX.Graphics, FMX.Graphics,
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFChromiumCore; uCEFTypes, uCEFInterfaces, uCEFConstants, uCEFChromiumCore;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TFMXChromium = class(TChromiumCore, IChromiumEvents) TFMXChromium = class(TChromiumCore, IChromiumEvents)
protected protected
function GetParentFormHandle : TCefWindowHandle; override; function GetParentFormHandle : TCefWindowHandle; override;

View File

@@ -49,10 +49,11 @@ uses
{$IFDEF MSWINDOWS} {$IFDEF MSWINDOWS}
WinApi.Windows, WinApi.Windows,
{$ENDIF} {$ENDIF}
FMX.Controls, FMX.Types, FMX.Forms; FMX.Controls, FMX.Types, FMX.Forms,
uCEFConstants;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TFMXWindowParent = class(TCommonCustomForm) TFMXWindowParent = class(TCommonCustomForm)
protected protected
{$IFDEF MSWINDOWS} {$IFDEF MSWINDOWS}

View File

@@ -50,7 +50,7 @@ uses
uCEFConstants, uCEFWorkSchedulerQueueThread, uCEFWorkSchedulerThread; uCEFConstants, uCEFWorkSchedulerQueueThread, uCEFWorkSchedulerThread;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TFMXWorkScheduler = class(TComponent) TFMXWorkScheduler = class(TComponent)
protected protected
FThread : TCEFWorkSchedulerThread; FThread : TCEFWorkSchedulerThread;

View File

@@ -57,10 +57,10 @@ uses
LCLProc, LCLType, LCLIntf, LResources, InterfaceBase, LCLProc, LCLType, LCLIntf, LResources, InterfaceBase,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFViewsFrameworkEvents, uCEFButtonComponent; uCEFTypes, uCEFInterfaces, uCEFConstants, uCEFViewsFrameworkEvents, uCEFButtonComponent;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TCEFLabelButtonComponent = class(TCEFButtonComponent) TCEFLabelButtonComponent = class(TCEFButtonComponent)
protected protected
FLabelButton : ICefLabelButton; FLabelButton : ICefLabelButton;

View File

@@ -254,11 +254,13 @@ var
cef_browser_view_get_for_browser : function(browser: PCefBrowser): PCefBrowserView; cdecl; cef_browser_view_get_for_browser : function(browser: PCefBrowser): PCefBrowserView; cdecl;
// /include/capi/views/cef_display_capi.h // /include/capi/views/cef_display_capi.h
cef_display_get_primary : function : PCefDisplay; cdecl; cef_display_get_primary : function : PCefDisplay; cdecl;
cef_display_get_nearest_point : function(const point: PCefPoint; input_pixel_coords: Integer): PCefDisplay; cdecl; cef_display_get_nearest_point : function(const point: PCefPoint; input_pixel_coords: Integer): PCefDisplay; cdecl;
cef_display_get_matching_bounds : function(const bounds: PCefRect; input_pixel_coords: Integer): PCefDisplay; cdecl; cef_display_get_matching_bounds : function(const bounds: PCefRect; input_pixel_coords: Integer): PCefDisplay; cdecl;
cef_display_get_count : function : NativeUInt; cdecl; cef_display_get_count : function : NativeUInt; cdecl;
cef_display_get_alls : procedure(displaysCount: PNativeUInt; displays: PPCefDisplay); cdecl; cef_display_get_alls : procedure(displaysCount: PNativeUInt; displays: PPCefDisplay); cdecl;
cef_display_convert_screen_point_to_pixels : function(const point: PCefPoint): TCefPoint; cdecl;
cef_display_convert_screen_point_from_pixels : function(const point: PCefPoint): TCefPoint; cdecl;
// /include/capi/views/cef_label_button_capi.h // /include/capi/views/cef_label_button_capi.h
cef_label_button_create : function(delegate: PCefButtonDelegate; const text: PCefString): PCefLabelButton; cdecl; cef_label_button_create : function(delegate: PCefButtonDelegate; const text: PCefString): PCefLabelButton; cdecl;

View File

@@ -61,16 +61,13 @@ uses
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFWinControl, uCEFTypes, uCEFInterfaces, uCEFChromium, uCEFWinControl, uCEFTypes, uCEFInterfaces, uCEFChromium,
uCEFLinkedWinControlBase; uCEFConstants, uCEFLinkedWinControlBase;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows)]{$ENDIF}{$ENDIF}
{ TCEFLinkedWindowParent }
TCEFLinkedWindowParent = class(TCEFLinkedWinControlBase) TCEFLinkedWindowParent = class(TCEFLinkedWinControlBase)
protected protected
FChromium : TChromium; FChromium : TChromium;
function GetChromium: TChromium; override; function GetChromium: TChromium; override;
procedure SetChromium(aValue : TChromium); procedure SetChromium(aValue : TChromium);
@@ -92,8 +89,7 @@ procedure Register;
implementation implementation
uses uses
uCEFMiscFunctions, uCEFClient, uCEFConstants, uCEFLibFunctions, uCEFMiscFunctions, uCEFClient, uCEFLibFunctions, uCEFApplication;
uCEFApplication;
constructor TCEFLinkedWindowParent.Create(AOwner : TComponent); constructor TCEFLinkedWindowParent.Create(AOwner : TComponent);
begin begin

View File

@@ -57,10 +57,10 @@ uses
LCLProc, LCLType, LCLIntf, LResources, InterfaceBase, LCLProc, LCLType, LCLIntf, LResources, InterfaceBase,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFViewsFrameworkEvents, uCEFLabelButtonComponent; uCEFTypes, uCEFInterfaces, uCEFConstants, uCEFViewsFrameworkEvents, uCEFLabelButtonComponent;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TCEFMenuButtonComponent = class(TCEFLabelButtonComponent, ICefMenuButtonDelegateEvents) TCEFMenuButtonComponent = class(TCEFLabelButtonComponent, ICefMenuButtonDelegateEvents)
protected protected
FMenuButton : ICefMenuButton; FMenuButton : ICefMenuButton;

View File

@@ -57,10 +57,10 @@ uses
LCLProc, LCLType, LCLIntf, LResources, InterfaceBase, LCLProc, LCLType, LCLIntf, LResources, InterfaceBase,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFViewsFrameworkEvents, uCEFViewComponent; uCEFTypes, uCEFInterfaces, uCEFConstants, uCEFViewsFrameworkEvents, uCEFViewComponent;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TCEFPanelComponent = class(TCEFViewComponent, ICefPanelDelegateEvents) TCEFPanelComponent = class(TCEFViewComponent, ICefPanelDelegateEvents)
protected protected
FPanel : ICefPanel; FPanel : ICefPanel;

View File

@@ -57,10 +57,10 @@ uses
LCLProc, LCLType, LCLIntf, LResources, InterfaceBase, LCLProc, LCLType, LCLIntf, LResources, InterfaceBase,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFViewsFrameworkEvents, uCEFViewComponent; uCEFTypes, uCEFInterfaces, uCEFConstants, uCEFViewsFrameworkEvents, uCEFViewComponent;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TCEFScrollViewComponent = class(TCEFViewComponent) TCEFScrollViewComponent = class(TCEFViewComponent)
protected protected
FScrollView : ICefScrollView; FScrollView : ICefScrollView;

View File

@@ -65,7 +65,7 @@ uses
Messages, Messages,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces; uCEFTypes, uCEFInterfaces, uCEFConstants;
const const
CEFSENTINEL_DEFAULT_DELAYPERPROCMS = 200; CEFSENTINEL_DEFAULT_DELAYPERPROCMS = 200;
@@ -77,7 +77,7 @@ const
type type
TSentinelStatus = (ssIdle, ssInitialDelay, ssCheckingChildren, ssClosing); TSentinelStatus = (ssIdle, ssInitialDelay, ssCheckingChildren, ssClosing);
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TCEFSentinel = class(TComponent) TCEFSentinel = class(TComponent)
protected protected
{$IFDEF MSWINDOWS} {$IFDEF MSWINDOWS}
@@ -133,7 +133,7 @@ procedure Register;
implementation implementation
uses uses
uCEFLibFunctions, uCEFApplicationCore, uCEFMiscFunctions, uCEFConstants; uCEFLibFunctions, uCEFApplicationCore, uCEFMiscFunctions;
constructor TCEFSentinel.Create(AOwner: TComponent); constructor TCEFSentinel.Create(AOwner: TComponent);
begin begin

View File

@@ -60,7 +60,7 @@ uses
Messages, Messages,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFServer, uCEFServerEvents, uCEFServerHandler; uCEFTypes, uCEFInterfaces, uCEFConstants, uCEFServer, uCEFServerEvents, uCEFServerHandler;
const const
DEFAULT_CEFSERVER_ADDRESS = '127.0.0.1'; DEFAULT_CEFSERVER_ADDRESS = '127.0.0.1';
@@ -68,7 +68,7 @@ const
DEFAULT_CEFSERVER_BACKLOG = 10; DEFAULT_CEFSERVER_BACKLOG = 10;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TCEFServerComponent = class(TComponent, IServerEvents) TCEFServerComponent = class(TComponent, IServerEvents)
protected protected
FHandler : ICefServerHandler; FHandler : ICefServerHandler;

View File

@@ -57,10 +57,10 @@ uses
LCLProc, LCLType, LCLIntf, LResources, InterfaceBase, LCLProc, LCLType, LCLIntf, LResources, InterfaceBase,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFViewsFrameworkEvents, uCEFViewComponent; uCEFTypes, uCEFInterfaces, uCEFConstants, uCEFViewsFrameworkEvents, uCEFViewComponent;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TCEFTextfieldComponent = class(TCEFViewComponent, ICefTextfieldDelegateEvents) TCEFTextfieldComponent = class(TCEFViewComponent, ICefTextfieldDelegateEvents)
protected protected
FTextfield : ICefTextfield; FTextfield : ICefTextfield;

View File

@@ -60,10 +60,10 @@ uses
Messages, Messages,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFUrlRequestClientEvents, uCEFUrlrequestClient, uCEFUrlRequest; uCEFTypes, uCEFInterfaces, uCEFConstants, uCEFUrlRequestClientEvents, uCEFUrlrequestClient, uCEFUrlRequest;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TCEFUrlRequestClientComponent = class(TComponent, ICEFUrlRequestClientEvents) TCEFUrlRequestClientComponent = class(TComponent, ICEFUrlRequestClientEvents)
protected protected
FClient : ICefUrlrequestClient; FClient : ICefUrlrequestClient;

View File

@@ -101,6 +101,9 @@ type
property OnDragOver; property OnDragOver;
property OnStartDrag; property OnStartDrag;
property OnEndDrag; property OnEndDrag;
{$IFNDEF FPC}
property OnCanResize;
{$ENDIF}
{$IFDEF DELPHI14_UP} {$IFDEF DELPHI14_UP}
property Touch; property Touch;
property OnGesture; property OnGesture;

View File

@@ -57,10 +57,10 @@ uses
LCLProc, LCLType, LCLIntf, LResources, InterfaceBase, LCLProc, LCLType, LCLIntf, LResources, InterfaceBase,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFTypes, uCEFInterfaces, uCEFViewsFrameworkEvents, uCEFPanelComponent; uCEFTypes, uCEFInterfaces, uCEFConstants, uCEFViewsFrameworkEvents, uCEFPanelComponent;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows or pfidOSX or pfidLinux)]{$ENDIF}{$ENDIF}
TCEFWindowComponent = class(TCEFPanelComponent, ICefWindowDelegateEvents) TCEFWindowComponent = class(TCEFPanelComponent, ICefWindowDelegateEvents)
protected protected
FWindow : ICefWindow; FWindow : ICefWindow;

View File

@@ -59,10 +59,10 @@ uses
Messages, Messages,
{$ENDIF} {$ENDIF}
{$ENDIF} {$ENDIF}
uCEFWinControl, uCEFTypes, uCEFInterfaces; uCEFWinControl, uCEFTypes, uCEFInterfaces, uCEFConstants;
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows)]{$ENDIF}{$ENDIF}
TCEFWindowParent = class(TCEFWinControl) TCEFWindowParent = class(TCEFWinControl)
protected protected
{$IFDEF MSWINDOWS} {$IFDEF MSWINDOWS}
@@ -77,7 +77,7 @@ procedure Register;
implementation implementation
uses uses
uCEFMiscFunctions, uCEFClient, uCEFConstants; uCEFMiscFunctions, uCEFClient;
{$IFDEF MSWINDOWS} {$IFDEF MSWINDOWS}
procedure TCEFWindowParent.WndProc(var aMessage: TMessage); procedure TCEFWindowParent.WndProc(var aMessage: TMessage);

View File

@@ -63,7 +63,7 @@ uses
type type
{$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pidWin32 or pidWin64)]{$ENDIF}{$ENDIF} {$IFNDEF FPC}{$IFDEF DELPHI16_UP}[ComponentPlatformsAttribute(pfidWindows)]{$ENDIF}{$ENDIF}
TCEFWorkScheduler = class(TComponent) TCEFWorkScheduler = class(TComponent)
protected protected
FThread : TCEFWorkSchedulerThread; FThread : TCEFWorkSchedulerThread;

View File

@@ -2,9 +2,9 @@
"UpdateLazPackages" : [ "UpdateLazPackages" : [
{ {
"ForceNotify" : true, "ForceNotify" : true,
"InternalVersion" : 439, "InternalVersion" : 440,
"Name" : "cef4delphi_lazarus.lpk", "Name" : "cef4delphi_lazarus.lpk",
"Version" : "106.0.27.0" "Version" : "106.1.0"
} }
], ],
"UpdatePackageData" : { "UpdatePackageData" : {