type TCefSettings = record
Initialization settings. Specify NULL or 0 to get the recommended default values. Many of these and other settings can also configured using command- line switches.
<see href="https://bitbucket.org/chromiumembedded/cef/src/master/include/internal/cef_types.h">CEF source file: /include/internal/cef_types.h (cef_settings_t))
size: NativeUInt; |
|
no_sandbox: Integer; |
|
browser_subprocess_path: TCefString; |
|
framework_dir_path: TCefString; |
|
main_bundle_path: TCefString; |
|
multi_threaded_message_loop: Integer; |
|
external_message_pump: Integer; |
|
windowless_rendering_enabled: Integer; |
|
command_line_args_disabled: Integer; |
|
cache_path: TCefString; |
|
root_cache_path: TCefString; |
|
persist_session_cookies: Integer; |
|
user_agent: TCefString; |
|
user_agent_product: TCefString; |
|
locale: TCefString; |
|
log_file: TCefString; |
|
log_severity: TCefLogSeverity; |
|
log_items: TCefLogItems; |
|
javascript_flags: TCefString; |
|
resources_dir_path: TCefString; |
|
locales_dir_path: TCefString; |
|
remote_debugging_port: Integer; |
|
uncaught_exception_stack_size: Integer; |
|
background_color: TCefColor; |
|
accept_language_list: TCefString; |
|
cookieable_schemes_list: TCefString; |
|
cookieable_schemes_exclude_defaults: integer; |
|
chrome_policy_id: TCefString; |
|
chrome_app_icon_id: Integer; |
size: NativeUInt; |
|
Size of this structure. |
browser_subprocess_path: TCefString; |
|
The path to a separate executable that will be launched for sub-processes. If this value is empty on Windows or Linux then the main process executable will be used. If this value is empty on macOS then a helper executable must exist at "Contents/Frameworks/<app> Helper.app/Contents/MacOS/<app> Helper" in the top-level app bundle. See the comments on CefExecuteProcess() for details. If this value is non-empty then it must be an absolute path. Also configurable using the "browser-subprocess-path" command-line switch. |
framework_dir_path: TCefString; |
|
The path to the CEF framework directory on macOS. If this value is empty then the framework must exist at "Contents/Frameworks/Chromium Embedded Framework.framework" in the top-level app bundle. If this value is non-empty then it must be an absolute path. Also configurable using the "framework-dir-path" command-line switch. |
main_bundle_path: TCefString; |
|
The path to the main bundle on macOS. If this value is empty then it defaults to the top-level app bundle. If this value is non-empty then it must be an absolute path. Also configurable using the "main-bundle-path" command-line switch. |
cache_path: TCefString; |
|
The directory where data for the global browser cache will be stored on disk. If this value is non-empty then it must be an absolute path that is either equal to or a child directory of CefSettings.root_cache_path. If this value is empty then browsers will be created in "incognito mode" where in-memory caches are used for storage and no profile-specific data is persisted to disk (installation-specific data will still be persisted in root_cache_path). HTML5 databases such as localStorage will only persist across sessions if a cache path is specified. Can be overridden for individual CefRequestContext instances via the TCefRequestContextSettings.cache_path value. Any child directory value will be ignored and the "default" profile (also a child directory) will be used instead. |
root_cache_path: TCefString; |
|
The root directory for installation-specific data and the parent directory for profile-specific data. All TCefSettings.cache_path and TCefRequestContextSettings.cache_path values must have this parent directory in common. If this value is empty and TCefSettings.cache_path is non-empty then it will default to the TCefSettings.cache_path value. Any non-empty value must be an absolute path. If both values are empty then the default platform-specific directory will be used ("~/.config/cef_user_data" directory on Linux, "~/Library/Application Support/CEF/User Data" directory on MacOS, "AppData\Local\CEF\User Data" directory under the user profile directory on Windows). Use of the default directory is not recommended in production applications (see below). Multiple application instances writing to the same root_cache_path directory could result in data corruption. A process singleton lock based on the root_cache_path value is therefore used to protect against this. This singleton behavior applies to all CEF-based applications using version 120 or newer. You should customize root_cache_path for your application and implement ICefBrowserProcessHandler.OnAlreadyRunningAppRelaunch, which will then be called on any app relaunch with the same root_cache_path value. Failure to set the root_cache_path value correctly may result in startup crashes or other unexpected behaviors (for example, the sandbox blocking read/write access to certain files). |
user_agent: TCefString; |
|
Value that will be returned as the User-Agent HTTP header. If empty the default User-Agent string will be used. Also configurable using the "user-agent" command-line switch. |
user_agent_product: TCefString; |
|
Value that will be inserted as the product portion of the default User-Agent string. If empty the Chromium product version will be used. If |userAgent| is specified this value will be ignored. Also configurable using the "user-agent-product" command-line switch. |
locale: TCefString; |
|
The locale string that will be passed to WebKit. If empty the default locale of "en-US" will be used. This value is ignored on Linux where locale is determined using environment variable parsing with the precedence order: LANGUAGE, LC_ALL, LC_MESSAGES and LANG. Also configurable using the "lang" command-line switch. |
log_file: TCefString; |
|
The directory and file name to use for the debug log. If empty a default log file name and location will be used. On Windows and Linux a "debug.log" file will be written in the main executable directory. On MacOS a "~/Library/Logs/[app name]_debug.log" file will be written where [app name] is the name of the main app executable. Also configurable using the "log-file" command-line switch. |
log_severity: TCefLogSeverity; |
|
The log severity. Only messages of this severity level or higher will be logged. When set to DISABLE no messages will be written to the log file, but FATAL messages will still be output to stderr. Also configurable using the "log-severity" command-line switch with a value of "verbose", "info", "warning", "error", "fatal" or "disable". |
log_items: TCefLogItems; |
|
The log items prepended to each log line. If not set the default log items will be used. Also configurable using the "log-items" command-line switch with a value of "none" for no log items, or a comma-delimited list of values "pid", "tid", "timestamp" or "tickcount" for custom log items. |
javascript_flags: TCefString; |
|
Custom flags that will be used when initializing the V8 JavaScript engine. The consequences of using custom flags may not be well tested. Also configurable using the "js-flags" command-line switch. |
resources_dir_path: TCefString; |
|
The fully qualified path for the resources directory. If this value is empty the *.pak files must be located in the module directory on Windows/Linux or the app bundle Resources directory on MacOS. If this value is non-empty then it must be an absolute path. Also configurable using the "resources-dir-path" command-line switch. |
locales_dir_path: TCefString; |
|
The fully qualified path for the locales directory. If this value is empty the locales directory must be located in the module directory. If this value is non-empty then it must be an absolute path. This value is ignored on MacOS where pack files are always loaded from the app bundle Resources directory. Also configurable using the "locales-dir-path" command-line switch. |
remote_debugging_port: Integer; |
|
Set to a value between 1024 and 65535 to enable remote debugging on the specified port. Also configurable using the "remote-debugging-port" command-line switch. Specifying 0 via the command-line switch will result in the selection of an ephemeral port and the port number will be printed as part of the WebSocket endpoint URL to stderr. If a cache directory path is provided the port will also be written to the <cache-dir>/DevToolsActivePort file. Remote debugging can be accessed by loading the chrome://inspect page in Google Chrome. Port numbers 9222 and 9229 are discoverable by default. Other port numbers may need to be configured via "Discover network targets" on the Devices tab. |
background_color: TCefColor; |
|
Background color used for the browser before a document is loaded and when no document color is specified. The alpha component must be either fully opaque (0xFF) or fully transparent (0x00). If the alpha component is fully opaque then the RGB components will be used as the background color. If the alpha component is fully transparent for a windowed browser then the default value of opaque white be used. If the alpha component is fully transparent for a windowless (off-screen) browser then transparent painting will be enabled. |
accept_language_list: TCefString; |
|
Comma delimited ordered list of language codes without any whitespace that will be used in the "Accept-Language" HTTP request header and "navigator.language" JS attribute. Can be overridden for individual ICefRequestContext instances via the TCefRequestContextSettings.accept_language_list value. |
cookieable_schemes_list: TCefString; |
|
Comma delimited list of schemes supported by the associated ICefCookieManager. If |cookieable_schemes_exclude_defaults| is false (0) the default schemes ("http", "https", "ws" and "wss") will also be supported. Not specifying a |cookieable_schemes_list| value and setting |cookieable_schemes_exclude_defaults| to true (1) will disable all loading and saving of cookies. These settings will only impact the global ICefRequestContext. Individual ICefRequestContext instances can be configured via the TCefRequestContextSettings.cookieable_schemes_list and TCefRequestContextSettings.cookieable_schemes_exclude_defaults values. |
cookieable_schemes_exclude_defaults: integer; |
|
This item has no description. |
chrome_policy_id: TCefString; |
|
Specify an ID to enable Chrome policy management via Platform and OS-user policies. On Windows, this is a registry key like "SOFTWARE\\Policies\\Google\\Chrome". On MacOS, this is a bundle ID like "com.google.Chrome". On Linux, this is an absolute directory path like "/etc/opt/chrome/policies". Only supported with Chrome style. See https://support.google.com/chrome/a/answer/9037717 for details. Chrome Browser Cloud Management integration, when enabled via the "enable-chrome-browser-cloud-management" command-line flag, will also use the specified ID. See https://support.google.com/chrome/a/answer/9116814 for details. |