mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2024-12-13 10:06:28 +01:00
e9bf3cdb98
This change adds basic Chrome runtime implementations for CefBrowserContext and CefBrowserPlatformDelegate. A Chrome browser window with default frame and styling can now be created using CefBrowserHost::CreateBrowser and some CefClient callbacks will be triggered via the WebContentsObserver implementation in CefBrowserHostImpl. Any additional browser windows created via the Chrome UI will be unmanaged by CEF. The application message loop will block until all browser windows have been closed by the user.
72 lines
3.4 KiB
Diff
72 lines
3.4 KiB
Diff
diff --git chrome/browser/profiles/profile_manager.cc chrome/browser/profiles/profile_manager.cc
|
|
index 8ce681f0d694..9bc310da1695 100644
|
|
--- chrome/browser/profiles/profile_manager.cc
|
|
+++ chrome/browser/profiles/profile_manager.cc
|
|
@@ -378,7 +378,7 @@ ProfileManager::ProfileManager(const base::FilePath& user_data_dir)
|
|
registrar_.Add(this, chrome::NOTIFICATION_BROWSER_CLOSE_CANCELLED,
|
|
content::NotificationService::AllSources());
|
|
|
|
- if (ProfileShortcutManager::IsFeatureEnabled() && !user_data_dir_.empty())
|
|
+ if (!user_data_dir_.empty() && ProfileShortcutManager::IsFeatureEnabled())
|
|
profile_shortcut_manager_ = ProfileShortcutManager::Create(this);
|
|
}
|
|
|
|
diff --git chrome/browser/profiles/profile_manager.h chrome/browser/profiles/profile_manager.h
|
|
index 3e1e28ea7d0e..b70f718c8e94 100644
|
|
--- chrome/browser/profiles/profile_manager.h
|
|
+++ chrome/browser/profiles/profile_manager.h
|
|
@@ -101,7 +101,7 @@ class ProfileManager : public content::NotificationObserver,
|
|
// acceptable. Returns null if creation of the new profile fails.
|
|
// TODO(bauerb): Migrate calls from other code to GetProfileByPath(), then
|
|
// make this method private.
|
|
- Profile* GetProfile(const base::FilePath& profile_dir);
|
|
+ virtual Profile* GetProfile(const base::FilePath& profile_dir);
|
|
|
|
// Returns total number of profiles available on this machine.
|
|
size_t GetNumberOfProfiles();
|
|
@@ -131,7 +131,7 @@ class ProfileManager : public content::NotificationObserver,
|
|
|
|
// Returns true if the profile pointer is known to point to an existing
|
|
// profile.
|
|
- bool IsValidProfile(const void* profile);
|
|
+ virtual bool IsValidProfile(const void* profile);
|
|
|
|
// Returns the directory where the first created profile is stored,
|
|
// relative to the user data directory currently in use.
|
|
@@ -140,7 +140,7 @@ class ProfileManager : public content::NotificationObserver,
|
|
// Get the Profile last used (the Profile to which owns the most recently
|
|
// focused window) with this Chrome build. If no signed profile has been
|
|
// stored in Local State, hand back the Default profile.
|
|
- Profile* GetLastUsedProfile(const base::FilePath& user_data_dir);
|
|
+ virtual Profile* GetLastUsedProfile(const base::FilePath& user_data_dir);
|
|
|
|
// Get the path of the last used profile, or if that's undefined, the default
|
|
// profile.
|
|
diff --git chrome/browser/profiles/renderer_updater.cc chrome/browser/profiles/renderer_updater.cc
|
|
index c1792eccd997..d7434ff76a88 100644
|
|
--- chrome/browser/profiles/renderer_updater.cc
|
|
+++ chrome/browser/profiles/renderer_updater.cc
|
|
@@ -7,6 +7,7 @@
|
|
#include <utility>
|
|
|
|
#include "base/bind.h"
|
|
+#include "cef/libcef/features/runtime.h"
|
|
#include "chrome/browser/content_settings/host_content_settings_map_factory.h"
|
|
#include "chrome/browser/profiles/profile.h"
|
|
#include "chrome/browser/signin/identity_manager_factory.h"
|
|
@@ -62,8 +63,12 @@ void GetGuestViewDefaultContentSettingRules(
|
|
|
|
RendererUpdater::RendererUpdater(Profile* profile)
|
|
: profile_(profile), identity_manager_observer_(this) {
|
|
- identity_manager_ = IdentityManagerFactory::GetForProfile(profile);
|
|
- identity_manager_observer_.Add(identity_manager_);
|
|
+ if (cef::IsAlloyRuntimeEnabled()) {
|
|
+ identity_manager_ = nullptr;
|
|
+ } else {
|
|
+ identity_manager_ = IdentityManagerFactory::GetForProfile(profile);
|
|
+ identity_manager_observer_.Add(identity_manager_);
|
|
+ }
|
|
#if defined(OS_CHROMEOS)
|
|
oauth2_login_manager_ =
|
|
chromeos::OAuth2LoginManagerFactory::GetForProfile(profile_);
|