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

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

Issue 2459033002: 📰 Add a context menu to remove status items (Closed)
Patch Set: fix test Created 4 years, 1 month 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/SnippetArticleViewHolder.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetArticleViewHolder.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetArticleViewHolder.java
index 0c5581f91e628bef67d72c0b32ec6f1e747899b2..9c9da3d994e79eba7f41990329cc14ad97c2dff3 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetArticleViewHolder.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/snippets/SnippetArticleViewHolder.java
@@ -15,7 +15,6 @@
import android.os.SystemClock;
import android.support.v4.text.BidiFormatter;
import android.text.format.DateUtils;
-import android.view.ContextMenu;
import android.view.View;
import android.view.View.MeasureSpec;
import android.view.ViewGroup;
@@ -28,7 +27,8 @@
import org.chromium.chrome.R;
import org.chromium.chrome.browser.favicon.FaviconHelper.FaviconImageCallback;
import org.chromium.chrome.browser.favicon.FaviconHelper.IconAvailabilityCallback;
-import org.chromium.chrome.browser.ntp.ContextMenuHandler;
+import org.chromium.chrome.browser.ntp.ContextMenuManager;
+import org.chromium.chrome.browser.ntp.ContextMenuManager.Delegate;
import org.chromium.chrome.browser.ntp.DisplayStyleObserver;
import org.chromium.chrome.browser.ntp.NewTabPageView.NewTabPageManager;
import org.chromium.chrome.browser.ntp.UiConfig;
@@ -41,13 +41,16 @@
import java.net.URI;
import java.net.URISyntaxException;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.Set;
import java.util.concurrent.TimeUnit;
/**
* A class that represents the view for a single card snippet.
*/
public class SnippetArticleViewHolder
- extends CardViewHolder implements ImpressionTracker.Listener, ContextMenuHandler.Delegate {
+ extends CardViewHolder implements ImpressionTracker.Listener, ContextMenuManager.Delegate {
private static final String PUBLISHER_FORMAT_STRING = "%s - %s";
private static final int FADE_IN_ANIMATION_TIME_MS = 300;
private static final int[] FAVICON_SERVICE_SUPPORTED_SIZES = {16, 24, 32, 48, 64};
@@ -78,7 +81,7 @@
*/
public SnippetArticleViewHolder(NewTabPageRecyclerView parent, NewTabPageManager manager,
UiConfig uiConfig) {
- super(R.layout.new_tab_page_snippets_card, parent, uiConfig);
+ super(R.layout.new_tab_page_snippets_card, parent, uiConfig, manager);
mNewTabPageManager = manager;
mThumbnailView = (ImageView) itemView.findViewById(R.id.article_thumbnail);
@@ -120,7 +123,7 @@ public void openItem(int windowDisposition) {
@Override
public void removeItem() {
- getRecyclerView().dismissItemWithAnimation(mArticle);
+ getRecyclerView().dismissItemWithAnimation(this);
}
@Override
@@ -129,9 +132,15 @@ public String getUrl() {
}
@Override
- protected void createContextMenu(ContextMenu menu) {
- new ContextMenuHandler(mNewTabPageManager, getRecyclerView(), this)
- .onCreateContextMenu(menu);
+ public Set<Integer> getSupportedMenuItems() {
+ return new HashSet<>(Arrays.asList(ContextMenuManager.ID_OPEN_IN_NEW_WINDOW,
+ ContextMenuManager.ID_OPEN_IN_NEW_TAB, ContextMenuManager.ID_OPEN_IN_INCOGNITO_TAB,
+ ContextMenuManager.ID_REMOVE, ContextMenuManager.ID_SAVE_FOR_OFFLINE));
+ }
+
+ @Override
+ protected Delegate getContextMenuDelegate() {
+ return this;
}
/**
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/SuggestionsSection.java ('k') | chrome/android/java_sources.gni » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698