Migrate pref for first time trigger script users to Chrome prefs.
This CL is the first in a series to move the SharedPreferences used by
Autofill Assistant to Chrome's PrefService to allow using them in
enterprise policies and accessing them easily from C++.
Bug: 1362553
Change-Id: I62346525bfb2361720b37a11536dda3bafcb003c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3898536
Commit-Queue: Jan Keitel <[email protected]>
Reviewed-by: Clemens Arbesser <[email protected]>
Reviewed-by: Dominic Battré <[email protected]>
Reviewed-by: Yaron Friedman <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1048956}
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
index 5e72dbd7..cfe437e 100644
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -88,6 +88,7 @@
#include "chrome/common/pref_names.h"
#include "chrome/common/secure_origin_allowlist.h"
#include "components/autofill/core/common/autofill_prefs.h"
+#include "components/autofill_assistant/browser/public/prefs.h"
#include "components/blocked_content/safe_browsing_triggered_popup_blocker.h"
#include "components/browsing_data/core/pref_names.h"
#include "components/certificate_transparency/pref_names.h"
@@ -160,6 +161,7 @@
#include "ppapi/buildflags/buildflags.h"
#include "printing/buildflags/buildflags.h"
#include "rlz/buildflags/buildflags.h"
+#include "third_party/abseil-cpp/absl/types/optional.h"
#if BUILDFLAG(ENABLE_BACKGROUND_MODE)
#include "chrome/browser/background/background_mode_manager.h"
@@ -230,6 +232,7 @@
#include "chrome/browser/android/ntp/recent_tabs_page_prefs.h"
#include "chrome/browser/android/oom_intervention/oom_intervention_decider.h"
#include "chrome/browser/android/preferences/browser_prefs_android.h"
+#include "chrome/browser/android/preferences/shared_preferences_migrator_android.h"
#include "chrome/browser/android/usage_stats/usage_stats_bridge.h"
#include "chrome/browser/first_run/android/first_run_prefs.h"
#include "chrome/browser/lens/android/lens_prefs.h"
@@ -269,7 +272,6 @@
#include "chrome/browser/ui/webui/tab_search/tab_search_prefs.h"
#include "chrome/browser/ui/webui/whats_new/whats_new_ui.h"
#include "chrome/browser/upgrade_detector/upgrade_detector.h"
-#include "components/autofill_assistant/browser/public/autofill_assistant.h"
#include "components/live_caption/live_caption_controller.h"
#include "components/ntp_tiles/custom_links_manager_impl.h"
#endif // BUILDFLAG(IS_ANDROID)
@@ -1267,6 +1269,7 @@
AccessibilityUIMessageHandler::RegisterProfilePrefs(registry);
AnnouncementNotificationService::RegisterProfilePrefs(registry);
autofill::prefs::RegisterProfilePrefs(registry);
+ autofill_assistant::prefs::RegisterProfilePrefs(registry);
browsing_data::prefs::RegisterBrowserUserPrefs(registry);
certificate_transparency::prefs::RegisterPrefs(registry);
ChromeContentBrowserClient::RegisterProfilePrefs(registry);
@@ -1412,8 +1415,7 @@
usage_stats::UsageStatsBridge::RegisterProfilePrefs(registry);
variations::VariationsService::RegisterProfilePrefs(registry);
video_tutorials::RegisterPrefs(registry);
-#else // BUILDFLAG(IS_ANDROID)
- autofill_assistant::AutofillAssistant::RegisterProfilePrefs(registry);
+#else // BUILDFLAG(IS_ANDROID)
AppShortcutManager::RegisterProfilePrefs(registry);
browser_sync::ForeignSessionHandler::RegisterProfilePrefs(registry);
BrowserFeaturePromoSnoozeService::RegisterProfilePrefs(registry);
@@ -2000,6 +2002,20 @@
profile_prefs->ClearPref(kClipboardHistoryNewFeatureBadgeCount);
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
+ // Added 09/2022.
+#if BUILDFLAG(IS_ANDROID)
+ if (absl::optional<bool> shared_pref =
+ android::shared_preferences::GetAndClearBoolean(
+ autofill_assistant::prefs::
+ kDeprecatedAutofillAssistantTriggerScriptsIsFirstTimeUser);
+ shared_pref) {
+ profile_prefs->SetBoolean(
+ autofill_assistant::prefs::
+ kAutofillAssistantTriggerScriptsIsFirstTimeUser,
+ shared_pref.value());
+ }
+#endif
+
// Please don't delete the following line. It is used by PRESUBMIT.py.
// END_MIGRATE_OBSOLETE_PROFILE_PREFS