Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1651)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetsBridge.java

Issue 2196273002: Zine: support multiple sections in the ui (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: review Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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);
}

Powered by Google App Engine
This is Rietveld 408576698