| Index: chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageView.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageView.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageView.java
|
| index fddc26ea35d472a32a9440fef3e929389722851d..2426ef7972aeec02e7ee04d14f418120ec759ac2 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageView.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageView.java
|
| @@ -15,6 +15,7 @@ import android.graphics.Color;
|
| import android.graphics.Point;
|
| import android.graphics.Rect;
|
| import android.graphics.drawable.BitmapDrawable;
|
| +import android.support.annotation.Nullable;
|
| import android.support.v4.graphics.drawable.RoundedBitmapDrawable;
|
| import android.support.v4.graphics.drawable.RoundedBitmapDrawableFactory;
|
| import android.support.v7.widget.RecyclerView;
|
| @@ -50,8 +51,8 @@ import org.chromium.chrome.browser.ntp.cards.NewTabPageAdapter;
|
| import org.chromium.chrome.browser.ntp.cards.NewTabPageItem;
|
| import org.chromium.chrome.browser.ntp.cards.NewTabPageRecyclerView;
|
| import org.chromium.chrome.browser.ntp.snippets.SnippetArticle;
|
| -import org.chromium.chrome.browser.ntp.snippets.SnippetsBridge;
|
| import org.chromium.chrome.browser.ntp.snippets.SnippetsConfig;
|
| +import org.chromium.chrome.browser.ntp.snippets.SuggestionsSource;
|
| import org.chromium.chrome.browser.profiles.MostVisitedSites.MostVisitedURLsObserver;
|
| import org.chromium.chrome.browser.util.MathUtils;
|
| import org.chromium.chrome.browser.util.ViewUtils;
|
| @@ -277,6 +278,13 @@ public class NewTabPageView extends FrameLayout
|
| * Handles clicks on the "learn more" link in the footer.
|
| */
|
| void onLearnMoreClicked();
|
| +
|
| + /**
|
| + * Returns the SuggestionsSource or null if it doesn't exist. The SuggestionsSource is
|
| + * invalidated (has destroy() called) when the NewTabPage is destroyed so use this method
|
| + * instead of keeping your own reference.
|
| + */
|
| + @Nullable SuggestionsSource getSuggestionsSource();
|
| }
|
|
|
| /**
|
| @@ -295,13 +303,12 @@ public class NewTabPageView extends FrameLayout
|
| * @param searchProviderHasLogo Whether the search provider has a logo.
|
| * @param snippetsBridge The optional bridge, that can be used to interact with the snippets.
|
| */
|
| - public void initialize(NewTabPageManager manager, boolean searchProviderHasLogo,
|
| - SnippetsBridge snippetsBridge) {
|
| + public void initialize(NewTabPageManager manager, boolean searchProviderHasLogo) {
|
| mManager = manager;
|
| mUiConfig = new UiConfig(this);
|
| ViewStub stub = (ViewStub) findViewById(R.id.new_tab_page_layout_stub);
|
|
|
| - mUseCardsUi = snippetsBridge != null;
|
| + mUseCardsUi = manager.getSuggestionsSource() != null;
|
| if (mUseCardsUi) {
|
| stub.setLayoutResource(R.layout.new_tab_page_recycler_view);
|
| mRecyclerView = (NewTabPageRecyclerView) stub.inflate();
|
| @@ -350,7 +357,7 @@ public class NewTabPageView extends FrameLayout
|
| // Set up snippets
|
| if (mUseCardsUi) {
|
| mNewTabPageAdapter =
|
| - new NewTabPageAdapter(mManager, mNewTabPageLayout, snippetsBridge, mUiConfig);
|
| + new NewTabPageAdapter(mManager, mNewTabPageLayout, mUiConfig);
|
| mRecyclerView.setAdapter(mNewTabPageAdapter);
|
|
|
| // Set up swipe-to-dismiss
|
|
|