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

Added GTKBrowser demo. (work in progress)

Added GlobalCEFApp.OzonePlatform
Added TCefOzonePlatform
Added gdk_x11_display_get_xdisplay
Added gdk_x11_screen_get_screen_number
Added gdk_x11_visual_get_xvisual
Added UseDefaultX11VisualForGtk
Added FlushDisplay
Fixed TCEFWindowInfoWrapper.AsChild in GTK3
This commit is contained in:
Salvador Díaz Fau
2025-09-07 16:59:42 +02:00
parent cd67fb9d23
commit 0f1ba28fee
8 changed files with 633 additions and 19 deletions

View File

@@ -167,6 +167,7 @@ type
{$IFDEF LINUX}
FPasswordStorage : TCefPasswordStorage;
FGTKVersion : TCefGTKVersion;
FOzonePlatform : TCefOzonePlatform;
{$ENDIF}
@@ -1351,6 +1352,13 @@ type
/// <para><see href="https://github.com/chromium/chromium/blob/main/ui/gtk/gtk_compat.cc">See the LoadGtkImpl function in ui/gtk/gtk_compat.cc</see></para>
/// </remarks>
property GTKVersion : TCefGTKVersion read FGTKVersion write FGTKVersion;
/// <summary>
/// Preferred GTK version loaded by Chromium.
/// </summary>
/// <remarks>
/// <para><see href="https://peter.sh/experiments/chromium-command-line-switches/#ozone-platform">Uses the following command line switch: --ozone-platform</see></para>
/// </remarks>
property OzonePlatform : TCefOzonePlatform read FOzonePlatform write FOzonePlatform;
{$ENDIF}
/// <summary>
/// Ignores certificate-related errors.
@@ -2063,6 +2071,7 @@ begin
{$IFDEF LINUX}
FPasswordStorage := psDefault;
FGTKVersion := gtkVersionDefault;
FOzonePlatform := ozpDefault;
{$ENDIF}
// Fields used during the CEF initialization
@@ -3754,6 +3763,12 @@ begin
gtkVersion3 : ReplaceSwitch(aKeys, aValues, '--gtk-version', '3');
gtkVersion4 : ReplaceSwitch(aKeys, aValues, '--gtk-version', '4');
end;
case FOzonePlatform of
ozpWayland : ReplaceSwitch(aKeys, aValues, '--ozone-platform', 'wayland');
ozpX11 : ReplaceSwitch(aKeys, aValues, '--ozone-platform', 'x11');
ozpHeadless : ReplaceSwitch(aKeys, aValues, '--ozone-platform', 'headless');
end;
{$ENDIF}
// The list of features you can enable is here :