mirror of
				https://bitbucket.org/chromiumembedded/cef
				synced 2025-06-05 21:39:12 +02:00 
			
		
		
		
	- MacOS ARM64 Official builds are currently failing due to https://issues.chromium.org/issues/326898585
		
			
				
	
	
		
			83 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| diff --git chrome/browser/themes/theme_service.cc chrome/browser/themes/theme_service.cc
 | |
| index 0b39e73c2a394..23b0bdcb7b7db 100644
 | |
| --- chrome/browser/themes/theme_service.cc
 | |
| +++ chrome/browser/themes/theme_service.cc
 | |
| @@ -30,6 +30,7 @@
 | |
|  #include "base/task/thread_pool.h"
 | |
|  #include "base/trace_event/trace_event.h"
 | |
|  #include "build/build_config.h"
 | |
| +#include "cef/libcef/features/runtime.h"
 | |
|  #include "chrome/browser/browser_features.h"
 | |
|  #include "chrome/browser/extensions/extension_service.h"
 | |
|  #include "chrome/browser/extensions/theme_installed_infobar_delegate.h"
 | |
| @@ -69,6 +70,10 @@
 | |
|  #include "ui/color/color_provider_manager.h"
 | |
|  #include "ui/native_theme/native_theme.h"
 | |
|  
 | |
| +#if BUILDFLAG(ENABLE_CEF)
 | |
| +#include "cef/libcef/common/extensions/extensions_util.h"
 | |
| +#endif
 | |
| +
 | |
|  #if BUILDFLAG(ENABLE_EXTENSIONS)
 | |
|  #include "base/scoped_observation.h"
 | |
|  #include "extensions/browser/extension_registry_observer.h"
 | |
| @@ -270,11 +275,19 @@ void ThemeService::Init() {
 | |
|    // OnExtensionServiceReady. Otherwise, the ThemeObserver won't be
 | |
|    // constructed in time to observe the corresponding events.
 | |
|  #if BUILDFLAG(ENABLE_EXTENSIONS)
 | |
| +#if BUILDFLAG(ENABLE_CEF)
 | |
| +  const bool extensions_disabled = cef::IsAlloyRuntimeEnabled() &&
 | |
| +                                   !extensions::ExtensionsEnabled();
 | |
| +#else
 | |
| +  const bool extensions_disabled = false;
 | |
| +#endif
 | |
| +  if (!extensions_disabled) {
 | |
|    theme_observer_ = std::make_unique<ThemeObserver>(this);
 | |
|  
 | |
|    extensions::ExtensionSystem::Get(profile_)->ready().Post(
 | |
|        FROM_HERE, base::BindOnce(&ThemeService::OnExtensionServiceReady,
 | |
|                                  weak_ptr_factory_.GetWeakPtr()));
 | |
| +  }
 | |
|  #endif
 | |
|    theme_syncable_service_ =
 | |
|        std::make_unique<ThemeSyncableService>(profile_, this);
 | |
| diff --git chrome/browser/themes/theme_service_factory.cc chrome/browser/themes/theme_service_factory.cc
 | |
| index 879bbeef4037b..e6cc36f388197 100644
 | |
| --- chrome/browser/themes/theme_service_factory.cc
 | |
| +++ chrome/browser/themes/theme_service_factory.cc
 | |
| @@ -9,6 +9,7 @@
 | |
|  #include "base/trace_event/trace_event.h"
 | |
|  #include "build/build_config.h"
 | |
|  #include "build/chromeos_buildflags.h"
 | |
| +#include "cef/libcef/features/runtime.h"
 | |
|  #include "chrome/browser/extensions/extension_system_factory.h"
 | |
|  #include "chrome/browser/profiles/profile.h"
 | |
|  #include "chrome/browser/themes/theme_service.h"
 | |
| @@ -35,6 +36,10 @@
 | |
|  #include "ui/linux/linux_ui_factory.h"
 | |
|  #endif
 | |
|  
 | |
| +#if BUILDFLAG(ENABLE_CEF)
 | |
| +#include "cef/libcef/common/extensions/extensions_util.h"
 | |
| +#endif
 | |
| +
 | |
|  namespace {
 | |
|  
 | |
|  const ThemeHelper& GetThemeHelper() {
 | |
| @@ -96,7 +101,15 @@ ThemeServiceFactory::ThemeServiceFactory()
 | |
|                .Build()) {
 | |
|    DependsOn(extensions::ExtensionRegistryFactory::GetInstance());
 | |
|    DependsOn(extensions::ExtensionPrefsFactory::GetInstance());
 | |
| +#if BUILDFLAG(ENABLE_CEF)
 | |
| +  const bool extensions_disabled = cef::IsAlloyRuntimeEnabled() &&
 | |
| +                                   !extensions::ExtensionsEnabled();
 | |
| +#else
 | |
| +  const bool extensions_disabled = false;
 | |
| +#endif
 | |
| +  if (!extensions_disabled) {
 | |
|    DependsOn(extensions::ExtensionSystemFactory::GetInstance());
 | |
| +  }
 | |
|  }
 | |
|  
 | |
|  ThemeServiceFactory::~ThemeServiceFactory() = default;
 |