More offline prefetch cleanup

Remove histograms
Migrate/clear prefs
Remove the suggestedArticles offline client namespace

Bug: 1424920
Change-Id: Ice5b1aaca85eb004ae2f4f9ebb6db4ce9569b8ef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4401132
Reviewed-by: Max Curran <[email protected]>
Reviewed-by: Lei Zhang <[email protected]>
Reviewed-by: Chris Thompson <[email protected]>
Commit-Queue: Dan H <[email protected]>
Reviewed-by: Carlos Knippschild <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1128315}
diff --git a/chrome/browser/offline_pages/android/downloads/offline_page_share_helper.cc b/chrome/browser/offline_pages/android/downloads/offline_page_share_helper.cc
index da0ff8d..ceb033a 100644
--- a/chrome/browser/offline_pages/android/downloads/offline_page_share_helper.cc
+++ b/chrome/browser/offline_pages/android/downloads/offline_page_share_helper.cc
@@ -67,12 +67,11 @@
     return;
   }
   const OfflinePageItem& page = pages[0];
-  const bool is_suggested = GetPolicy(page.client_id.name_space).is_suggested;
   const bool in_private_dir = model_->IsArchiveInInternalDir(page.file_path);
 
   // Need to publish internal page to public directory to share the file with
   // content URI instead of the web page URL.
-  if (!is_suggested && in_private_dir) {
+  if (in_private_dir) {
     AcquireFileAccessPermission();
     return;
   }
diff --git a/chrome/browser/preferences/BUILD.gn b/chrome/browser/preferences/BUILD.gn
index 56d2bd3..c303894 100644
--- a/chrome/browser/preferences/BUILD.gn
+++ b/chrome/browser/preferences/BUILD.gn
@@ -40,7 +40,6 @@
     "//components/feed/core/shared_prefs/pref_names.cc",
     "//components/history/core/common/pref_names.cc",
     "//components/language/core/browser/pref_names.cc",
-    "//components/offline_pages/core/prefetch/prefetch_prefs.cc",
     "//components/password_manager/core/common/password_manager_pref_names.cc",
     "//components/payments/core/payment_prefs.cc",
     "//components/policy/core/common/policy_pref_names.cc",
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
index f4dcd6f..112afd33 100644
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -215,7 +215,6 @@
 
 #if BUILDFLAG(ENABLE_OFFLINE_PAGES)
 #include "chrome/browser/offline_pages/prefetch/offline_metrics_collector_impl.h"
-#include "components/offline_pages/core/prefetch/prefetch_prefs.h"
 #endif
 
 #if BUILDFLAG(ENABLE_PDF)
@@ -820,6 +819,19 @@
 const char kUserHasUsedDesksRecently[] = "ash.user_has_used_desks_recently";
 #endif  // BUILDFLAG(IS_CHROMEOS_ASH)
 
+// Deprecated 04/2023.
+#if BUILDFLAG(IS_ANDROID)
+const char kUserSettingEnabled[] = "offline_prefetch.enabled";
+const char kBackoff[] = "offline_prefetch.backoff";
+const char kLimitlessPrefetchingEnabledTimePref[] =
+    "offline_prefetch.limitless_prefetching_enabled_time";
+const char kPrefetchTestingHeaderPref[] =
+    "offline_prefetch.testing_header_value";
+const char kEnabledByServer[] = "offline_prefetch.enabled_by_server";
+const char kNextForbiddenCheckTimePref[] = "offline_prefetch.next_gpb_check";
+const char kPrefetchCachedGCMToken[] = "offline_prefetch.gcm_token";
+#endif
+
 // Register local state used only for migration (clearing or moving to a new
 // key).
 void RegisterLocalStatePrefsForMigration(PrefRegistrySimple* registry) {
@@ -1115,6 +1127,18 @@
   registry->RegisterBooleanPref(kBentoBarEnabled, false);
   registry->RegisterBooleanPref(kUserHasUsedDesksRecently, false);
 #endif  // BUILDFLAG(IS_CHROMEOS_ASH)
+
+// Deprecated 04/2023.
+#if BUILDFLAG(IS_ANDROID)
+  registry->RegisterListPref(kBackoff);
+  registry->RegisterBooleanPref(kUserSettingEnabled, true);
+  registry->RegisterTimePref(kLimitlessPrefetchingEnabledTimePref,
+                             base::Time());
+  registry->RegisterStringPref(kPrefetchTestingHeaderPref, std::string());
+  registry->RegisterBooleanPref(kEnabledByServer, false);
+  registry->RegisterTimePref(kNextForbiddenCheckTimePref, base::Time());
+  registry->RegisterStringPref(kPrefetchCachedGCMToken, std::string());
+#endif
 }
 
 }  // namespace
@@ -1476,7 +1500,6 @@
 
 #if BUILDFLAG(ENABLE_OFFLINE_PAGES)
   offline_pages::OfflineMetricsCollectorImpl::RegisterPrefs(registry);
-  offline_pages::prefetch_prefs::RegisterPrefs(registry);
 #endif
 
 #if BUILDFLAG(ENABLE_PDF)
@@ -2159,6 +2182,17 @@
   profile_prefs->ClearPref(kUserHasUsedDesksRecently);
 #endif  // BUILDFLAG(IS_CHROMEOS_ASH)
 
+// Added 04/2023.
+#if BUILDFLAG(IS_ANDROID)
+  profile_prefs->ClearPref(kBackoff);
+  profile_prefs->ClearPref(kUserSettingEnabled);
+  profile_prefs->ClearPref(kLimitlessPrefetchingEnabledTimePref);
+  profile_prefs->ClearPref(kPrefetchTestingHeaderPref);
+  profile_prefs->ClearPref(kEnabledByServer);
+  profile_prefs->ClearPref(kNextForbiddenCheckTimePref);
+  profile_prefs->ClearPref(kPrefetchCachedGCMToken);
+#endif
+
   // Please don't delete the following line. It is used by PRESUBMIT.py.
   // END_MIGRATE_OBSOLETE_PROFILE_PREFS
 
diff --git a/chrome/browser/ui/webui/feed_internals/feedv2_internals_page_handler.cc b/chrome/browser/ui/webui/feed_internals/feedv2_internals_page_handler.cc
index 06412d2f..0d4fc07 100644
--- a/chrome/browser/ui/webui/feed_internals/feedv2_internals_page_handler.cc
+++ b/chrome/browser/ui/webui/feed_internals/feedv2_internals_page_handler.cc
@@ -21,7 +21,6 @@
 #include "components/feed/core/v2/public/types.h"
 #include "components/feed/core/v2/public/web_feed_subscriptions.h"
 #include "components/feed/feed_feature_list.h"
-#include "components/offline_pages/core/prefetch/prefetch_prefs.h"
 #include "components/prefs/pref_service.h"
 #include "mojo/public/cpp/bindings/pending_receiver.h"
 #include "mojo/public/cpp/bindings/receiver.h"
diff --git a/chrome/browser/ui/webui/offline/offline_internals_ui_message_handler.cc b/chrome/browser/ui/webui/offline/offline_internals_ui_message_handler.cc
index ca9cef2..834e380f1 100644
--- a/chrome/browser/ui/webui/offline/offline_internals_ui_message_handler.cc
+++ b/chrome/browser/ui/webui/offline/offline_internals_ui_message_handler.cc
@@ -28,7 +28,6 @@
 #include "chrome/common/chrome_content_client.h"
 #include "components/offline_pages/core/client_namespace_constants.h"
 #include "components/offline_pages/core/offline_page_feature.h"
-#include "components/offline_pages/core/prefetch/prefetch_prefs.h"
 #include "content/public/browser/web_ui.h"
 #include "net/base/network_change_notifier.h"