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

Side by Side Diff: chrome/android/java/src/org/chromium/chrome/browser/ChromeActionModeCallback.java

Issue 2566963002: Revert of Disable UI options that allow new tabs before FRE. (Closed)
Patch Set: Created 4 years 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 unified diff | Download patch
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.chrome.browser; 5 package org.chromium.chrome.browser;
6 6
7 import android.content.Context; 7 import android.content.Context;
8 import android.text.TextUtils; 8 import android.text.TextUtils;
9 import android.view.ActionMode; 9 import android.view.ActionMode;
10 import android.view.Menu; 10 import android.view.Menu;
11 import android.view.MenuItem; 11 import android.view.MenuItem;
12 12
13 import org.chromium.base.metrics.RecordUserAction; 13 import org.chromium.base.metrics.RecordUserAction;
14 import org.chromium.chrome.browser.firstrun.FirstRunStatus;
15 import org.chromium.chrome.browser.omnibox.geo.GeolocationHeader; 14 import org.chromium.chrome.browser.omnibox.geo.GeolocationHeader;
16 import org.chromium.chrome.browser.search_engines.TemplateUrlService; 15 import org.chromium.chrome.browser.search_engines.TemplateUrlService;
17 import org.chromium.chrome.browser.tab.Tab; 16 import org.chromium.chrome.browser.tab.Tab;
18 import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType; 17 import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType;
19 import org.chromium.content.R; 18 import org.chromium.content.R;
20 import org.chromium.content_public.browser.ActionModeCallbackHelper; 19 import org.chromium.content_public.browser.ActionModeCallbackHelper;
21 import org.chromium.content_public.browser.LoadUrlParams; 20 import org.chromium.content_public.browser.LoadUrlParams;
22 import org.chromium.ui.base.PageTransition; 21 import org.chromium.ui.base.PageTransition;
23 22
24 /** 23 /**
25 * A class that handles selection action mode for an associated {@link Tab}. 24 * A class that handles selection action mode for an associated {@link Tab}.
26 */ 25 */
27 public class ChromeActionModeCallback implements ActionMode.Callback { 26 public class ChromeActionModeCallback implements ActionMode.Callback {
28 private final Context mContext; 27 private final Context mContext;
29 private final Tab mTab; 28 private final Tab mTab;
30 private final ActionModeCallbackHelper mHelper; 29 private final ActionModeCallbackHelper mHelper;
31 30
32 public ChromeActionModeCallback(Context context, Tab tab, ActionModeCallback Helper helper) { 31 public ChromeActionModeCallback(Context context, Tab tab, ActionModeCallback Helper helper) {
33 mContext = context; 32 mContext = context;
34 mTab = tab; 33 mTab = tab;
35 mHelper = helper; 34 mHelper = helper;
36 } 35 }
37 36
38 @Override 37 @Override
39 public boolean onCreateActionMode(ActionMode mode, Menu menu) { 38 public boolean onCreateActionMode(ActionMode mode, Menu menu) {
40 notifyContextualActionBarVisibilityChanged(true); 39 notifyContextualActionBarVisibilityChanged(true);
41
42 int allowedActionModes = ActionModeCallbackHelper.MENU_ITEM_PROCESS_TEXT
43 | ActionModeCallbackHelper.MENU_ITEM_SHARE;
44 // Disable options that expose additional Chrome functionality prior to the FRE being
45 // completed (i.e. creation of a new tab).
46 if (FirstRunStatus.getFirstRunFlowComplete()) {
47 allowedActionModes |= ActionModeCallbackHelper.MENU_ITEM_WEB_SEARCH;
48 }
49 mHelper.setAllowedMenuItems(allowedActionModes);
50
51 mHelper.onCreateActionMode(mode, menu); 40 mHelper.onCreateActionMode(mode, menu);
52 return true; 41 return true;
53 } 42 }
54 43
55 @Override 44 @Override
56 public boolean onPrepareActionMode(ActionMode mode, Menu menu) { 45 public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
57 notifyContextualActionBarVisibilityChanged(true); 46 notifyContextualActionBarVisibilityChanged(true);
58 return mHelper.onPrepareActionMode(mode, menu); 47 return mHelper.onPrepareActionMode(mode, menu);
59 } 48 }
60 49
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 String headers = GeolocationHeader.getGeoHeader(mContext.getApplicationC ontext(), 84 String headers = GeolocationHeader.getGeoHeader(mContext.getApplicationC ontext(),
96 url, mTab.isIncognito()); 85 url, mTab.isIncognito());
97 86
98 LoadUrlParams loadUrlParams = new LoadUrlParams(url); 87 LoadUrlParams loadUrlParams = new LoadUrlParams(url);
99 loadUrlParams.setVerbatimHeaders(headers); 88 loadUrlParams.setVerbatimHeaders(headers);
100 loadUrlParams.setTransitionType(PageTransition.GENERATED); 89 loadUrlParams.setTransitionType(PageTransition.GENERATED);
101 mTab.getTabModelSelector().openNewTab(loadUrlParams, 90 mTab.getTabModelSelector().openNewTab(loadUrlParams,
102 TabLaunchType.FROM_LONGPRESS_FOREGROUND, mTab, mTab.isIncognito( )); 91 TabLaunchType.FROM_LONGPRESS_FOREGROUND, mTab, mTab.isIncognito( ));
103 } 92 }
104 } 93 }
OLDNEW
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698