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

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

Issue 2665983005: Ntp: use callbacks for partial binding, they can carry more detail. (Closed)
Patch Set: Address review comments from bauerb. Created 3 years, 11 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/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 80e98515c36e66daa8b289f695531e9a65797276..01f903d782d87444cf45442f453bbfbfaf9ed0ee 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
@@ -13,11 +13,11 @@ import android.view.ViewGroup;
import org.chromium.base.Callback;
import org.chromium.base.VisibleForTesting;
import org.chromium.chrome.browser.ntp.ContextMenuManager;
+import org.chromium.chrome.browser.ntp.cards.NewTabPageViewHolder.PartialBindCallback;
import org.chromium.chrome.browser.ntp.snippets.SectionHeaderViewHolder;
import org.chromium.chrome.browser.ntp.snippets.SnippetArticle;
import org.chromium.chrome.browser.ntp.snippets.SnippetArticleViewHolder;
import org.chromium.chrome.browser.offlinepages.OfflinePageBridge;
-import org.chromium.chrome.browser.suggestions.PartialUpdateId;
import org.chromium.chrome.browser.suggestions.SuggestionsUiDelegate;
import org.chromium.chrome.browser.widget.displaystyle.UiConfig;
@@ -148,20 +148,8 @@ public class NewTabPageAdapter extends Adapter<NewTabPageViewHolder> implements
}
for (Object payload : payloads) {
- @PartialUpdateId
- int updateId = (int) payload;
-
- switch (updateId) {
- case PartialUpdateId.OFFLINE_BADGE:
- assert holder instanceof SnippetArticleViewHolder;
- ((SnippetArticleViewHolder) holder).refreshOfflineBadgeVisibility();
- break;
- case PartialUpdateId.CARD_BACKGROUND:
- holder.updateLayoutParams();
- break;
- default:
- assert false; // Unknown payload
- }
+ assert payload instanceof PartialBindCallback;
+ ((PartialBindCallback) payload).onResult(holder);
}
}
@@ -209,10 +197,10 @@ public class NewTabPageAdapter extends Adapter<NewTabPageViewHolder> implements
}
@Override
- public void onItemRangeChanged(
- TreeNode child, int itemPosition, int itemCount, Object payload) {
+ public void onItemRangeChanged(TreeNode child, int itemPosition, int itemCount,
+ @Nullable PartialBindCallback callback) {
assert child == mRoot;
- notifyItemRangeChanged(itemPosition, itemCount, payload);
+ notifyItemRangeChanged(itemPosition, itemCount, callback);
}
@Override

Powered by Google App Engine
This is Rietveld 408576698