1
0
mirror of https://github.com/salvadordf/CEF4Delphi.git synced 2025-05-13 21:46:53 +02:00

Added GlobalCEFApp.PasswordStorage in Linux

This commit is contained in:
Salvador Díaz Fau 2025-03-19 16:01:37 +01:00
parent b731deee3b
commit fba986d1ce
7 changed files with 72 additions and 15 deletions

Binary file not shown.

View File

@ -43,7 +43,7 @@
<td class="itemcode"><code><strong><a href="uCEFApplicationCore.html#CEF_SUPPORTED_VERSION_MINOR">CEF_SUPPORTED_VERSION_MINOR</a></strong> = 3;</code></td>
</tr>
<tr class="list">
<td class="itemcode"><code><strong><a href="uCEFApplicationCore.html#CEF_SUPPORTED_VERSION_RELEASE">CEF_SUPPORTED_VERSION_RELEASE</a></strong> = 0;</code></td>
<td class="itemcode"><code><strong><a href="uCEFApplicationCore.html#CEF_SUPPORTED_VERSION_RELEASE">CEF_SUPPORTED_VERSION_RELEASE</a></strong> = 2;</code></td>
</tr>
<tr class="list2">
<td class="itemcode"><code><strong><a href="uCEFApplicationCore.html#CEF_SUPPORTED_VERSION_BUILD">CEF_SUPPORTED_VERSION_BUILD</a></strong> = 0;</code></td>
@ -58,7 +58,7 @@
<td class="itemcode"><code><strong><a href="uCEFApplicationCore.html#CEF_CHROMEELF_VERSION_RELEASE">CEF_CHROMEELF_VERSION_RELEASE</a></strong> = 6998;</code></td>
</tr>
<tr class="list2">
<td class="itemcode"><code><strong><a href="uCEFApplicationCore.html#CEF_CHROMEELF_VERSION_BUILD">CEF_CHROMEELF_VERSION_BUILD</a></strong> = 44;</code></td>
<td class="itemcode"><code><strong><a href="uCEFApplicationCore.html#CEF_CHROMEELF_VERSION_BUILD">CEF_CHROMEELF_VERSION_BUILD</a></strong> = 89;</code></td>
</tr>
<tr class="list">
<td class="itemcode"><code><strong><a href="uCEFApplicationCore.html#CEF_API_VERSION_MIN">CEF_API_VERSION_MIN</a></strong> = 13300;</code></td>
@ -129,7 +129,7 @@
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><span id="CEF_SUPPORTED_VERSION_RELEASE"></span><code><strong>CEF_SUPPORTED_VERSION_RELEASE</strong> = 0;</code></td>
<td class="itemcode"><span id="CEF_SUPPORTED_VERSION_RELEASE"></span><code><strong>CEF_SUPPORTED_VERSION_RELEASE</strong> = 2;</code></td>
</tr>
<tr><td colspan="1">
<p class="nodescription">This item has no description.</p></td></tr>
@ -164,7 +164,7 @@
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><span id="CEF_CHROMEELF_VERSION_BUILD"></span><code><strong>CEF_CHROMEELF_VERSION_BUILD</strong> = 44;</code></td>
<td class="itemcode"><span id="CEF_CHROMEELF_VERSION_BUILD"></span><code><strong>CEF_CHROMEELF_VERSION_BUILD</strong> = 89;</code></td>
</tr>
<tr><td colspan="1">
<p class="nodescription">This item has no description.</p></td></tr>

View File

@ -2024,7 +2024,7 @@
</tr>
<tr class="list2">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFChromiumCore.TChromiumCore.html#doOnPreferenceChanged-ustring-">doOnPreferenceChanged</a></strong>(const name: <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFChromiumCore.TChromiumCore.html#doOnPreferenceChanged-ustring-">doOnPreferenceChanged</a></strong>(const name_: <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
</tr>
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
@ -2156,7 +2156,7 @@
</tr>
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFChromiumCore.TChromiumCore.html#doAddPreferenceObserver-ustring-">doAddPreferenceObserver</a></strong>(const name : <a href="uCEFTypes.html#ustring">ustring</a>); virtual;</code></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFChromiumCore.TChromiumCore.html#doAddPreferenceObserver-ustring-">doAddPreferenceObserver</a></strong>(const name_ : <a href="uCEFTypes.html#ustring">ustring</a>); virtual;</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
@ -2484,11 +2484,11 @@
</tr>
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFChromiumCore.TChromiumCore.html#AddPreferenceObserver-ustring-">AddPreferenceObserver</a></strong>(const name: <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFChromiumCore.TChromiumCore.html#AddPreferenceObserver-ustring-">AddPreferenceObserver</a></strong>(const name_: <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
</tr>
<tr class="list2">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFChromiumCore.TChromiumCore.html#RemovePreferenceObserver-ustring-">RemovePreferenceObserver</a></strong>(const name : <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
<td class="itemcode"><code>procedure <strong><a href="uCEFChromiumCore.TChromiumCore.html#RemovePreferenceObserver-ustring-">RemovePreferenceObserver</a></strong>(const name_ : <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
</tr>
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
@ -7872,7 +7872,7 @@ ICefPermissionHandler</p>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><span id="doOnPreferenceChanged-ustring-"></span><code>procedure <strong>doOnPreferenceChanged</strong>(const name: <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
<td class="itemcode"><span id="doOnPreferenceChanged-ustring-"></span><code>procedure <strong>doOnPreferenceChanged</strong>(const name_: <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
</tr>
<tr><td colspan="2">
<p>
@ -8144,7 +8144,7 @@ Custom</p>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="protected.gif" alt="Protected" title="Protected"></a></td>
<td class="itemcode"><span id="doAddPreferenceObserver-ustring-"></span><code>procedure <strong>doAddPreferenceObserver</strong>(const name : <a href="uCEFTypes.html#ustring">ustring</a>); virtual;</code></td>
<td class="itemcode"><span id="doAddPreferenceObserver-ustring-"></span><code>procedure <strong>doAddPreferenceObserver</strong>(const name_ : <a href="uCEFTypes.html#ustring">ustring</a>); virtual;</code></td>
</tr>
<tr><td colspan="2">
<p class="nodescription">This item has no description.</p></td></tr>
@ -9172,7 +9172,7 @@ Custom</p>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="AddPreferenceObserver-ustring-"></span><code>procedure <strong>AddPreferenceObserver</strong>(const name: <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
<td class="itemcode"><span id="AddPreferenceObserver-ustring-"></span><code>procedure <strong>AddPreferenceObserver</strong>(const name_: <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
</tr>
<tr><td colspan="2">
<p>
@ -9186,7 +9186,7 @@ Custom</p>
<table class="detail wide_list">
<tr class="list">
<td class="visibility"><a href="legend.html"><img src="public.gif" alt="Public" title="Public"></a></td>
<td class="itemcode"><span id="RemovePreferenceObserver-ustring-"></span><code>procedure <strong>RemovePreferenceObserver</strong>(const name : <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
<td class="itemcode"><span id="RemovePreferenceObserver-ustring-"></span><code>procedure <strong>RemovePreferenceObserver</strong>(const name_ : <a href="uCEFTypes.html#ustring">ustring</a>);</code></td>
</tr>
<tr><td colspan="2">
<p>

View File

@ -373,7 +373,7 @@
<td class="itemcode"><code><strong><a href="uCEFChromiumEvents.html#TOnDismissPermissionPromptEvent">TOnDismissPermissionPromptEvent</a></strong> = procedure(Sender: TObject; const browser: <a href="uCEFInterfaces.ICefBrowser.html">ICefBrowser</a>; prompt_id: uint64; result: <a href="uCEFTypes.html#TCefPermissionRequestResult">TCefPermissionRequestResult</a>) of object;</code></td>
</tr>
<tr class="list2">
<td class="itemcode"><code><strong><a href="uCEFChromiumEvents.html#TOnPreferenceChangedEvent">TOnPreferenceChangedEvent</a></strong> = procedure(Sender: TObject; const name: <a href="uCEFTypes.html#ustring">ustring</a>) of object;</code></td>
<td class="itemcode"><code><strong><a href="uCEFChromiumEvents.html#TOnPreferenceChangedEvent">TOnPreferenceChangedEvent</a></strong> = procedure(Sender: TObject; const name_: <a href="uCEFTypes.html#ustring">ustring</a>) of object;</code></td>
</tr>
<tr class="list">
<td class="itemcode"><code><strong><a href="uCEFChromiumEvents.html#TOnSettingChangedEvent">TOnSettingChangedEvent</a></strong> = procedure(Sender: TObject; const requesting_url, top_level_url : <a href="uCEFTypes.html#ustring">ustring</a>; content_type: <a href="uCEFTypes.html#TCefContentSettingTypes">TCefContentSettingTypes</a>) of object;</code></td>
@ -1309,7 +1309,7 @@ ICefPermissionHandler</p>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><span id="TOnPreferenceChangedEvent"></span><code><strong>TOnPreferenceChangedEvent</strong> = procedure(Sender: TObject; const name: <a href="uCEFTypes.html#ustring">ustring</a>) of object;</code></td>
<td class="itemcode"><span id="TOnPreferenceChangedEvent"></span><code><strong>TOnPreferenceChangedEvent</strong> = procedure(Sender: TObject; const name_: <a href="uCEFTypes.html#ustring">ustring</a>) of object;</code></td>
</tr>
<tr><td colspan="1">
<p>

View File

@ -161,6 +161,9 @@ type
FDisableHangMonitor : boolean;
FHideCrashRestoreBubble : boolean;
FPostQuantumKyber : TCefState;
{$IFDEF LINUX}
FPasswordStorage : TCefPasswordStorage;
{$ENDIF}
// Fields used during the CEF initialization
@ -1322,6 +1325,15 @@ type
/// This option enables a combination of X25519 and Kyber in TLS 1.3.
/// </summary>
property TLS13HybridizedKyberSupport : TCefState read FPostQuantumKyber write FPostQuantumKyber;
{$IFDEF LINUX}
/// <summary>
/// Specifies which encryption storage backend to use in Linux.
/// </summary>
/// <remarks>
/// <para><see href="https://source.chromium.org/chromium/chromium/src/+/main:docs/linux/password_storage.md">Chromium document: docs/linux/password_storage.md</see></para>
/// </remarks>
property PasswordStorage : TCefPasswordStorage read FPasswordStorage write FPasswordStorage;
{$ENDIF}
/// <summary>
/// Ignores certificate-related errors.
/// </summary>
@ -1997,6 +2009,9 @@ begin
FDisableHangMonitor := False;
FHideCrashRestoreBubble := True;
FPostQuantumKyber := STATE_DEFAULT;
{$IFDEF LINUX}
FPasswordStorage := psDefault;
{$ENDIF}
// Fields used during the CEF initialization
FWindowsSandboxInfo := nil;
@ -3678,6 +3693,16 @@ begin
STATE_DISABLED : ReplaceSwitch(aKeys, aValues, '--disable-features', 'PostQuantumKyber');
end;
{$IFDEF LINUX}
case FPasswordStorage of
psGnomeLibsecret : ReplaceSwitch(aKeys, aValues, '--password-store', 'gnome-libsecret');
psKWallet : ReplaceSwitch(aKeys, aValues, '--password-store', 'kwallet');
psKWallet5 : ReplaceSwitch(aKeys, aValues, '--password-store', 'kwallet5');
psKWallet6 : ReplaceSwitch(aKeys, aValues, '--password-store', 'kwallet6');
psBasic : ReplaceSwitch(aKeys, aValues, '--password-store', 'basic');
end;
{$ENDIF}
// The list of features you can enable is here :
// https://chromium.googlesource.com/chromium/src/+/master/chrome/common/chrome_features.cc
// https://source.chromium.org/chromium/chromium/src/+/main:content/public/common/content_features.cc

View File

@ -424,6 +424,38 @@ type
/// </summary>
fd : integer;
end;
/// <summary>
/// Specifies which encryption storage backend to use in Linux.
/// </summary>
/// <remarks>
/// <para><see href="https://source.chromium.org/chromium/chromium/src/+/main:docs/linux/password_storage.md">Chromium document: docs/linux/password_storage.md</see></para>
/// </remarks>
TCefPasswordStorage = (
/// <summary>
/// Chromium chooses which store to use automatically, based on your desktop environment.
/// </summary>
psDefault,
/// <summary>
/// GNOME Libsecret.
/// </summary>
psGnomeLibsecret,
/// <summary>
/// KWallet 4.
/// </summary>
psKWallet,
/// <summary>
/// KWallet 5.
/// </summary>
psKWallet5,
/// <summary>
/// KWallet 6.
/// </summary>
psKWallet6,
/// <summary>
/// Plain text.
/// </summary>
psBasic);
{$ENDIF}
/// <summary>

View File

@ -2,7 +2,7 @@
"UpdateLazPackages" : [
{
"ForceNotify" : true,
"InternalVersion" : 714,
"InternalVersion" : 715,
"Name" : "cef4delphi_lazarus.lpk",
"Version" : "134.3.2"
}