ash: Get PrefService via SessionControllerClient
- Get sign-in screen and user PrefService from SessionControllerClient
instead of mojom::PrefConnector.
- Add a TestPrefServiceProvider to create and own various PrefServices
to outlive TestSessionControllerClient;
- Move Shell:: RegisterSignin/UserProfilePrefs to ash_prefs.h in
public/cpp and call them from browser prefs to register as part
of the browser;
- Remove RegisterForeignPref for user prefs in ash/* code since they are
now part of the browser user prefs;
Bug: 958212
Change-Id: Ic4d9f951e5fd2f255c5274906115fc4aeb2dcc41
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1603325
Commit-Queue: Xiyuan Xia <[email protected]>
Reviewed-by: Scott Violet <[email protected]>
Cr-Commit-Position: refs/heads/master@{#659064}
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
index 242dfac8..56fb0cc7d 100644
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -228,6 +228,7 @@
#endif // defined(OS_ANDROID)
#if defined(OS_CHROMEOS)
+#include "ash/public/cpp/ash_prefs.h"
#include "chrome/browser/chromeos/app_mode/arc/arc_kiosk_app_manager.h"
#include "chrome/browser/chromeos/app_mode/kiosk_app_manager.h"
#include "chrome/browser/chromeos/arc/arc_session_manager.h"
@@ -918,6 +919,9 @@
#if defined(OS_ANDROID)
::android::RegisterUserProfilePrefs(registry);
#endif
+#if defined(OS_CHROMEOS)
+ ash::RegisterUserProfilePrefs(registry);
+#endif
}
void RegisterScreenshotPrefs(PrefRegistrySimple* registry) {
@@ -925,8 +929,9 @@
}
#if defined(OS_CHROMEOS)
-void RegisterLoginProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
+void RegisterSigninProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
RegisterProfilePrefs(registry, g_browser_process->GetApplicationLocale());
+ ash::RegisterSigninProfilePrefs(registry);
}
#if BUILDFLAG(ENABLE_CROS_ASSISTANT)