| Index: chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
| index 4701a6b175ccf433e3dcb8a43514f6115a880012..22a17d62488b353b1f3135efdc2ad9a78700e5dd 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
| @@ -80,6 +80,8 @@ import org.chromium.chrome.browser.metrics.UmaUtils;
|
| import org.chromium.chrome.browser.multiwindow.MultiWindowUtils;
|
| import org.chromium.chrome.browser.ntp.NativePageAssassin;
|
| import org.chromium.chrome.browser.ntp.NewTabPageUma;
|
| +import org.chromium.chrome.browser.ntp.snippets.SnippetsBridge;
|
| +import org.chromium.chrome.browser.ntp.snippets.SnippetsConfig;
|
| import org.chromium.chrome.browser.omaha.OmahaClient;
|
| import org.chromium.chrome.browser.omnibox.AutocompleteController;
|
| import org.chromium.chrome.browser.partnercustomizations.HomepageManager;
|
| @@ -229,6 +231,8 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode
|
|
|
| private VrShellDelegate mVrShellDelegate;
|
|
|
| + private ApplicationStatus.ActivityStateListener mSnippetsSchedulerListener;
|
| +
|
| private class TabbedAssistStatusHandler extends AssistStatusHandler {
|
| public TabbedAssistStatusHandler(Activity activity) {
|
| super(activity);
|
| @@ -404,6 +408,14 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode
|
| mLocaleManager = LocaleManager.getInstance();
|
| mLocaleManager.showSearchEnginePromoIfNeeded(this);
|
|
|
| + if (SnippetsConfig.isEnabled()) {
|
| + // The SnippetsBridge propagates the state changes so the scheduler can post
|
| + // deferred tasks to refresh outdated snippets.
|
| + mSnippetsSchedulerListener = SnippetsBridge.makeActivityStateListener();
|
| + ApplicationStatus.registerStateListenerForActivity(
|
| + mSnippetsSchedulerListener, this);
|
| + }
|
| +
|
| super.finishNativeInitialization();
|
| } finally {
|
| TraceEvent.end("ChromeTabbedActivity.finishNativeInitialization");
|
| @@ -1444,6 +1456,11 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode
|
| mVrShellDelegate.destroyVrShell();
|
| }
|
|
|
| + if (mSnippetsSchedulerListener != null) {
|
| + ApplicationStatus.unregisterActivityStateListener(mSnippetsSchedulerListener);
|
| + mSnippetsSchedulerListener = null;
|
| + }
|
| +
|
| super.onDestroyInternal();
|
| }
|
|
|
|
|