webfeed: improvements on loading
* instead of relying on a cached bit to determine if the
user is a subscriber, we will now fetch subscriptions
inline with the LoadStreamTask if necessary.
* a new 'no-subscriptions' status is provided to the UI
if the web feed cannot be loaded because there are no
subscriptions.
* I updated FeedApiTest to enable WebFeed by default, and
updated our tests to pass.
As part of this change, we needed to somehow chain
LoadStreamTask -> FetchSubscribedWebFeedsTask,
and the WebFeedSubscriptionCoordinator prevents direct
access to this task. In order to do this, I added the concept
of suspending and resuming a task. One alternative is to
break the task into pieces, but adds more complexity to
the caller, and requires more refactoring.
Change-Id: I298a1c4d13a3fb70e36e61458b7348fe6a1d63b6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2965254
Commit-Queue: Dan H <[email protected]>
Reviewed-by: Carlos Knippschild <[email protected]>
Reviewed-by: Dominic Battré <[email protected]>
Cr-Commit-Position: refs/heads/master@{#900069}
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
index 157e434a..f7e6a83d 100644
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -1461,8 +1461,8 @@
profile_prefs->ClearPref(kDataReductionProxyLastConfigRetrievalTime);
profile_prefs->ClearPref(kDataReductionProxyConfig);
- // Added 02/2021
#if defined(OS_ANDROID)
+ // Added 02/2021
feed::MigrateObsoleteProfilePrefsFeb_2021(profile_prefs);
#endif // defined(OS_ANDROID)
syncer::ClearObsoletePassphrasePromptPrefs(profile_prefs);
@@ -1553,6 +1553,11 @@
profile_prefs->ClearPref(kHintsFetcherTopHostBlocklistMinimumEngagementScore);
profile_prefs->ClearPref(kTimeHintsFetcherTopHostBlocklistLastInitialized);
+#if defined(OS_ANDROID)
+ // Added 06/2021
+ feed::MigrateObsoleteProfilePrefsJune_2021(profile_prefs);
+#endif // defined(OS_ANDROID)
+
// Added 07/2021
#if defined(OS_MAC)
profile_prefs->ClearPref(kPasswordRecovery);