Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsBridge.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsBridge.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsBridge.java |
| index e47f75262de354b61ea90f2da35d3320e077ff9c..bf7b0b4fa9f292500cf7f3aa9f126b5f02085a23 100644 |
| --- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsBridge.java |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsBridge.java |
| @@ -8,6 +8,8 @@ import android.graphics.Bitmap; |
| import org.chromium.base.Callback; |
| import org.chromium.base.annotations.CalledByNative; |
| +import org.chromium.chrome.browser.ntp.snippets.CategoryStatus.CategoryStatusEnum; |
| +import org.chromium.chrome.browser.ntp.snippets.KnownCategories.KnownCategoriesEnum; |
| import org.chromium.chrome.browser.profiles.Profile; |
| import java.util.ArrayList; |
| @@ -22,12 +24,12 @@ public class SnippetsBridge implements SnippetsSource { |
| private long mNativeSnippetsBridge; |
| private SnippetsObserver mObserver; |
| - public static boolean isCategoryStatusAvailable(int status) { |
| + public static boolean isCategoryStatusAvailable(@CategoryStatusEnum int status) { |
| // Note: This code is duplicated in content_suggestions_category_status.cc. |
| return status == CategoryStatus.AVAILABLE_LOADING || status == CategoryStatus.AVAILABLE; |
| } |
| - public static boolean isCategoryStatusInitOrAvailable(int status) { |
| + public static boolean isCategoryStatusInitOrAvailable(@CategoryStatusEnum int status) { |
| // Note: This code is duplicated in content_suggestions_category_status.cc. |
| return status == CategoryStatus.INITIALIZING || isCategoryStatusAvailable(status); |
| } |
| @@ -114,29 +116,39 @@ public class SnippetsBridge implements SnippetsSource { |
| } |
| @Override |
| - public int getCategoryStatus() { |
| + @CategoryStatusEnum |
| + public int getCategoryStatus(@KnownCategoriesEnum int category) { |
| assert mNativeSnippetsBridge != 0; |
| - return nativeGetCategoryStatus(mNativeSnippetsBridge); |
| + return nativeGetCategoryStatus(mNativeSnippetsBridge, category); |
| } |
| @CalledByNative |
| - private void onSnippetsAvailable(String[] ids, String[] titles, String[] urls, String[] ampUrls, |
| - String[] previewText, long[] timestamps, String[] publishers, float[] scores) { |
| + private static List<SnippetArticleListItem> createSuggestionList() { |
| + return new ArrayList<>(); |
| + } |
| + |
| + @CalledByNative |
| + private static void addSuggestion(List<SnippetArticleListItem> suggestions, String id, |
| + String title, String publisher, String previewText, String url, String ampUrl, |
| + long timestamp, float score) { |
| + int position = suggestions.size(); |
| + suggestions.add(new SnippetArticleListItem(id, title, publisher, previewText, url, ampUrl, |
| + timestamp, score, position)); |
| + } |
| + |
| + @CalledByNative |
| + private void onSuggestionsAvailable(/* @KnownCategoriesEnum */ int category, |
|
PEConn
2016/08/02 15:45:14
Why is this commented out?
PEConn
2016/08/03 16:34:23
^^^
Bernhard Bauer
2016/08/03 16:44:59
Oops, forgot. The JNI generator doesn't seem to li
PEConn
2016/08/03 16:47:07
Acknowledged.
|
| + List<SnippetArticleListItem> suggestions) { |
| assert mNativeSnippetsBridge != 0; |
| assert mObserver != null; |
| - List<SnippetArticleListItem> newSnippets = new ArrayList<>(ids.length); |
| - for (int i = 0; i < ids.length; i++) { |
| - newSnippets.add(new SnippetArticleListItem(ids[i], titles[i], publishers[i], |
| - previewText[i], urls[i], ampUrls[i], timestamps[i], scores[i], i)); |
| - } |
| - |
| - mObserver.onSnippetsReceived(newSnippets); |
| + mObserver.onSuggestionsReceived(category, suggestions); |
| } |
| @CalledByNative |
| - private void onCategoryStatusChanged(int newStatus) { |
| - if (mObserver != null) mObserver.onCategoryStatusChanged(newStatus); |
| + private void onCategoryStatusChanged(/* @KnownCategoriesEnum */ int category, |
| + /* @CategoryStatusEnum */ int newStatus) { |
| + if (mObserver != null) mObserver.onCategoryStatusChanged(category, newStatus); |
| } |
| private native long nativeInit(Profile profile); |
| @@ -149,5 +161,5 @@ public class SnippetsBridge implements SnippetsSource { |
| Callback<Boolean> callback, String url); |
| private native void nativeFetchImage( |
| long nativeNTPSnippetsBridge, String snippetId, Callback<Bitmap> callback); |
| - private native int nativeGetCategoryStatus(long nativeNTPSnippetsBridge); |
| + private native int nativeGetCategoryStatus(long nativeNTPSnippetsBridge, int category); |
| } |