chrome: Support configuration of user agent and locale (see issue #2969)

This change adds support for CefSettings and command-line configuration of
user_agent, user_agent_product (formerly product_version) and locale.
This commit is contained in:
Marshall Greenblatt
2021-04-27 12:39:09 -04:00
parent 328de502ac
commit c03a6f4386
10 changed files with 53 additions and 18 deletions

View File

@@ -42,13 +42,13 @@
// way that may cause binary incompatibility with other builds. The universal
// hash value will change if any platform is affected whereas the platform hash
// values will change only if that particular platform is affected.
#define CEF_API_HASH_UNIVERSAL "d128245052a84dd90cd38fed0e6be65824d37de5"
#define CEF_API_HASH_UNIVERSAL "d026196d35d8894a836ab3a3d033b84195cdb835"
#if defined(OS_WIN)
#define CEF_API_HASH_PLATFORM "9b1a4706bf1fca26d542aa5f8b05d222f483c872"
#define CEF_API_HASH_PLATFORM "4150bd26e7bf639a9b1f3e5860af8c76eeae8570"
#elif defined(OS_MAC)
#define CEF_API_HASH_PLATFORM "0038a822915e3567f2434053ebc49723fe6951d5"
#define CEF_API_HASH_PLATFORM "5cc32f88bd134410eff86b21095138b339d572f2"
#elif defined(OS_LINUX)
#define CEF_API_HASH_PLATFORM "66613a535ec6a1aafce6ece8e98cd3876f79633b"
#define CEF_API_HASH_PLATFORM "b227b3fdd6142a9d8ff0f2252a71425f15960800"
#endif
#ifdef __cplusplus

View File

@@ -304,9 +304,9 @@ typedef struct _cef_settings_t {
// 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 "product-version" command-line switch.
// using the "user-agent-product" command-line switch.
///
cef_string_t product_version;
cef_string_t user_agent_product;
///
// The locale string that will be passed to WebKit. If empty the default

View File

@@ -548,7 +548,7 @@ struct CefSettingsTraits {
cef_string_clear(&s->root_cache_path);
cef_string_clear(&s->user_data_path);
cef_string_clear(&s->user_agent);
cef_string_clear(&s->product_version);
cef_string_clear(&s->user_agent_product);
cef_string_clear(&s->locale);
cef_string_clear(&s->log_file);
cef_string_clear(&s->javascript_flags);
@@ -587,8 +587,8 @@ struct CefSettingsTraits {
cef_string_set(src->user_agent.str, src->user_agent.length,
&target->user_agent, copy);
cef_string_set(src->product_version.str, src->product_version.length,
&target->product_version, copy);
cef_string_set(src->user_agent_product.str, src->user_agent_product.length,
&target->user_agent_product, copy);
cef_string_set(src->locale.str, src->locale.length, &target->locale, copy);
cef_string_set(src->log_file.str, src->log_file.length, &target->log_file,