mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Update to Chromium version 129.0.6668.0
- Mac: Minimum system version is now 11.0. - Win: Windows SDK version is now 10.0.22621.2428.
This commit is contained in:
committed by
Marshall Greenblatt
parent
2cd405baac
commit
af1f40a2d3
@ -1,8 +1,8 @@
|
||||
diff --git chrome/app/chrome_main_delegate.cc chrome/app/chrome_main_delegate.cc
|
||||
index cda3db439e32a..b9ba41139eccb 100644
|
||||
index 67428f15a7c50..4e418019327e6 100644
|
||||
--- chrome/app/chrome_main_delegate.cc
|
||||
+++ chrome/app/chrome_main_delegate.cc
|
||||
@@ -37,6 +37,7 @@
|
||||
@@ -42,6 +42,7 @@
|
||||
#include "base/trace_event/trace_event_impl.h"
|
||||
#include "build/build_config.h"
|
||||
#include "build/chromeos_buildflags.h"
|
||||
@ -10,26 +10,26 @@ index cda3db439e32a..b9ba41139eccb 100644
|
||||
#include "chrome/browser/buildflags.h"
|
||||
#include "chrome/browser/chrome_content_browser_client.h"
|
||||
#include "chrome/browser/chrome_resource_bundle_helper.h"
|
||||
@@ -606,6 +607,7 @@ struct MainFunction {
|
||||
@@ -611,6 +612,7 @@ struct MainFunction {
|
||||
int (*function)(content::MainFunctionParams);
|
||||
};
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
// Initializes the user data dir. Must be called before InitializeLocalState().
|
||||
void InitializeUserDataDir(base::CommandLine* command_line) {
|
||||
#if BUILDFLAG(IS_CHROMEOS_LACROS)
|
||||
@@ -689,6 +691,7 @@ void InitializeUserDataDir(base::CommandLine* command_line) {
|
||||
@@ -694,6 +696,7 @@ void InitializeUserDataDir(base::CommandLine* command_line) {
|
||||
command_line->AppendSwitchPath(switches::kUserDataDir, user_data_dir);
|
||||
#endif // BUILDFLAG(IS_WIN)
|
||||
}
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
#if BUILDFLAG(IS_CHROMEOS_LACROS)
|
||||
// If Lacros was prelaunched at login screen, this method blocks waiting
|
||||
@@ -850,6 +853,10 @@ ChromeMainDelegate::~ChromeMainDelegate() {
|
||||
@@ -855,6 +858,10 @@ ChromeMainDelegate::~ChromeMainDelegate() {
|
||||
ChromeMainDelegate::~ChromeMainDelegate() = default;
|
||||
#endif // !BUILDFLAG(IS_ANDROID)
|
||||
|
||||
|
||||
+void ChromeMainDelegate::CleanupOnUIThread() {
|
||||
+ memory_system_.reset();
|
||||
+}
|
||||
@ -37,17 +37,17 @@ index cda3db439e32a..b9ba41139eccb 100644
|
||||
std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
|
||||
InvokedIn invoked_in) {
|
||||
DUMP_WILL_BE_CHECK(base::ThreadPoolInstance::Get());
|
||||
@@ -875,7 +882,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
|
||||
@@ -880,7 +887,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
|
||||
// future session's metrics.
|
||||
DeferBrowserMetrics(user_data_dir);
|
||||
|
||||
|
||||
-#if BUILDFLAG(IS_WIN)
|
||||
+#if BUILDFLAG(IS_WIN) && !BUILDFLAG(ENABLE_CEF)
|
||||
// In the case the process is not the singleton process, the uninstall tasks
|
||||
// need to be executed here. A window will be displayed asking to close all
|
||||
// running instances.
|
||||
@@ -1035,7 +1042,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
|
||||
|
||||
@@ -1040,7 +1047,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
|
||||
|
||||
// Initializes the resource bundle and determines the locale.
|
||||
std::string actual_locale = LoadLocalState(
|
||||
- chrome_feature_list_creator, invoked_in_browser->is_running_test);
|
||||
@ -55,25 +55,25 @@ index cda3db439e32a..b9ba41139eccb 100644
|
||||
+ invoked_in_browser->is_running_test);
|
||||
chrome_feature_list_creator->SetApplicationLocale(actual_locale);
|
||||
chrome_feature_list_creator->OverrideCachedUIStrings();
|
||||
|
||||
@@ -1052,6 +1060,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
|
||||
|
||||
@@ -1057,6 +1065,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
|
||||
new net::NetworkChangeNotifierFactoryAndroid());
|
||||
#endif
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
+ // Avoid CEF crash with multi-threaded-message-loop.
|
||||
if (base::FeatureList::IsEnabled(
|
||||
features::kWriteBasicSystemProfileToPersistentHistogramsFile)) {
|
||||
bool record = true;
|
||||
@@ -1062,6 +1072,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
|
||||
@@ -1067,6 +1077,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
|
||||
if (record)
|
||||
chrome_content_browser_client_->startup_data()->RecordCoreSystemProfile();
|
||||
}
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
UmaSessionStats::OnStartup();
|
||||
@@ -1099,8 +1110,8 @@ bool ChromeMainDelegate::ShouldInitializeMojo(InvokedIn invoked_in) {
|
||||
@@ -1104,8 +1115,8 @@ bool ChromeMainDelegate::ShouldInitializeMojo(InvokedIn invoked_in) {
|
||||
void ChromeMainDelegate::CreateThreadPool(std::string_view name) {
|
||||
base::ThreadPoolInstance::Create(name);
|
||||
// `ChromeMainDelegateAndroid::PreSandboxStartup` creates the profiler a little
|
||||
@ -84,89 +84,89 @@ index cda3db439e32a..b9ba41139eccb 100644
|
||||
// Start the sampling profiler as early as possible - namely, once the thread
|
||||
// pool has been created.
|
||||
sampling_profiler_ = std::make_unique<MainThreadStackSamplingProfiler>();
|
||||
@@ -1512,6 +1523,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
@@ -1517,6 +1528,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
std::string process_type =
|
||||
command_line.GetSwitchValueASCII(switches::kProcessType);
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
crash_reporter::InitializeCrashKeys();
|
||||
|
||||
|
||||
#if BUILDFLAG(IS_POSIX)
|
||||
@@ -1522,6 +1534,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
@@ -1527,6 +1539,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
InitMacCrashReporter(command_line, process_type);
|
||||
SetUpInstallerPreferences(command_line);
|
||||
#endif
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
child_process_logging::Init();
|
||||
@@ -1533,6 +1546,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
@@ -1538,6 +1551,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
base::CPU cpu_info;
|
||||
#endif
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
// Initialize the user data dir for any process type that needs it.
|
||||
bool initialize_user_data_dir = chrome::ProcessNeedsProfileDir(process_type);
|
||||
#if BUILDFLAG(IS_CHROMEOS_LACROS)
|
||||
@@ -1544,6 +1558,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
@@ -1549,6 +1563,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
if (initialize_user_data_dir) {
|
||||
InitializeUserDataDir(base::CommandLine::ForCurrentProcess());
|
||||
}
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
#if BUILDFLAG(IS_CHROMEOS_LACROS)
|
||||
// Generate shared resource file only on browser process. This is to avoid
|
||||
@@ -1702,7 +1717,8 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
@@ -1707,7 +1722,8 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
#else
|
||||
const std::string loaded_locale =
|
||||
ui::ResourceBundle::InitSharedInstanceWithLocale(
|
||||
- locale, nullptr, ui::ResourceBundle::LOAD_COMMON_RESOURCES);
|
||||
+ locale, GetResourceBundleDelegate(),
|
||||
+ ui::ResourceBundle::LOAD_COMMON_RESOURCES);
|
||||
|
||||
|
||||
base::FilePath resources_pack_path;
|
||||
base::PathService::Get(chrome::FILE_RESOURCES_PACK, &resources_pack_path);
|
||||
@@ -1732,6 +1748,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
@@ -1737,6 +1753,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
CHECK(!loaded_locale.empty()) << "Locale could not be found for " << locale;
|
||||
}
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC)
|
||||
// Zygote needs to call InitCrashReporter() in RunZygote().
|
||||
if (process_type != switches::kZygoteProcess &&
|
||||
@@ -1768,6 +1785,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
@@ -1773,6 +1790,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
|
||||
// After all the platform Breakpads have been initialized, store the command
|
||||
// line for crash reporting.
|
||||
crash_keys::SetCrashKeysFromCommandLine(command_line);
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
#if BUILDFLAG(ENABLE_PDF)
|
||||
MaybePatchGdiGetFontData();
|
||||
@@ -1895,6 +1913,7 @@ void ChromeMainDelegate::ZygoteForked() {
|
||||
@@ -1900,6 +1918,7 @@ void ChromeMainDelegate::ZygoteForked() {
|
||||
SetUpProfilingShutdownHandler();
|
||||
}
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
// Needs to be called after we have chrome::DIR_USER_DATA. BrowserMain sets
|
||||
// this up for the browser process in a different manner.
|
||||
const base::CommandLine* command_line =
|
||||
@@ -1907,6 +1926,7 @@ void ChromeMainDelegate::ZygoteForked() {
|
||||
|
||||
@@ -1912,6 +1931,7 @@ void ChromeMainDelegate::ZygoteForked() {
|
||||
|
||||
// Reset the command line for the newly spawned process.
|
||||
crash_keys::SetCrashKeysFromCommandLine(*command_line);
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
}
|
||||
|
||||
|
||||
#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
|
||||
@@ -2015,6 +2035,7 @@ void ChromeMainDelegate::InitializeMemorySystem() {
|
||||
@@ -2020,6 +2040,7 @@ void ChromeMainDelegate::InitializeMemorySystem() {
|
||||
: memory_system::DispatcherParameters::
|
||||
AllocationTraceRecorderInclusion::kIgnore;
|
||||
|
||||
|
||||
+ memory_system_ = std::make_unique<memory_system::MemorySystem>();
|
||||
memory_system::Initializer()
|
||||
.SetGwpAsanParameters(gwp_asan_boost_sampling, process_type)
|
||||
.SetProfilingClientParameters(chrome::GetChannel(),
|
||||
@@ -2022,5 +2043,5 @@ void ChromeMainDelegate::InitializeMemorySystem() {
|
||||
@@ -2027,5 +2048,5 @@ void ChromeMainDelegate::InitializeMemorySystem() {
|
||||
.SetDispatcherParameters(memory_system::DispatcherParameters::
|
||||
PoissonAllocationSamplerInclusion::kEnforce,
|
||||
allocation_recorder_inclusion, process_type)
|
||||
@ -182,22 +182,22 @@ index 521d5710b6387..8a5f3e6a312d2 100644
|
||||
#include "components/memory_system/memory_system.h"
|
||||
#include "content/public/app/content_main_delegate.h"
|
||||
+#include "ui/base/resource/resource_bundle.h"
|
||||
|
||||
|
||||
namespace base {
|
||||
class CommandLine;
|
||||
@@ -55,6 +56,8 @@ class ChromeMainDelegate : public content::ContentMainDelegate {
|
||||
|
||||
|
||||
~ChromeMainDelegate() override;
|
||||
|
||||
|
||||
+ virtual void CleanupOnUIThread();
|
||||
+
|
||||
protected:
|
||||
// content::ContentMainDelegate:
|
||||
std::optional<int> BasicStartupComplete() override;
|
||||
@@ -99,13 +102,17 @@ class ChromeMainDelegate : public content::ContentMainDelegate {
|
||||
|
||||
|
||||
void InitializeMemorySystem();
|
||||
|
||||
|
||||
+ virtual ui::ResourceBundle::Delegate* GetResourceBundleDelegate() {
|
||||
+ return nullptr;
|
||||
+ }
|
||||
@ -205,12 +205,12 @@ index 521d5710b6387..8a5f3e6a312d2 100644
|
||||
std::unique_ptr<ChromeContentBrowserClient> chrome_content_browser_client_;
|
||||
std::unique_ptr<ChromeContentUtilityClient> chrome_content_utility_client_;
|
||||
std::unique_ptr<tracing::TracingSamplerProfiler> tracing_sampler_profiler_;
|
||||
|
||||
|
||||
ChromeContentClient chrome_content_client_;
|
||||
|
||||
|
||||
- memory_system::MemorySystem memory_system_;
|
||||
+ std::unique_ptr<memory_system::MemorySystem> memory_system_;
|
||||
|
||||
|
||||
#if BUILDFLAG(IS_CHROMEOS_LACROS)
|
||||
std::unique_ptr<chromeos::LacrosService> lacros_service_;
|
||||
diff --git chrome/app_shim/BUILD.gn chrome/app_shim/BUILD.gn
|
||||
@ -239,19 +239,19 @@ index ac1361bd6bc2e..a303ca169c7f7 100644
|
||||
#include "chrome/app_shim/app_shim_delegate.h"
|
||||
@@ -171,7 +172,9 @@ int APP_SHIM_ENTRY_POINT_NAME(const app_mode::ChromeAppModeInfo* info) {
|
||||
base::FilePath(info->user_data_dir).DirName().DirName().DirName();
|
||||
|
||||
|
||||
// TODO(crbug.com/40807881): Specify `user_data_dir` to CrashPad.
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
ChromeCrashReporterClient::Create();
|
||||
+#endif
|
||||
crash_reporter::InitializeCrashpad(true, "app_shim");
|
||||
|
||||
|
||||
base::PathService::OverrideAndCreateIfNeeded(
|
||||
diff --git chrome/browser/chrome_browser_main.cc chrome/browser/chrome_browser_main.cc
|
||||
index 3bd823dc11c54..c8ac6d01a4d94 100644
|
||||
index bf8c5df67c1e3..61bf28f46b423 100644
|
||||
--- chrome/browser/chrome_browser_main.cc
|
||||
+++ chrome/browser/chrome_browser_main.cc
|
||||
@@ -52,6 +52,7 @@
|
||||
@@ -53,6 +53,7 @@
|
||||
#include "build/build_config.h"
|
||||
#include "build/chromeos_buildflags.h"
|
||||
#include "cc/base/switches.h"
|
||||
@ -259,60 +259,60 @@ index 3bd823dc11c54..c8ac6d01a4d94 100644
|
||||
#include "chrome/browser/about_flags.h"
|
||||
#include "chrome/browser/active_use_util.h"
|
||||
#include "chrome/browser/after_startup_task_utils.h"
|
||||
@@ -533,7 +534,7 @@ void ProcessSingletonNotificationCallbackImpl(
|
||||
@@ -529,7 +530,7 @@ void ProcessSingletonNotificationCallbackImpl(
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
-#if BUILDFLAG(IS_WIN)
|
||||
+#if BUILDFLAG(IS_WIN) && !BUILDFLAG(ENABLE_CEF)
|
||||
// The uninstall command-line switch is handled by the origin process; see
|
||||
// ChromeMainDelegate::PostEarlyInitialization(...). The other process won't
|
||||
// be able to become the singleton process and will display a window asking
|
||||
@@ -837,7 +838,7 @@ int ChromeBrowserMainParts::PreEarlyInitialization() {
|
||||
@@ -833,7 +834,7 @@ int ChromeBrowserMainParts::PreEarlyInitialization() {
|
||||
return content::RESULT_CODE_NORMAL_EXIT;
|
||||
}
|
||||
|
||||
|
||||
-#if BUILDFLAG(IS_WIN)
|
||||
+#if BUILDFLAG(IS_WIN) && !BUILDFLAG(ENABLE_CEF)
|
||||
// If we are running stale binaries then relaunch and exit immediately.
|
||||
if (upgrade_util::IsRunningOldChrome()) {
|
||||
if (!upgrade_util::RelaunchChromeBrowser(
|
||||
@@ -850,7 +851,7 @@ int ChromeBrowserMainParts::PreEarlyInitialization() {
|
||||
@@ -846,7 +847,7 @@ int ChromeBrowserMainParts::PreEarlyInitialization() {
|
||||
// result in browser startup bailing.
|
||||
return chrome::RESULT_CODE_NORMAL_EXIT_UPGRADE_RELAUNCHED;
|
||||
}
|
||||
-#endif // BUILDFLAG(IS_WIN)
|
||||
+#endif // BUILDFLAG(IS_WIN) && !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
return load_local_state_result;
|
||||
}
|
||||
@@ -960,7 +961,7 @@ int ChromeBrowserMainParts::OnLocalStateLoaded(
|
||||
@@ -956,7 +957,7 @@ int ChromeBrowserMainParts::OnLocalStateLoaded(
|
||||
browser_process_->local_state());
|
||||
platform_management_service->RefreshCache(base::NullCallback());
|
||||
|
||||
|
||||
-#if BUILDFLAG(IS_WIN)
|
||||
+#if BUILDFLAG(IS_WIN) && !BUILDFLAG(ENABLE_CEF)
|
||||
if (first_run::IsChromeFirstRun()) {
|
||||
bool stats_default;
|
||||
if (GoogleUpdateSettings::GetCollectStatsConsentDefault(&stats_default)) {
|
||||
@@ -973,7 +974,7 @@ int ChromeBrowserMainParts::OnLocalStateLoaded(
|
||||
@@ -969,7 +970,7 @@ int ChromeBrowserMainParts::OnLocalStateLoaded(
|
||||
: metrics::EnableMetricsDefault::OPT_IN);
|
||||
}
|
||||
}
|
||||
-#endif // BUILDFLAG(IS_WIN)
|
||||
+#endif // BUILDFLAG(IS_WIN) && !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
std::string locale =
|
||||
startup_data_->chrome_feature_list_creator()->actual_locale();
|
||||
@@ -1006,6 +1007,7 @@ int ChromeBrowserMainParts::ApplyFirstRunPrefs() {
|
||||
@@ -1002,6 +1003,7 @@ int ChromeBrowserMainParts::ApplyFirstRunPrefs() {
|
||||
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
master_prefs_ = std::make_unique<first_run::MasterPrefs>();
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
std::unique_ptr<installer::InitialPreferences> installer_initial_prefs =
|
||||
startup_data_->chrome_feature_list_creator()->TakeInitialPrefs();
|
||||
if (!installer_initial_prefs)
|
||||
@@ -1039,6 +1041,7 @@ int ChromeBrowserMainParts::ApplyFirstRunPrefs() {
|
||||
@@ -1035,6 +1037,7 @@ int ChromeBrowserMainParts::ApplyFirstRunPrefs() {
|
||||
master_prefs_->confirm_to_quit);
|
||||
}
|
||||
#endif // BUILDFLAG(IS_MAC)
|
||||
@ -320,57 +320,57 @@ index 3bd823dc11c54..c8ac6d01a4d94 100644
|
||||
#endif // !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
return content::RESULT_CODE_NORMAL_EXIT;
|
||||
}
|
||||
@@ -1100,6 +1103,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() {
|
||||
|
||||
@@ -1096,6 +1099,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() {
|
||||
|
||||
browser_process_->browser_policy_connector()->OnResourceBundleCreated();
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
// Android does first run in Java instead of native.
|
||||
// Chrome OS has its own out-of-box-experience code.
|
||||
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
@@ -1121,6 +1125,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() {
|
||||
@@ -1117,6 +1121,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() {
|
||||
#endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
|
||||
}
|
||||
#endif // !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
#if BUILDFLAG(IS_MAC)
|
||||
#if defined(ARCH_CPU_X86_64)
|
||||
@@ -1483,6 +1488,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
@@ -1479,6 +1484,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
browser_process_->PreMainMessageLoopRun();
|
||||
|
||||
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
// If the command line specifies 'uninstall' then we need to work here
|
||||
// unless we detect another chrome browser running.
|
||||
if (base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kUninstall)) {
|
||||
@@ -1494,6 +1500,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
@@ -1490,6 +1496,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
return ChromeBrowserMainPartsWin::HandleIconsCommands(
|
||||
*base::CommandLine::ForCurrentProcess());
|
||||
}
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
ui::SelectFileDialog::SetFactory(
|
||||
std::make_unique<ChromeSelectFileDialogFactory>());
|
||||
@@ -1519,6 +1526,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
@@ -1515,6 +1522,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
}
|
||||
#endif // BUILDFLAG(CHROME_FOR_TESTING)
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
|
||||
switches::kMakeDefaultBrowser)) {
|
||||
bool is_managed = g_browser_process->local_state()->IsManagedPreference(
|
||||
@@ -1532,18 +1540,22 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
@@ -1528,18 +1536,22 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
? static_cast<int>(content::RESULT_CODE_NORMAL_EXIT)
|
||||
: static_cast<int>(chrome::RESULT_CODE_SHELL_INTEGRATION_FAILED);
|
||||
}
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
#if defined(USE_AURA)
|
||||
// Make sure aura::Env has been initialized.
|
||||
CHECK(aura::Env::GetInstance());
|
||||
#endif // defined(USE_AURA)
|
||||
|
||||
|
||||
+
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
@ -380,44 +380,44 @@ index 3bd823dc11c54..c8ac6d01a4d94 100644
|
||||
return chrome::RESULT_CODE_NORMAL_EXIT_UPGRADE_RELAUNCHED;
|
||||
#endif // BUILDFLAG(IS_WIN)
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(ENABLE_DOWNGRADE_PROCESSING)
|
||||
// Begin relaunch processing immediately if User Data migration is required
|
||||
@@ -1582,7 +1594,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
@@ -1578,7 +1590,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
}
|
||||
#endif // !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
|
||||
|
||||
|
||||
-#if BUILDFLAG(IS_WIN)
|
||||
+#if BUILDFLAG(IS_WIN) && !BUILDFLAG(ENABLE_CEF)
|
||||
// Check if there is any machine level Chrome installed on the current
|
||||
// machine. If yes and the current Chrome process is user level, we do not
|
||||
// allow the user level Chrome to run. So we notify the user and uninstall
|
||||
@@ -1591,7 +1603,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
@@ -1587,7 +1599,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
// obtained but before potentially creating the first run sentinel).
|
||||
if (ChromeBrowserMainPartsWin::CheckMachineLevelInstall())
|
||||
return chrome::RESULT_CODE_MACHINE_LEVEL_INSTALL_EXISTS;
|
||||
-#endif // BUILDFLAG(IS_WIN)
|
||||
+#endif // BUILDFLAG(IS_WIN) && !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
// Desktop construction occurs here, (required before profile creation).
|
||||
PreProfileInit();
|
||||
@@ -1666,6 +1678,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
@@ -1660,6 +1672,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
// Call `PostProfileInit()`and set it up for profiles created later.
|
||||
profile_init_manager_ = std::make_unique<ProfileInitManager>(this, profile);
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
// Execute first run specific code after the PrefService has been initialized
|
||||
// and preferences have been registered since some of the import code depends
|
||||
@@ -1705,6 +1718,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
@@ -1699,6 +1712,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
*base::CommandLine::ForCurrentProcess());
|
||||
}
|
||||
#endif // BUILDFLAG(IS_WIN)
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
// Configure modules that need access to resources.
|
||||
net::NetModule::SetResourceProvider(ChromeNetResourceProvider);
|
||||
@@ -1796,6 +1810,11 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
@@ -1790,6 +1804,11 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
g_browser_process->profile_manager()->GetLastOpenedProfiles();
|
||||
}
|
||||
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
@ -429,8 +429,8 @@ index 3bd823dc11c54..c8ac6d01a4d94 100644
|
||||
// This step is costly.
|
||||
if (browser_creator_->Start(*base::CommandLine::ForCurrentProcess(),
|
||||
base::FilePath(), profile_info,
|
||||
@@ -1828,11 +1847,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
|
||||
@@ -1822,11 +1841,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
|
||||
// Create the RunLoop for MainMessageLoopRun() to use and transfer
|
||||
// ownership of the browser's lifetime to the BrowserProcess.
|
||||
+ // CEF with the Chrome runtime will create and manage its own RunLoop.
|
||||
@ -443,9 +443,9 @@ index 3bd823dc11c54..c8ac6d01a4d94 100644
|
||||
+
|
||||
browser_creator_.reset();
|
||||
#endif // !BUILDFLAG(IS_ANDROID)
|
||||
|
||||
|
||||
diff --git chrome/browser/chrome_browser_main_mac.mm chrome/browser/chrome_browser_main_mac.mm
|
||||
index 9a8dfdb6bc3ce..5981a8a0fae38 100644
|
||||
index e26e3625c99c8..c0d4a95607e37 100644
|
||||
--- chrome/browser/chrome_browser_main_mac.mm
|
||||
+++ chrome/browser/chrome_browser_main_mac.mm
|
||||
@@ -20,6 +20,7 @@
|
||||
@ -456,35 +456,35 @@ index 9a8dfdb6bc3ce..5981a8a0fae38 100644
|
||||
#import "chrome/browser/app_controller_mac.h"
|
||||
#include "chrome/browser/apps/app_shim/app_shim_listener.h"
|
||||
#include "chrome/browser/browser_process.h"
|
||||
@@ -124,6 +125,7 @@ void ChromeBrowserMainPartsMac::PreCreateMainMessageLoop() {
|
||||
@@ -125,6 +126,7 @@ void ChromeBrowserMainPartsMac::PreCreateMainMessageLoop() {
|
||||
}
|
||||
#endif // !BUILDFLAG(CHROME_FOR_TESTING)
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
// Create the app delegate by requesting the shared AppController.
|
||||
CHECK_EQ(nil, NSApp.delegate);
|
||||
AppController* app_controller = AppController.sharedController;
|
||||
@@ -132,6 +134,7 @@ void ChromeBrowserMainPartsMac::PreCreateMainMessageLoop() {
|
||||
@@ -133,6 +135,7 @@ void ChromeBrowserMainPartsMac::PreCreateMainMessageLoop() {
|
||||
chrome::BuildMainMenu(NSApp, app_controller,
|
||||
l10n_util::GetStringUTF16(IDS_PRODUCT_NAME), false);
|
||||
[app_controller mainMenuCreated];
|
||||
+#endif // BUILDFLAG(ENABLE_CEF)
|
||||
|
||||
|
||||
ui::WarmScreenCapture();
|
||||
|
||||
@@ -172,5 +175,7 @@ void ChromeBrowserMainPartsMac::PostProfileInit(Profile* profile,
|
||||
|
||||
@@ -187,5 +190,7 @@ void ChromeBrowserMainPartsMac::PostMainMessageLoopRun() {
|
||||
}
|
||||
|
||||
|
||||
void ChromeBrowserMainPartsMac::DidEndMainMessageLoop() {
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
[AppController.sharedController didEndMainMessageLoop];
|
||||
+#endif
|
||||
}
|
||||
diff --git chrome/browser/chrome_content_browser_client.cc chrome/browser/chrome_content_browser_client.cc
|
||||
index 4b8cf312d4ca4..ef3c7e5e372b4 100644
|
||||
index 4db37945148cb..56a31fecf00a2 100644
|
||||
--- chrome/browser/chrome_content_browser_client.cc
|
||||
+++ chrome/browser/chrome_content_browser_client.cc
|
||||
@@ -46,6 +46,7 @@
|
||||
@@ -48,6 +48,7 @@
|
||||
#include "build/build_config.h"
|
||||
#include "build/chromeos_buildflags.h"
|
||||
#include "build/config/chromebox_for_meetings/buildflags.h" // PLATFORM_CFM
|
||||
@ -492,19 +492,19 @@ index 4b8cf312d4ca4..ef3c7e5e372b4 100644
|
||||
#include "chrome/browser/after_startup_task_utils.h"
|
||||
#include "chrome/browser/ai/ai_manager_keyed_service_factory.h"
|
||||
#include "chrome/browser/app_mode/app_mode_utils.h"
|
||||
@@ -1518,6 +1519,8 @@ ChromeContentBrowserClient::GetPopupNavigationDelegateFactoryForTesting() {
|
||||
@@ -1543,6 +1544,8 @@ ChromeContentBrowserClient::GetPopupNavigationDelegateFactoryForTesting() {
|
||||
}
|
||||
|
||||
|
||||
ChromeContentBrowserClient::ChromeContentBrowserClient() {
|
||||
+ keepalive_timer_.reset(new base::OneShotTimer());
|
||||
+
|
||||
#if BUILDFLAG(ENABLE_PLUGINS)
|
||||
extra_parts_.push_back(
|
||||
std::make_unique<ChromeContentBrowserClientPluginsPart>());
|
||||
@@ -1555,6 +1558,11 @@ ChromeContentBrowserClient::~ChromeContentBrowserClient() {
|
||||
@@ -1580,6 +1583,11 @@ ChromeContentBrowserClient::~ChromeContentBrowserClient() {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+void ChromeContentBrowserClient::CleanupOnUIThread() {
|
||||
+ DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
|
||||
+ keepalive_timer_.reset();
|
||||
@ -513,7 +513,7 @@ index 4b8cf312d4ca4..ef3c7e5e372b4 100644
|
||||
// static
|
||||
void ChromeContentBrowserClient::RegisterLocalStatePrefs(
|
||||
PrefRegistrySimple* registry) {
|
||||
@@ -3890,28 +3898,25 @@ bool UpdatePreferredColorScheme(WebPreferences* web_prefs,
|
||||
@@ -3956,28 +3964,25 @@ bool UpdatePreferredColorScheme(WebPreferences* web_prefs,
|
||||
web_prefs->preferred_color_scheme;
|
||||
}
|
||||
#else
|
||||
@ -543,7 +543,7 @@ index 4b8cf312d4ca4..ef3c7e5e372b4 100644
|
||||
+ ? ui::NativeTheme::PreferredColorScheme::kLight
|
||||
+ : ui::NativeTheme::PreferredColorScheme::kDark;
|
||||
}
|
||||
|
||||
|
||||
- // Update based on the ColorProvider associated with `web_contents`. Depends
|
||||
- // on the browser color mode settings and whether the user profile has set a
|
||||
- // custom coloring for the browser ui.
|
||||
@ -557,52 +557,53 @@ index 4b8cf312d4ca4..ef3c7e5e372b4 100644
|
||||
+ web_prefs->preferred_root_scrollbar_color_scheme =
|
||||
+ ToBlinkPreferredColorScheme(preferred_color_scheme);
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
|
||||
|
||||
// Reauth WebUI doesn't support dark mode yet because it shares the dialog
|
||||
@@ -4693,9 +4698,11 @@ void ChromeContentBrowserClient::BrowserURLHandlerCreated(
|
||||
@@ -4748,9 +4753,11 @@ void ChromeContentBrowserClient::BrowserURLHandlerCreated(
|
||||
&search::HandleNewTabURLReverseRewrite);
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
// chrome: & friends.
|
||||
handler->AddHandlerPair(&ChromeContentBrowserClient::HandleWebUI,
|
||||
&ChromeContentBrowserClient::HandleWebUIReverse);
|
||||
+#endif
|
||||
}
|
||||
|
||||
|
||||
base::FilePath ChromeContentBrowserClient::GetDefaultDownloadDirectory() {
|
||||
@@ -6794,7 +6801,7 @@ void ChromeContentBrowserClient::OnNetworkServiceCreated(
|
||||
@@ -6877,7 +6884,7 @@ void ChromeContentBrowserClient::OnNetworkServiceCreated(
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
-void ChromeContentBrowserClient::ConfigureNetworkContextParams(
|
||||
+bool ChromeContentBrowserClient::ConfigureNetworkContextParams(
|
||||
content::BrowserContext* context,
|
||||
bool in_memory,
|
||||
const base::FilePath& relative_partition_path,
|
||||
@@ -6812,6 +6819,8 @@ void ChromeContentBrowserClient::ConfigureNetworkContextParams(
|
||||
@@ -6895,6 +6902,8 @@ void ChromeContentBrowserClient::ConfigureNetworkContextParams(
|
||||
network_context_params->user_agent = GetUserAgentBasedOnPolicy(context);
|
||||
network_context_params->accept_language = GetApplicationLocale();
|
||||
}
|
||||
+
|
||||
+ return true;
|
||||
}
|
||||
|
||||
|
||||
std::vector<base::FilePath>
|
||||
@@ -7929,10 +7938,10 @@ void ChromeContentBrowserClient::OnKeepaliveRequestStarted(
|
||||
@@ -8047,11 +8056,11 @@ void ChromeContentBrowserClient::OnKeepaliveRequestStarted(
|
||||
const auto now = base::TimeTicks::Now();
|
||||
const auto timeout = GetKeepaliveTimerTimeout(context);
|
||||
keepalive_deadline_ = std::max(keepalive_deadline_, now + timeout);
|
||||
- if (keepalive_deadline_ > now && !keepalive_timer_.IsRunning()) {
|
||||
+ if (keepalive_deadline_ > now && !keepalive_timer_->IsRunning()) {
|
||||
DVLOG(1) << "Starting a keepalive timer(" << timeout.InSecondsF()
|
||||
<< " seconds)";
|
||||
- keepalive_timer_.Start(
|
||||
+ keepalive_timer_->Start(
|
||||
FROM_HERE, keepalive_deadline_ - now,
|
||||
base::BindOnce(
|
||||
&ChromeContentBrowserClient::OnKeepaliveTimerFired,
|
||||
@@ -7951,7 +7960,8 @@ void ChromeContentBrowserClient::OnKeepaliveRequestFinished() {
|
||||
if (!KeepAliveRegistry::GetInstance()->IsShuttingDown()) {
|
||||
DVLOG(1) << "Starting a keepalive timer(" << timeout.InSecondsF()
|
||||
<< " seconds)";
|
||||
- keepalive_timer_.Start(
|
||||
+ keepalive_timer_->Start(
|
||||
FROM_HERE, keepalive_deadline_ - now,
|
||||
base::BindOnce(
|
||||
&ChromeContentBrowserClient::OnKeepaliveTimerFired,
|
||||
@@ -8073,7 +8082,8 @@ void ChromeContentBrowserClient::OnKeepaliveRequestFinished() {
|
||||
--num_keepalive_requests_;
|
||||
if (num_keepalive_requests_ == 0) {
|
||||
DVLOG(1) << "Stopping the keepalive timer";
|
||||
@ -612,7 +613,7 @@ index 4b8cf312d4ca4..ef3c7e5e372b4 100644
|
||||
// This deletes the keep alive handle attached to the timer function and
|
||||
// unblock the shutdown sequence.
|
||||
}
|
||||
@@ -8100,7 +8110,7 @@ void ChromeContentBrowserClient::OnKeepaliveTimerFired(
|
||||
@@ -8237,7 +8247,7 @@ void ChromeContentBrowserClient::OnKeepaliveTimerFired(
|
||||
const auto now = base::TimeTicks::Now();
|
||||
const auto then = keepalive_deadline_;
|
||||
if (now < then) {
|
||||
@ -622,19 +623,19 @@ index 4b8cf312d4ca4..ef3c7e5e372b4 100644
|
||||
base::BindOnce(&ChromeContentBrowserClient::OnKeepaliveTimerFired,
|
||||
weak_factory_.GetWeakPtr(),
|
||||
diff --git chrome/browser/chrome_content_browser_client.h chrome/browser/chrome_content_browser_client.h
|
||||
index be75c2ce84ba4..f76963b5023ef 100644
|
||||
index 355d347c1ae84..8b1eb079ab348 100644
|
||||
--- chrome/browser/chrome_content_browser_client.h
|
||||
+++ chrome/browser/chrome_content_browser_client.h
|
||||
@@ -150,6 +150,8 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
|
||||
|
||||
@@ -151,6 +151,8 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
|
||||
|
||||
~ChromeContentBrowserClient() override;
|
||||
|
||||
|
||||
+ virtual void CleanupOnUIThread();
|
||||
+
|
||||
// TODO(crbug.com/41356866): This file is about calls from content/ out
|
||||
// to chrome/ to get values or notify about events, but both of these
|
||||
// functions are from chrome/ to chrome/ and don't involve content/ at all.
|
||||
@@ -705,7 +707,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
|
||||
@@ -707,7 +709,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
|
||||
override;
|
||||
void OnNetworkServiceCreated(
|
||||
network::mojom::NetworkService* network_service) override;
|
||||
@ -643,17 +644,17 @@ index be75c2ce84ba4..f76963b5023ef 100644
|
||||
content::BrowserContext* context,
|
||||
bool in_memory,
|
||||
const base::FilePath& relative_partition_path,
|
||||
@@ -1248,7 +1250,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
|
||||
|
||||
@@ -1255,7 +1257,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
|
||||
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
uint64_t num_keepalive_requests_ = 0;
|
||||
- base::OneShotTimer keepalive_timer_;
|
||||
+ std::unique_ptr<base::OneShotTimer> keepalive_timer_;
|
||||
base::TimeTicks keepalive_deadline_;
|
||||
#endif
|
||||
|
||||
|
||||
diff --git chrome/browser/prefs/browser_prefs.cc chrome/browser/prefs/browser_prefs.cc
|
||||
index 0f37944dfa465..6d36a31dff18c 100644
|
||||
index 812bb38a0c53e..5fc84ff4b855e 100644
|
||||
--- chrome/browser/prefs/browser_prefs.cc
|
||||
+++ chrome/browser/prefs/browser_prefs.cc
|
||||
@@ -16,6 +16,7 @@
|
||||
@ -664,10 +665,10 @@ index 0f37944dfa465..6d36a31dff18c 100644
|
||||
#include "chrome/browser/about_flags.h"
|
||||
#include "chrome/browser/accessibility/accessibility_labels_service.h"
|
||||
#include "chrome/browser/accessibility/invert_bubble_prefs.h"
|
||||
@@ -204,6 +205,10 @@
|
||||
@@ -205,6 +206,10 @@
|
||||
#include "chrome/browser/background/background_mode_manager.h"
|
||||
#endif
|
||||
|
||||
|
||||
+#if BUILDFLAG(ENABLE_CEF)
|
||||
+#include "cef/libcef/browser/prefs/browser_prefs.h"
|
||||
+#endif
|
||||
@ -675,18 +676,18 @@ index 0f37944dfa465..6d36a31dff18c 100644
|
||||
#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
#include "chrome/browser/accessibility/animation_policy_prefs.h"
|
||||
#include "chrome/browser/apps/platform_apps/shortcut_manager.h"
|
||||
@@ -1694,7 +1699,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
|
||||
@@ -1731,7 +1736,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
|
||||
#endif // BUILDFLAG(GOOGLE_CHROME_BRANDING)
|
||||
#endif // BUILDFLAG(IS_WIN)
|
||||
|
||||
|
||||
-#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS)
|
||||
+#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS) && \
|
||||
+ BUILDFLAG(ENABLE_DOWNGRADE_PROCESSING)
|
||||
downgrade::RegisterPrefs(registry);
|
||||
#endif
|
||||
|
||||
@@ -1747,6 +1753,11 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
|
||||
|
||||
|
||||
@@ -1784,6 +1790,11 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
|
||||
|
||||
// This is intentionally last.
|
||||
RegisterLocalStatePrefsForMigration(registry);
|
||||
+
|
||||
@ -695,12 +696,12 @@ index 0f37944dfa465..6d36a31dff18c 100644
|
||||
+ browser_prefs::RegisterLocalStatePrefs(registry);
|
||||
+#endif
|
||||
}
|
||||
|
||||
|
||||
// Register prefs applicable to all profiles.
|
||||
@@ -2199,6 +2210,10 @@ void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
|
||||
@@ -2233,6 +2244,10 @@ void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
|
||||
const std::string& locale) {
|
||||
RegisterProfilePrefs(registry, locale);
|
||||
|
||||
|
||||
+#if BUILDFLAG(ENABLE_CEF)
|
||||
+ browser_prefs::RegisterProfilePrefs(registry);
|
||||
+#endif
|
||||
|
Reference in New Issue
Block a user