Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuHelper.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuHelper.java b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuHelper.java |
| index 615b7c8fb67885ad79fd377688ec0a8c45c7933d..ecc93695a2bdd7b964c54e3888d11eed6b372413 100644 |
| --- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuHelper.java |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuHelper.java |
| @@ -15,6 +15,7 @@ import org.chromium.base.Callback; |
| import org.chromium.base.VisibleForTesting; |
| import org.chromium.base.annotations.CalledByNative; |
| import org.chromium.base.metrics.RecordHistogram; |
| +import org.chromium.chrome.browser.ChromeFeatureList; |
| import org.chromium.chrome.browser.share.ShareHelper; |
| import org.chromium.content.browser.ContentViewCore; |
| import org.chromium.content_public.browser.WebContents; |
| @@ -133,17 +134,20 @@ public class ContextMenuHelper implements OnCreateContextMenuListener { |
| @Override |
| public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { |
|
Ted C
2017/03/21 16:29:39
So this path still relies on View.showContextMenu,
JJ
2017/03/22 23:35:32
Alright, refactored. I did try this before in a pr
|
| assert mPopulator != null; |
| - |
| List<Pair<Integer, List<ContextMenuItem>>> items = |
| mPopulator.buildContextMenu(menu, v.getContext(), mCurrentContextMenuParams); |
| - ContextMenuUi menuUi = new PlatformContextMenuUi(menu); |
| - menuUi.displayMenu(mActivity, mCurrentContextMenuParams, items, new Callback<Integer>() { |
| + Callback<Integer> callback = new Callback<Integer>() { |
| @Override |
| public void onResult(Integer result) { |
| mPopulator.onItemSelected( |
| ContextMenuHelper.this, mCurrentContextMenuParams, result); |
| } |
| - }); |
| + }; |
| + |
| + ContextMenuUi menuUi = (ChromeFeatureList.isEnabled(ChromeFeatureList.CUSTOM_CONTEXT_MENU)) |
| + ? new CustomContextMenuDialog() |
| + : new PlatformContextMenuUi(menu); |
| + menuUi.displayMenu(mActivity, mCurrentContextMenuParams, items, callback); |
| } |
| /** |