mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
alloy: Remove optimization/prediction service usage (see issue #3352)
This service is required by the "PermissionOnDeviceNotificationPredictions" feature which is enabled by default in https://crbug.com/1350956. It uses a Google backend service as described at https://go.dev/solutions/google/chrome. This change removes the usage of PredictionBasedPermissionUiSelector, which triggered this dependency, along with related startup complexity that was added to support the optimization/prediction service in the M106 update.
This commit is contained in:
@@ -20,14 +20,12 @@
|
|||||||
#include "base/lazy_instance.h"
|
#include "base/lazy_instance.h"
|
||||||
#include "base/logging.h"
|
#include "base/logging.h"
|
||||||
#include "base/strings/string_util.h"
|
#include "base/strings/string_util.h"
|
||||||
#include "base/threading/thread_restrictions.h"
|
|
||||||
#include "chrome/browser/font_family_cache.h"
|
#include "chrome/browser/font_family_cache.h"
|
||||||
#include "chrome/browser/media/media_device_id_salt.h"
|
#include "chrome/browser/media/media_device_id_salt.h"
|
||||||
#include "chrome/browser/permissions/permission_manager_factory.h"
|
#include "chrome/browser/permissions/permission_manager_factory.h"
|
||||||
#include "chrome/browser/plugins/chrome_plugin_service_filter.h"
|
#include "chrome/browser/plugins/chrome_plugin_service_filter.h"
|
||||||
#include "chrome/browser/profiles/profile_key.h"
|
#include "chrome/browser/profiles/profile_key.h"
|
||||||
#include "chrome/browser/reduce_accept_language/reduce_accept_language_factory.h"
|
#include "chrome/browser/reduce_accept_language/reduce_accept_language_factory.h"
|
||||||
#include "chrome/browser/transition_manager/full_browser_transition_manager.h"
|
|
||||||
#include "chrome/browser/ui/zoom/chrome_zoom_level_prefs.h"
|
#include "chrome/browser/ui/zoom/chrome_zoom_level_prefs.h"
|
||||||
#include "chrome/common/pref_names.h"
|
#include "chrome/common/pref_names.h"
|
||||||
#include "components/guest_view/browser/guest_view_manager.h"
|
#include "components/guest_view/browser/guest_view_manager.h"
|
||||||
@@ -141,17 +139,11 @@ void AlloyBrowserContext::Initialize() {
|
|||||||
pref_service_ = browser_prefs::CreatePrefService(
|
pref_service_ = browser_prefs::CreatePrefService(
|
||||||
this, cache_path_, !!settings_.persist_user_preferences);
|
this, cache_path_, !!settings_.persist_user_preferences);
|
||||||
|
|
||||||
FullBrowserTransitionManager::Get()->OnProfileCreated(this);
|
// This must be called before creating any services to avoid hitting
|
||||||
|
// DependencyManager::AssertContextWasntDestroyed when creating/destroying
|
||||||
{
|
// multiple browser contexts (due to pointer address reuse).
|
||||||
base::ScopedAllowBlockingForTesting allow_blocking;
|
BrowserContextDependencyManager::GetInstance()->CreateBrowserContextServices(
|
||||||
|
this);
|
||||||
// This must be called before creating any services to avoid hitting
|
|
||||||
// DependencyManager::AssertContextWasntDestroyed when creating/destroying
|
|
||||||
// multiple browser contexts (due to pointer address reuse).
|
|
||||||
BrowserContextDependencyManager::GetInstance()
|
|
||||||
->CreateBrowserContextServices(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
const bool extensions_enabled = extensions::ExtensionsEnabled();
|
const bool extensions_enabled = extensions::ExtensionsEnabled();
|
||||||
if (extensions_enabled) {
|
if (extensions_enabled) {
|
||||||
@@ -194,9 +186,6 @@ void AlloyBrowserContext::Initialize() {
|
|||||||
|
|
||||||
ChromePluginServiceFilter::GetInstance()->RegisterProfile(this);
|
ChromePluginServiceFilter::GetInstance()->RegisterProfile(this);
|
||||||
|
|
||||||
auto* db_provider = GetDefaultStoragePartition()->GetProtoDatabaseProvider();
|
|
||||||
key_->SetProtoDatabaseProvider(db_provider);
|
|
||||||
|
|
||||||
media_device_id_salt_ = new MediaDeviceIDSalt(pref_service);
|
media_device_id_salt_ = new MediaDeviceIDSalt(pref_service);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -207,7 +196,6 @@ void AlloyBrowserContext::Shutdown() {
|
|||||||
MaybeSendDestroyedNotification();
|
MaybeSendDestroyedNotification();
|
||||||
|
|
||||||
ChromePluginServiceFilter::GetInstance()->UnregisterProfile(this);
|
ChromePluginServiceFilter::GetInstance()->UnregisterProfile(this);
|
||||||
FullBrowserTransitionManager::Get()->OnProfileDestroyed(this);
|
|
||||||
|
|
||||||
// Remove any BrowserContextKeyedServiceFactory associations. This must be
|
// Remove any BrowserContextKeyedServiceFactory associations. This must be
|
||||||
// called before the ProxyService owned by AlloyBrowserContext is destroyed.
|
// called before the ProxyService owned by AlloyBrowserContext is destroyed.
|
||||||
|
@@ -282,6 +282,10 @@ int AlloyBrowserMainParts::PreMainMessageLoopRun() {
|
|||||||
// Create the global RequestContext.
|
// Create the global RequestContext.
|
||||||
global_request_context_ =
|
global_request_context_ =
|
||||||
CefRequestContextImpl::CreateGlobalRequestContext(settings);
|
CefRequestContextImpl::CreateGlobalRequestContext(settings);
|
||||||
|
auto browser_context =
|
||||||
|
global_request_context_->GetBrowserContext()->AsBrowserContext();
|
||||||
|
|
||||||
|
CefDevToolsManagerDelegate::StartHttpHandler(browser_context);
|
||||||
|
|
||||||
#if BUILDFLAG(IS_WIN)
|
#if BUILDFLAG(IS_WIN)
|
||||||
// Windows parental controls calls can be slow, so we do an early init here
|
// Windows parental controls calls can be slow, so we do an early init here
|
||||||
@@ -322,19 +326,6 @@ int AlloyBrowserMainParts::PreMainMessageLoopRun() {
|
|||||||
return content::RESULT_CODE_NORMAL_EXIT;
|
return content::RESULT_CODE_NORMAL_EXIT;
|
||||||
}
|
}
|
||||||
|
|
||||||
void AlloyBrowserMainParts::OnContextInitialized() {
|
|
||||||
CEF_REQUIRE_UIT();
|
|
||||||
|
|
||||||
// Initialize the global RequestContext. This needs to occur on the UI thread
|
|
||||||
// after the CEF context is initialized because it indirectly accesses the
|
|
||||||
// ProfileManager.
|
|
||||||
global_request_context_->InitializeGlobalContext();
|
|
||||||
|
|
||||||
auto browser_context =
|
|
||||||
global_request_context_->GetBrowserContext()->AsBrowserContext();
|
|
||||||
CefDevToolsManagerDelegate::StartHttpHandler(browser_context);
|
|
||||||
}
|
|
||||||
|
|
||||||
void AlloyBrowserMainParts::PostMainMessageLoopRun() {
|
void AlloyBrowserMainParts::PostMainMessageLoopRun() {
|
||||||
// NOTE: Destroy objects in reverse order of creation.
|
// NOTE: Destroy objects in reverse order of creation.
|
||||||
CefDevToolsManagerDelegate::StopHttpHandler();
|
CefDevToolsManagerDelegate::StopHttpHandler();
|
||||||
|
@@ -44,7 +44,6 @@ class AlloyBrowserMainParts : public content::BrowserMainParts {
|
|||||||
void PostCreateMainMessageLoop() override;
|
void PostCreateMainMessageLoop() override;
|
||||||
int PreCreateThreads() override;
|
int PreCreateThreads() override;
|
||||||
int PreMainMessageLoopRun() override;
|
int PreMainMessageLoopRun() override;
|
||||||
void OnContextInitialized();
|
|
||||||
void PostMainMessageLoopRun() override;
|
void PostMainMessageLoopRun() override;
|
||||||
void PostDestroyThreads() override;
|
void PostDestroyThreads() override;
|
||||||
|
|
||||||
|
@@ -1449,10 +1449,6 @@ bool AlloyContentBrowserClient::IsFindInPageDisabledForOrigin(
|
|||||||
return IsPdfExtensionOrigin(origin);
|
return IsPdfExtensionOrigin(origin);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AlloyContentBrowserClient::OnContextInitialized() {
|
|
||||||
browser_main_parts_->OnContextInitialized();
|
|
||||||
}
|
|
||||||
|
|
||||||
CefRefPtr<CefRequestContextImpl> AlloyContentBrowserClient::request_context()
|
CefRefPtr<CefRequestContextImpl> AlloyContentBrowserClient::request_context()
|
||||||
const {
|
const {
|
||||||
return browser_main_parts_->request_context();
|
return browser_main_parts_->request_context();
|
||||||
|
@@ -248,8 +248,6 @@ class AlloyContentBrowserClient : public content::ContentBrowserClient {
|
|||||||
void OnWebContentsCreated(content::WebContents* web_contents) override;
|
void OnWebContentsCreated(content::WebContents* web_contents) override;
|
||||||
bool IsFindInPageDisabledForOrigin(const url::Origin& origin) override;
|
bool IsFindInPageDisabledForOrigin(const url::Origin& origin) override;
|
||||||
|
|
||||||
void OnContextInitialized();
|
|
||||||
|
|
||||||
CefRefPtr<CefRequestContextImpl> request_context() const;
|
CefRefPtr<CefRequestContextImpl> request_context() const;
|
||||||
CefDevToolsDelegate* devtools_delegate() const;
|
CefDevToolsDelegate* devtools_delegate() const;
|
||||||
|
|
||||||
|
@@ -17,7 +17,6 @@
|
|||||||
|
|
||||||
#include "base/command_line.h"
|
#include "base/command_line.h"
|
||||||
#include "chrome/browser/component_updater/chrome_component_updater_configurator.h"
|
#include "chrome/browser/component_updater/chrome_component_updater_configurator.h"
|
||||||
#include "chrome/browser/metrics/chrome_metrics_services_manager_client.h"
|
|
||||||
#include "chrome/browser/net/system_network_context_manager.h"
|
#include "chrome/browser/net/system_network_context_manager.h"
|
||||||
#include "chrome/browser/permissions/chrome_permissions_client.h"
|
#include "chrome/browser/permissions/chrome_permissions_client.h"
|
||||||
#include "chrome/browser/policy/chrome_browser_policy_connector.h"
|
#include "chrome/browser/policy/chrome_browser_policy_connector.h"
|
||||||
@@ -27,8 +26,6 @@
|
|||||||
#include "chrome/browser/ui/prefs/pref_watcher.h"
|
#include "chrome/browser/ui/prefs/pref_watcher.h"
|
||||||
#include "components/component_updater/component_updater_service.h"
|
#include "components/component_updater/component_updater_service.h"
|
||||||
#include "components/component_updater/timer_update_scheduler.h"
|
#include "components/component_updater/timer_update_scheduler.h"
|
||||||
#include "components/metrics_services_manager/metrics_services_manager.h"
|
|
||||||
#include "components/metrics_services_manager/metrics_services_manager_client.h"
|
|
||||||
#include "components/net_log/chrome_net_log.h"
|
#include "components/net_log/chrome_net_log.h"
|
||||||
#include "components/prefs/pref_service.h"
|
#include "components/prefs/pref_service.h"
|
||||||
#include "content/browser/startup_helper.h"
|
#include "content/browser/startup_helper.h"
|
||||||
@@ -104,8 +101,6 @@ void ChromeBrowserProcessAlloy::CleanupOnUIThread() {
|
|||||||
print_job_manager_.reset(nullptr);
|
print_job_manager_.reset(nullptr);
|
||||||
print_preview_dialog_controller_ = nullptr;
|
print_preview_dialog_controller_ = nullptr;
|
||||||
|
|
||||||
metrics_services_manager_.reset();
|
|
||||||
|
|
||||||
profile_manager_.reset();
|
profile_manager_.reset();
|
||||||
event_router_forwarder_ = nullptr;
|
event_router_forwarder_ = nullptr;
|
||||||
|
|
||||||
@@ -130,7 +125,6 @@ void ChromeBrowserProcessAlloy::CleanupOnUIThread() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
local_state_.reset();
|
local_state_.reset();
|
||||||
network_quality_tracker_.reset();
|
|
||||||
browser_policy_connector_.reset();
|
browser_policy_connector_.reset();
|
||||||
background_printing_manager_.reset();
|
background_printing_manager_.reset();
|
||||||
field_trial_list_.reset();
|
field_trial_list_.reset();
|
||||||
@@ -150,19 +144,13 @@ void ChromeBrowserProcessAlloy::FlushLocalStateAndReply(
|
|||||||
|
|
||||||
metrics_services_manager::MetricsServicesManager*
|
metrics_services_manager::MetricsServicesManager*
|
||||||
ChromeBrowserProcessAlloy::GetMetricsServicesManager() {
|
ChromeBrowserProcessAlloy::GetMetricsServicesManager() {
|
||||||
if (!metrics_services_manager_) {
|
NOTREACHED();
|
||||||
auto client =
|
return nullptr;
|
||||||
std::make_unique<ChromeMetricsServicesManagerClient>(local_state());
|
|
||||||
metrics_services_manager_client_ = client.get();
|
|
||||||
metrics_services_manager_ =
|
|
||||||
std::make_unique<metrics_services_manager::MetricsServicesManager>(
|
|
||||||
std::move(client));
|
|
||||||
}
|
|
||||||
return metrics_services_manager_.get();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
metrics::MetricsService* ChromeBrowserProcessAlloy::metrics_service() {
|
metrics::MetricsService* ChromeBrowserProcessAlloy::metrics_service() {
|
||||||
return GetMetricsServicesManager()->GetMetricsService();
|
NOTREACHED();
|
||||||
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
SystemNetworkContextManager*
|
SystemNetworkContextManager*
|
||||||
@@ -173,11 +161,8 @@ ChromeBrowserProcessAlloy::system_network_context_manager() {
|
|||||||
|
|
||||||
network::NetworkQualityTracker*
|
network::NetworkQualityTracker*
|
||||||
ChromeBrowserProcessAlloy::network_quality_tracker() {
|
ChromeBrowserProcessAlloy::network_quality_tracker() {
|
||||||
if (!network_quality_tracker_) {
|
NOTREACHED();
|
||||||
network_quality_tracker_ = std::make_unique<network::NetworkQualityTracker>(
|
return nullptr;
|
||||||
base::BindRepeating(&content::GetNetworkService));
|
|
||||||
}
|
|
||||||
return network_quality_tracker_.get();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ProfileManager* ChromeBrowserProcessAlloy::profile_manager() {
|
ProfileManager* ChromeBrowserProcessAlloy::profile_manager() {
|
||||||
|
@@ -16,14 +16,12 @@
|
|||||||
#include "chrome/browser/browser_process.h"
|
#include "chrome/browser/browser_process.h"
|
||||||
#include "chrome/browser/extensions/event_router_forwarder.h"
|
#include "chrome/browser/extensions/event_router_forwarder.h"
|
||||||
#include "media/media_buildflags.h"
|
#include "media/media_buildflags.h"
|
||||||
#include "services/network/public/cpp/network_quality_tracker.h"
|
|
||||||
|
|
||||||
namespace extensions {
|
namespace extensions {
|
||||||
class ExtensionsBrowserClient;
|
class ExtensionsBrowserClient;
|
||||||
class ExtensionsClient;
|
class ExtensionsClient;
|
||||||
} // namespace extensions
|
} // namespace extensions
|
||||||
|
|
||||||
class ChromeMetricsServicesManagerClient;
|
|
||||||
class ChromeProfileManagerAlloy;
|
class ChromeProfileManagerAlloy;
|
||||||
|
|
||||||
class BackgroundModeManager {
|
class BackgroundModeManager {
|
||||||
@@ -131,16 +129,6 @@ class ChromeBrowserProcessAlloy : public BrowserProcess {
|
|||||||
background_printing_manager_;
|
background_printing_manager_;
|
||||||
std::unique_ptr<PrefService> local_state_;
|
std::unique_ptr<PrefService> local_state_;
|
||||||
|
|
||||||
// |metrics_services_manager_| owns this.
|
|
||||||
raw_ptr<ChromeMetricsServicesManagerClient> metrics_services_manager_client_ =
|
|
||||||
nullptr;
|
|
||||||
|
|
||||||
// Must be destroyed before |local_state_| and |profile_manager_|.
|
|
||||||
std::unique_ptr<metrics_services_manager::MetricsServicesManager>
|
|
||||||
metrics_services_manager_;
|
|
||||||
|
|
||||||
std::unique_ptr<network::NetworkQualityTracker> network_quality_tracker_;
|
|
||||||
|
|
||||||
// Must be destroyed after |local_state_|.
|
// Must be destroyed after |local_state_|.
|
||||||
std::unique_ptr<policy::ChromeBrowserPolicyConnector>
|
std::unique_ptr<policy::ChromeBrowserPolicyConnector>
|
||||||
browser_policy_connector_;
|
browser_policy_connector_;
|
||||||
|
@@ -14,17 +14,12 @@
|
|||||||
#include "chrome/browser/spellchecker/spellcheck_factory.h"
|
#include "chrome/browser/spellchecker/spellcheck_factory.h"
|
||||||
#include "chrome/browser/themes/theme_service_factory.h"
|
#include "chrome/browser/themes/theme_service_factory.h"
|
||||||
#include "chrome/browser/ui/prefs/prefs_tab_helper.h"
|
#include "chrome/browser/ui/prefs/prefs_tab_helper.h"
|
||||||
#include "components/optimization_guide/machine_learning_tflite_buildflags.h"
|
|
||||||
#include "components/permissions/features.h"
|
#include "components/permissions/features.h"
|
||||||
#include "extensions/browser/api/alarms/alarm_manager.h"
|
#include "extensions/browser/api/alarms/alarm_manager.h"
|
||||||
#include "extensions/browser/api/storage/storage_frontend.h"
|
#include "extensions/browser/api/storage/storage_frontend.h"
|
||||||
#include "extensions/browser/renderer_startup_helper.h"
|
#include "extensions/browser/renderer_startup_helper.h"
|
||||||
#include "services/network/public/cpp/features.h"
|
#include "services/network/public/cpp/features.h"
|
||||||
|
|
||||||
#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
|
|
||||||
#include "chrome/browser/permissions/prediction_model_handler_factory.h"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
namespace cef {
|
namespace cef {
|
||||||
|
|
||||||
void EnsureBrowserContextKeyedServiceFactoriesBuilt() {
|
void EnsureBrowserContextKeyedServiceFactoriesBuilt() {
|
||||||
@@ -45,13 +40,6 @@ void EnsureBrowserContextKeyedServiceFactoriesBuilt() {
|
|||||||
if (base::FeatureList::IsEnabled(network::features::kReduceAcceptLanguage)) {
|
if (base::FeatureList::IsEnabled(network::features::kReduceAcceptLanguage)) {
|
||||||
ReduceAcceptLanguageFactory::GetInstance();
|
ReduceAcceptLanguageFactory::GetInstance();
|
||||||
}
|
}
|
||||||
|
|
||||||
#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
|
|
||||||
if (base::FeatureList::IsEnabled(
|
|
||||||
permissions::features::kPermissionOnDeviceNotificationPredictions)) {
|
|
||||||
PredictionModelHandlerFactory::GetInstance();
|
|
||||||
}
|
|
||||||
#endif // BUILDFLAG(BUILD_WITH_TFLITE_LIB)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace cef
|
} // namespace cef
|
||||||
|
@@ -27,7 +27,6 @@ void ChromeBrowserMainExtraPartsCef::PostProfileInit(Profile* profile,
|
|||||||
// Create the global RequestContext.
|
// Create the global RequestContext.
|
||||||
global_request_context_ =
|
global_request_context_ =
|
||||||
CefRequestContextImpl::CreateGlobalRequestContext(settings);
|
CefRequestContextImpl::CreateGlobalRequestContext(settings);
|
||||||
global_request_context_->InitializeGlobalContext();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ChromeBrowserMainExtraPartsCef::PreMainMessageLoopRun() {
|
void ChromeBrowserMainExtraPartsCef::PreMainMessageLoopRun() {
|
||||||
|
@@ -23,7 +23,6 @@
|
|||||||
#include "chrome/browser/media/media_device_id_salt.h"
|
#include "chrome/browser/media/media_device_id_salt.h"
|
||||||
#include "chrome/browser/media/router/media_router_feature.h"
|
#include "chrome/browser/media/router/media_router_feature.h"
|
||||||
#include "chrome/browser/media/webrtc/permission_bubble_media_access_handler.h"
|
#include "chrome/browser/media/webrtc/permission_bubble_media_access_handler.h"
|
||||||
#include "chrome/browser/metrics/chrome_metrics_service_client.h"
|
|
||||||
#include "chrome/browser/net/profile_network_context_service.h"
|
#include "chrome/browser/net/profile_network_context_service.h"
|
||||||
#include "chrome/browser/net/system_network_context_manager.h"
|
#include "chrome/browser/net/system_network_context_manager.h"
|
||||||
#include "chrome/browser/plugins/plugin_info_host_impl.h"
|
#include "chrome/browser/plugins/plugin_info_host_impl.h"
|
||||||
@@ -47,7 +46,6 @@
|
|||||||
#include "components/keyed_service/content/browser_context_dependency_manager.h"
|
#include "components/keyed_service/content/browser_context_dependency_manager.h"
|
||||||
#include "components/language/core/browser/language_prefs.h"
|
#include "components/language/core/browser/language_prefs.h"
|
||||||
#include "components/language/core/browser/pref_names.h"
|
#include "components/language/core/browser/pref_names.h"
|
||||||
#include "components/optimization_guide/core/optimization_guide_prefs.h"
|
|
||||||
#include "components/permissions/permission_actions_history.h"
|
#include "components/permissions/permission_actions_history.h"
|
||||||
#include "components/pref_registry/pref_registry_syncable.h"
|
#include "components/pref_registry/pref_registry_syncable.h"
|
||||||
#include "components/prefs/json_pref_store.h"
|
#include "components/prefs/json_pref_store.h"
|
||||||
@@ -60,7 +58,6 @@
|
|||||||
#include "components/spellcheck/browser/pref_names.h"
|
#include "components/spellcheck/browser/pref_names.h"
|
||||||
#include "components/sync_preferences/pref_service_syncable.h"
|
#include "components/sync_preferences/pref_service_syncable.h"
|
||||||
#include "components/sync_preferences/pref_service_syncable_factory.h"
|
#include "components/sync_preferences/pref_service_syncable_factory.h"
|
||||||
#include "components/unified_consent/unified_consent_service.h"
|
|
||||||
#include "components/update_client/update_client.h"
|
#include "components/update_client/update_client.h"
|
||||||
#include "content/public/browser/browser_thread.h"
|
#include "content/public/browser/browser_thread.h"
|
||||||
#include "extensions/browser/extension_prefs.h"
|
#include "extensions/browser/extension_prefs.h"
|
||||||
@@ -226,7 +223,6 @@ std::unique_ptr<PrefService> CreatePrefService(Profile* profile,
|
|||||||
// Default preferences.
|
// Default preferences.
|
||||||
CefMediaCaptureDevicesDispatcher::RegisterPrefs(registry.get());
|
CefMediaCaptureDevicesDispatcher::RegisterPrefs(registry.get());
|
||||||
certificate_transparency::prefs::RegisterPrefs(registry.get());
|
certificate_transparency::prefs::RegisterPrefs(registry.get());
|
||||||
ChromeMetricsServiceClient::RegisterPrefs(registry.get());
|
|
||||||
flags_ui::PrefServiceFlagsStorage::RegisterPrefs(registry.get());
|
flags_ui::PrefServiceFlagsStorage::RegisterPrefs(registry.get());
|
||||||
media_router::RegisterLocalStatePrefs(registry.get());
|
media_router::RegisterLocalStatePrefs(registry.get());
|
||||||
PluginInfoHostImpl::RegisterUserPrefs(registry.get());
|
PluginInfoHostImpl::RegisterUserPrefs(registry.get());
|
||||||
@@ -273,13 +269,11 @@ std::unique_ptr<PrefService> CreatePrefService(Profile* profile,
|
|||||||
language::LanguagePrefs::RegisterProfilePrefs(registry.get());
|
language::LanguagePrefs::RegisterProfilePrefs(registry.get());
|
||||||
media_router::RegisterProfilePrefs(registry.get());
|
media_router::RegisterProfilePrefs(registry.get());
|
||||||
MediaDeviceIDSalt::RegisterProfilePrefs(registry.get());
|
MediaDeviceIDSalt::RegisterProfilePrefs(registry.get());
|
||||||
optimization_guide::prefs::RegisterProfilePrefs(registry.get());
|
|
||||||
PermissionBubbleMediaAccessHandler::RegisterProfilePrefs(registry.get());
|
PermissionBubbleMediaAccessHandler::RegisterProfilePrefs(registry.get());
|
||||||
permissions::PermissionActionsHistory::RegisterProfilePrefs(registry.get());
|
permissions::PermissionActionsHistory::RegisterProfilePrefs(registry.get());
|
||||||
prefetch::RegisterPredictionOptionsProfilePrefs(registry.get());
|
prefetch::RegisterPredictionOptionsProfilePrefs(registry.get());
|
||||||
ProfileNetworkContextService::RegisterProfilePrefs(registry.get());
|
ProfileNetworkContextService::RegisterProfilePrefs(registry.get());
|
||||||
safe_browsing::RegisterProfilePrefs(registry.get());
|
safe_browsing::RegisterProfilePrefs(registry.get());
|
||||||
unified_consent::UnifiedConsentService::RegisterPrefs(registry.get());
|
|
||||||
RegisterProfilePrefs(registry.get());
|
RegisterProfilePrefs(registry.get());
|
||||||
|
|
||||||
const std::string& locale =
|
const std::string& locale =
|
||||||
|
@@ -183,6 +183,7 @@ CefRequestContextImpl::CreateGlobalRequestContext(
|
|||||||
config.is_global = true;
|
config.is_global = true;
|
||||||
config.settings = settings;
|
config.settings = settings;
|
||||||
CefRefPtr<CefRequestContextImpl> impl = new CefRequestContextImpl(config);
|
CefRefPtr<CefRequestContextImpl> impl = new CefRequestContextImpl(config);
|
||||||
|
impl->Initialize();
|
||||||
return impl;
|
return impl;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -201,11 +202,6 @@ CefRequestContextImpl::GetOrCreateForRequestContext(
|
|||||||
return CefRequestContextImpl::GetOrCreateRequestContext(config);
|
return CefRequestContextImpl::GetOrCreateRequestContext(config);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CefRequestContextImpl::InitializeGlobalContext() {
|
|
||||||
DCHECK(IsGlobal());
|
|
||||||
Initialize();
|
|
||||||
}
|
|
||||||
|
|
||||||
bool CefRequestContextImpl::VerifyBrowserContext() const {
|
bool CefRequestContextImpl::VerifyBrowserContext() const {
|
||||||
if (!CEF_CURRENTLY_ON_UIT()) {
|
if (!CEF_CURRENTLY_ON_UIT()) {
|
||||||
NOTREACHED() << "called on invalid thread";
|
NOTREACHED() << "called on invalid thread";
|
||||||
|
@@ -29,8 +29,7 @@ class CefRequestContextImpl : public CefRequestContext {
|
|||||||
|
|
||||||
// Creates the singleton global RequestContext. Called from
|
// Creates the singleton global RequestContext. Called from
|
||||||
// AlloyBrowserMainParts::PreMainMessageLoopRun and
|
// AlloyBrowserMainParts::PreMainMessageLoopRun and
|
||||||
// ChromeBrowserMainExtraPartsCef::PostProfileInit. Must be followed by a call
|
// ChromeBrowserMainExtraPartsCef::PostProfileInit.
|
||||||
// to InitializeGlobalContext on the UI thread.
|
|
||||||
static CefRefPtr<CefRequestContextImpl> CreateGlobalRequestContext(
|
static CefRefPtr<CefRequestContextImpl> CreateGlobalRequestContext(
|
||||||
const CefRequestContextSettings& settings);
|
const CefRequestContextSettings& settings);
|
||||||
|
|
||||||
@@ -39,8 +38,6 @@ class CefRequestContextImpl : public CefRequestContext {
|
|||||||
static CefRefPtr<CefRequestContextImpl> GetOrCreateForRequestContext(
|
static CefRefPtr<CefRequestContextImpl> GetOrCreateForRequestContext(
|
||||||
CefRefPtr<CefRequestContext> request_context);
|
CefRefPtr<CefRequestContext> request_context);
|
||||||
|
|
||||||
void InitializeGlobalContext();
|
|
||||||
|
|
||||||
// Verify that the browser context can be directly accessed (e.g. on the UI
|
// Verify that the browser context can be directly accessed (e.g. on the UI
|
||||||
// thread and initialized).
|
// thread and initialized).
|
||||||
bool VerifyBrowserContext() const;
|
bool VerifyBrowserContext() const;
|
||||||
|
@@ -5,10 +5,8 @@
|
|||||||
|
|
||||||
#include "libcef/common/alloy/alloy_main_runner_delegate.h"
|
#include "libcef/common/alloy/alloy_main_runner_delegate.h"
|
||||||
|
|
||||||
#include "libcef/browser/alloy/alloy_content_browser_client.h"
|
|
||||||
#include "libcef/browser/alloy/chrome_browser_process_alloy.h"
|
#include "libcef/browser/alloy/chrome_browser_process_alloy.h"
|
||||||
#include "libcef/common/alloy/alloy_main_delegate.h"
|
#include "libcef/common/alloy/alloy_main_delegate.h"
|
||||||
#include "libcef/common/app_manager.h"
|
|
||||||
#include "libcef/renderer/alloy/alloy_content_renderer_client.h"
|
#include "libcef/renderer/alloy/alloy_content_renderer_client.h"
|
||||||
|
|
||||||
#include "content/public/browser/render_process_host.h"
|
#include "content/public/browser/render_process_host.h"
|
||||||
@@ -41,10 +39,6 @@ void AlloyMainRunnerDelegate::BeforeMainThreadRun() {
|
|||||||
void AlloyMainRunnerDelegate::AfterUIThreadInitialize() {
|
void AlloyMainRunnerDelegate::AfterUIThreadInitialize() {
|
||||||
static_cast<ChromeBrowserProcessAlloy*>(g_browser_process)
|
static_cast<ChromeBrowserProcessAlloy*>(g_browser_process)
|
||||||
->OnContextInitialized();
|
->OnContextInitialized();
|
||||||
|
|
||||||
static_cast<AlloyContentBrowserClient*>(
|
|
||||||
CefAppManager::Get()->GetContentClient()->browser())
|
|
||||||
->OnContextInitialized();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AlloyMainRunnerDelegate::AfterUIThreadShutdown() {
|
void AlloyMainRunnerDelegate::AfterUIThreadShutdown() {
|
||||||
|
@@ -256,14 +256,6 @@ patches = [
|
|||||||
# https://bitbucket.org/chromiumembedded/cef/issues/2830
|
# https://bitbucket.org/chromiumembedded/cef/issues/2830
|
||||||
'name': 'chrome_browser_net_proxy',
|
'name': 'chrome_browser_net_proxy',
|
||||||
},
|
},
|
||||||
{
|
|
||||||
# alloy: Don't create an optimization model downloads directory when
|
|
||||||
# cache_path is empty. This is related to Chrome permissions and the
|
|
||||||
# "PermissionOnDeviceNotificationPredictions" feature which is enabled by
|
|
||||||
# default in https://crbug.com/1350956.
|
|
||||||
# https://bitbucket.org/chromiumembedded/cef/issues/3352
|
|
||||||
'name': 'chrome_browser_optimization_guide',
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
# Support override of CreatePermissionPrompt.
|
# Support override of CreatePermissionPrompt.
|
||||||
# https://bitbucket.org/chromiumembedded/cef/issues/3352
|
# https://bitbucket.org/chromiumembedded/cef/issues/3352
|
||||||
|
@@ -1,22 +0,0 @@
|
|||||||
diff --git chrome/browser/optimization_guide/optimization_guide_keyed_service.cc chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
|
|
||||||
index bd928f4422f99..f0124ab225b6f 100644
|
|
||||||
--- chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
|
|
||||||
+++ chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
|
|
||||||
@@ -269,7 +269,7 @@ void OptimizationGuideKeyedService::Initialize() {
|
|
||||||
MaybeCreatePushNotificationManager(profile),
|
|
||||||
optimization_guide_logger_.get());
|
|
||||||
base::FilePath model_downloads_dir;
|
|
||||||
- if (!profile->IsOffTheRecord()) {
|
|
||||||
+ if (!profile->IsOffTheRecord() && !profile_path.empty()) {
|
|
||||||
// Do not explicitly hand off the model downloads directory to
|
|
||||||
// off-the-record profiles. Underneath the hood, this variable is only used
|
|
||||||
// in non off-the-record profiles to know where to download the model files
|
|
||||||
@@ -281,7 +281,7 @@ void OptimizationGuideKeyedService::Initialize() {
|
|
||||||
|
|
||||||
prediction_manager_ = std::make_unique<optimization_guide::PredictionManager>(
|
|
||||||
prediction_model_and_features_store, url_loader_factory,
|
|
||||||
- profile->GetPrefs(), profile->IsOffTheRecord(),
|
|
||||||
+ profile->GetPrefs(), /*is_off_the_record=*/model_downloads_dir.empty(),
|
|
||||||
g_browser_process->GetApplicationLocale(), model_downloads_dir,
|
|
||||||
optimization_guide_logger_.get(),
|
|
||||||
base::BindOnce(
|
|
@@ -1,5 +1,5 @@
|
|||||||
diff --git chrome/browser/permissions/chrome_permissions_client.cc chrome/browser/permissions/chrome_permissions_client.cc
|
diff --git chrome/browser/permissions/chrome_permissions_client.cc chrome/browser/permissions/chrome_permissions_client.cc
|
||||||
index 994b78d94de26..b64c1a7506a23 100644
|
index 994b78d94de26..e51f6f6162f02 100644
|
||||||
--- chrome/browser/permissions/chrome_permissions_client.cc
|
--- chrome/browser/permissions/chrome_permissions_client.cc
|
||||||
+++ chrome/browser/permissions/chrome_permissions_client.cc
|
+++ chrome/browser/permissions/chrome_permissions_client.cc
|
||||||
@@ -12,6 +12,7 @@
|
@@ -12,6 +12,7 @@
|
||||||
@@ -20,6 +20,17 @@ index 994b78d94de26..b64c1a7506a23 100644
|
|||||||
return site_engagement::SiteEngagementService::Get(
|
return site_engagement::SiteEngagementService::Get(
|
||||||
Profile::FromBrowserContext(browser_context))
|
Profile::FromBrowserContext(browser_context))
|
||||||
->GetScore(origin);
|
->GetScore(origin);
|
||||||
|
@@ -300,8 +304,10 @@ ChromePermissionsClient::CreatePermissionUiSelectors(
|
||||||
|
std::make_unique<ContextualNotificationPermissionUiSelector>());
|
||||||
|
selectors.emplace_back(std::make_unique<PrefNotificationPermissionUiSelector>(
|
||||||
|
Profile::FromBrowserContext(browser_context)));
|
||||||
|
+ if (!cef::IsAlloyRuntimeEnabled()) {
|
||||||
|
selectors.emplace_back(std::make_unique<PredictionBasedPermissionUiSelector>(
|
||||||
|
Profile::FromBrowserContext(browser_context)));
|
||||||
|
+ }
|
||||||
|
return selectors;
|
||||||
|
}
|
||||||
|
|
||||||
diff --git chrome/browser/permissions/permission_manager_factory.cc chrome/browser/permissions/permission_manager_factory.cc
|
diff --git chrome/browser/permissions/permission_manager_factory.cc chrome/browser/permissions/permission_manager_factory.cc
|
||||||
index 5efee36a48397..bb683b88c5bd6 100644
|
index 5efee36a48397..bb683b88c5bd6 100644
|
||||||
--- chrome/browser/permissions/permission_manager_factory.cc
|
--- chrome/browser/permissions/permission_manager_factory.cc
|
||||||
|
Reference in New Issue
Block a user