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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java

Issue 2249903003: 📰 Empty state handling for the Bookmarks section (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix instrumentation test 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
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/StatusItem.java » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java
index 8962c44b8262ae029bb0012988eb5ce0235c4315..0384d42ab7f4f424199c4eb7ee057e4dad5275c6 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapter.java
@@ -14,6 +14,7 @@
import org.chromium.base.Callback;
import org.chromium.base.Log;
+import org.chromium.base.VisibleForTesting;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ntp.NewTabPageUma;
import org.chromium.chrome.browser.ntp.NewTabPageView.NewTabPageManager;
@@ -301,10 +302,12 @@ private void setSuggestions(@CategoryInt int category, List<SnippetArticle> sugg
@CategoryStatusEnum int status) {
if (!mSections.containsKey(category)) {
SuggestionsCategoryInfo info = mSuggestionsSource.getCategoryInfo(category);
+ if (suggestions.isEmpty() && !info.showIfEmpty()) return;
+
mSections.put(
category, new SuggestionsSection(category, suggestions, status, info, this));
} else {
- mSections.get(category).setSuggestions(suggestions, status, this);
+ mSections.get(category).setSuggestions(suggestions, status);
}
}
@@ -335,8 +338,6 @@ public void onAttachedToRecyclerView(RecyclerView recyclerView) {
}
public void dismissItem(ViewHolder itemViewHolder) {
- assert itemViewHolder.getItemViewType() == NewTabPageItem.VIEW_TYPE_SNIPPET;
-
int position = itemViewHolder.getAdapterPosition();
SnippetArticle suggestion = (SnippetArticle) getItems().get(position);
@@ -371,7 +372,7 @@ public void onResult(Boolean result) {
/**
* Returns an unmodifiable list containing all items in the adapter.
*/
- List<NewTabPageItem> getItems() {
+ public List<NewTabPageItem> getItems() {
List<NewTabPageItem> items = new ArrayList<>();
for (ItemGroup group : mGroups) {
items.addAll(group.getItems());
@@ -379,7 +380,8 @@ public void onResult(Boolean result) {
return Collections.unmodifiableList(items);
}
- private ItemGroup getGroup(int itemPosition) {
+ @VisibleForTesting
+ ItemGroup getGroup(int itemPosition) {
int itemsSkipped = 0;
for (ItemGroup group : mGroups) {
List<NewTabPageItem> items = group.getItems();
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/StatusItem.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698