Commit b89fa0aa authored by Pedro Amaral's avatar Pedro Amaral Committed by Commit Bot

Remove Chrome Home menu item expand sheet

Bug: 814528
Change-Id: I7fa5b0cd8dc9df2071d54cf51e5c88356096f49b
Reviewed-on: https://chromium-review.googlesource.com/1043164
Commit-Queue: Pedro Amaral <amaralp@chromium.org>
Reviewed-by: default avatarTed Choc <tedchoc@chromium.org>
Cr-Commit-Position: refs/heads/master@{#556944}
parent 8f8a6264
...@@ -166,8 +166,6 @@ public abstract class ChromeFeatureList { ...@@ -166,8 +166,6 @@ public abstract class ChromeFeatureList {
public static final String CHROME_HOME = "ChromeHome"; public static final String CHROME_HOME = "ChromeHome";
public static final String CHROME_HOME_DROP_ALL_BUT_FIRST_THUMBNAIL = public static final String CHROME_HOME_DROP_ALL_BUT_FIRST_THUMBNAIL =
"ChromeHomeDropAllButFirstThumbnail"; "ChromeHomeDropAllButFirstThumbnail";
public static final String CHROME_HOME_MENU_ITEMS_EXPAND_SHEET =
"ChromeHomeMenuItemsExpandSheet";
public static final String CHROME_HOME_PERSISTENT_IPH = "ChromeHomePersistentIph"; public static final String CHROME_HOME_PERSISTENT_IPH = "ChromeHomePersistentIph";
public static final String CHROME_HOME_PULL_TO_REFRESH_IPH_AT_TOP = public static final String CHROME_HOME_PULL_TO_REFRESH_IPH_AT_TOP =
"ChromeHomePullToRefreshIphAtTop"; "ChromeHomePullToRefreshIphAtTop";
......
...@@ -25,7 +25,6 @@ import android.text.TextUtils; ...@@ -25,7 +25,6 @@ import android.text.TextUtils;
import android.util.Pair; import android.util.Pair;
import android.view.KeyEvent; import android.view.KeyEvent;
import android.view.KeyboardShortcutGroup; import android.view.KeyboardShortcutGroup;
import android.view.LayoutInflater;
import android.view.Menu; import android.view.Menu;
import android.view.View; import android.view.View;
import android.view.View.OnClickListener; import android.view.View.OnClickListener;
...@@ -1499,23 +1498,6 @@ public class ChromeTabbedActivity ...@@ -1499,23 +1498,6 @@ public class ChromeTabbedActivity
@Override @Override
public View getHeaderView() { public View getHeaderView() {
// Return early if Chrome Home is not enabled.
if (getBottomSheet() == null) return null;
boolean isPageMenu = getAppMenuPropertiesDelegate().shouldShowPageMenu();
// Return early if the conditions aren't right to show the Chrome Home IPH menu
// header.
if (mControlContainer.getVisibility() != View.VISIBLE
|| getBottomSheet().isSheetOpen() || !isPageMenu
|| AppMenuPropertiesDelegate.shouldShowNavMenuItems()) {
return null;
}
LayoutInflater inflater = LayoutInflater.from(ChromeTabbedActivity.this);
Tracker tracker = TrackerFactory.getTrackerForProfile(Profile.getLastUsedProfile());
// Default is no header.
return null; return null;
} }
......
...@@ -20,11 +20,9 @@ import android.view.View.OnClickListener; ...@@ -20,11 +20,9 @@ import android.view.View.OnClickListener;
import org.chromium.base.ApiCompatibilityUtils; import org.chromium.base.ApiCompatibilityUtils;
import org.chromium.base.CommandLine; import org.chromium.base.CommandLine;
import org.chromium.base.ContextUtils; import org.chromium.base.ContextUtils;
import org.chromium.base.StrictModeContext;
import org.chromium.base.metrics.RecordHistogram; import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeActivity; import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.ChromeFeatureList;
import org.chromium.chrome.browser.ChromeSwitches; import org.chromium.chrome.browser.ChromeSwitches;
import org.chromium.chrome.browser.ShortcutHelper; import org.chromium.chrome.browser.ShortcutHelper;
import org.chromium.chrome.browser.UrlConstants; import org.chromium.chrome.browser.UrlConstants;
...@@ -33,12 +31,10 @@ import org.chromium.chrome.browser.bookmarks.BookmarkBridge; ...@@ -33,12 +31,10 @@ import org.chromium.chrome.browser.bookmarks.BookmarkBridge;
import org.chromium.chrome.browser.download.DownloadUtils; import org.chromium.chrome.browser.download.DownloadUtils;
import org.chromium.chrome.browser.multiwindow.MultiWindowUtils; import org.chromium.chrome.browser.multiwindow.MultiWindowUtils;
import org.chromium.chrome.browser.omaha.UpdateMenuItemHelper; import org.chromium.chrome.browser.omaha.UpdateMenuItemHelper;
import org.chromium.chrome.browser.preferences.ChromePreferenceManager;
import org.chromium.chrome.browser.preferences.ManagedPreferencesUtils; import org.chromium.chrome.browser.preferences.ManagedPreferencesUtils;
import org.chromium.chrome.browser.preferences.PrefServiceBridge; import org.chromium.chrome.browser.preferences.PrefServiceBridge;
import org.chromium.chrome.browser.share.ShareHelper; import org.chromium.chrome.browser.share.ShareHelper;
import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.util.FeatureUtilities;
import org.chromium.components.dom_distiller.core.DomDistillerUrlUtils; import org.chromium.components.dom_distiller.core.DomDistillerUrlUtils;
import org.chromium.ui.base.DeviceFormFactor; import org.chromium.ui.base.DeviceFormFactor;
import org.chromium.webapk.lib.client.WebApkValidator; import org.chromium.webapk.lib.client.WebApkValidator;
...@@ -49,24 +45,6 @@ import java.util.concurrent.TimeUnit; ...@@ -49,24 +45,6 @@ import java.util.concurrent.TimeUnit;
* App Menu helper that handles hiding and showing menu items based on activity state. * App Menu helper that handles hiding and showing menu items based on activity state.
*/ */
public class AppMenuPropertiesDelegate { public class AppMenuPropertiesDelegate {
/**
* The param name for the "ChromeHomeMenuItemsExpandSheet" experiment. This specifies the number
* of times a menu item can be tapped before being hidden.
*/
private static final String CHROME_HOME_MENU_ITEM_TAP_PARAM_NAME = "max_taps";
/**
* The number of times that bookmarks, downloads, and history can be triggered from the overflow
* menu in Chrome Home before they are hidden.
*/
private static final int CHROME_HOME_MENU_ITEM_TAP_MAX = 10;
/**
* Whether or not the Chrome Home menu items should be hidden because they have been tapped the
* maximum number of times.
*/
private static boolean sHideChromeHomeMenuItems;
protected MenuItem mReloadMenuItem; protected MenuItem mReloadMenuItem;
protected final ChromeActivity mActivity; protected final ChromeActivity mActivity;
...@@ -221,13 +199,6 @@ public class AppMenuPropertiesDelegate { ...@@ -221,13 +199,6 @@ public class AppMenuPropertiesDelegate {
// Only display the Enter VR button if VR Shell Dev environment is enabled. // Only display the Enter VR button if VR Shell Dev environment is enabled.
menu.findItem(R.id.enter_vr_id).setVisible( menu.findItem(R.id.enter_vr_id).setVisible(
CommandLine.getInstance().hasSwitch(ChromeSwitches.ENABLE_VR_SHELL_DEV)); CommandLine.getInstance().hasSwitch(ChromeSwitches.ENABLE_VR_SHELL_DEV));
if (!shouldShowNavMenuItems()) {
// History, downloads, and bookmarks are shown in the Chrome Home bottom sheet.
menu.findItem(R.id.open_history_menu_id).setVisible(false);
menu.findItem(R.id.downloads_menu_id).setVisible(false);
menu.findItem(R.id.all_bookmarks_menu_id).setVisible(false);
}
} }
if (isOverviewMenu) { if (isOverviewMenu) {
...@@ -441,32 +412,4 @@ public class AppMenuPropertiesDelegate { ...@@ -441,32 +412,4 @@ public class AppMenuPropertiesDelegate {
? mActivity.getString(R.string.menu_request_desktop_site_on) ? mActivity.getString(R.string.menu_request_desktop_site_on)
: mActivity.getString(R.string.menu_request_desktop_site_off)); : mActivity.getString(R.string.menu_request_desktop_site_off));
} }
/**
* @return Whether bookmarks, downloads, and history should be shown in the menu.
*/
public static boolean shouldShowNavMenuItems() {
if (!FeatureUtilities.isChromeHomeEnabled()) return true;
try (StrictModeContext unused = StrictModeContext.allowDiskReads()) {
int maxTapCount = ChromeFeatureList.getFieldTrialParamByFeatureAsInt(
ChromeFeatureList.CHROME_HOME_MENU_ITEMS_EXPAND_SHEET,
CHROME_HOME_MENU_ITEM_TAP_PARAM_NAME, CHROME_HOME_MENU_ITEM_TAP_MAX);
sHideChromeHomeMenuItems = sHideChromeHomeMenuItems
|| ChromePreferenceManager.getInstance().getChromeHomeMenuItemClickCount()
>= maxTapCount;
}
boolean chromeHomeMenuItemFlagEnabled = ChromeFeatureList.isInitialized()
&& ChromeFeatureList.isEnabled(
ChromeFeatureList.CHROME_HOME_MENU_ITEMS_EXPAND_SHEET);
// If Chrome Home or the menu item feature is disabled, clear the menu tap preference.
if (!chromeHomeMenuItemFlagEnabled) {
ChromePreferenceManager.getInstance().clearChromeHomeMenuItemClickCount();
}
return chromeHomeMenuItemFlagEnabled && !sHideChromeHomeMenuItems;
}
} }
...@@ -70,8 +70,6 @@ public class ChromePreferenceManager { ...@@ -70,8 +70,6 @@ public class ChromePreferenceManager {
public static final String CHROME_HOME_INFO_PROMO_SHOWN_KEY = "chrome_home_info_promo_shown"; public static final String CHROME_HOME_INFO_PROMO_SHOWN_KEY = "chrome_home_info_promo_shown";
private static final String CHROME_HOME_MENU_ITEM_CLICK_COUNT_KEY =
"chrome_home_menu_item_click_count";
private static final String SOLE_INTEGRATION_ENABLED_KEY = "sole_integration_enabled"; private static final String SOLE_INTEGRATION_ENABLED_KEY = "sole_integration_enabled";
private static final String COMMAND_LINE_ON_NON_ROOTED_ENABLED_KEY = private static final String COMMAND_LINE_ON_NON_ROOTED_ENABLED_KEY =
...@@ -454,30 +452,6 @@ public class ChromePreferenceManager { ...@@ -454,30 +452,6 @@ public class ChromePreferenceManager {
removeKey(CHROME_HOME_OPT_OUT_SNACKBAR_SHOWN); removeKey(CHROME_HOME_OPT_OUT_SNACKBAR_SHOWN);
} }
/**
* @return The number of times that bookmarks, history, or downloads have been triggered from
* the overflow menu while Chrome Home is enabled.
*/
public int getChromeHomeMenuItemClickCount() {
return readInt(CHROME_HOME_MENU_ITEM_CLICK_COUNT_KEY);
}
/**
* Increment the count for the number of times bookmarks, history, or downloads have been
* triggered from the overflow menu while Chrome Home is enabled.
*/
public void incrementChromeHomeMenuItemClickCount() {
writeInt(CHROME_HOME_MENU_ITEM_CLICK_COUNT_KEY, getChromeHomeMenuItemClickCount() + 1);
}
/**
* Remove the count for number of times bookmarks, history, or downloads were clicked while
* Chrome Home is enabled.
*/
public void clearChromeHomeMenuItemClickCount() {
mSharedPreferences.edit().remove(CHROME_HOME_MENU_ITEM_CLICK_COUNT_KEY).apply();
}
/** Marks that the content suggestions surface has been shown. */ /** Marks that the content suggestions surface has been shown. */
public void setSuggestionsSurfaceShown() { public void setSuggestionsSurfaceShown() {
writeBoolean(CONTENT_SUGGESTIONS_SHOWN_KEY, true); writeBoolean(CONTENT_SUGGESTIONS_SHOWN_KEY, true);
......
...@@ -1891,10 +1891,6 @@ const FeatureEntry kFeatureEntries[] = { ...@@ -1891,10 +1891,6 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kChromeHomeInactivitySheetExpansionDescription, flag_descriptions::kChromeHomeInactivitySheetExpansionDescription,
kOsAndroid, kOsAndroid,
FEATURE_VALUE_TYPE(chrome::android::kChromeHomeInactivitySheetExpansion)}, FEATURE_VALUE_TYPE(chrome::android::kChromeHomeInactivitySheetExpansion)},
{"enable-chrome-home-menu-items",
flag_descriptions::kChromeHomeMenuItemsName,
flag_descriptions::kChromeHomeMenuItemsDescription, kOsAndroid,
FEATURE_VALUE_TYPE(chrome::android::kChromeHomeMenuItemsExpandSheet)},
{"chrome-home-swipe-logic", flag_descriptions::kChromeHomeSwipeLogicName, {"chrome-home-swipe-logic", flag_descriptions::kChromeHomeSwipeLogicName,
flag_descriptions::kChromeHomeSwipeLogicDescription, kOsAndroid, flag_descriptions::kChromeHomeSwipeLogicDescription, kOsAndroid,
MULTI_VALUE_TYPE(kChromeHomeSwipeLogicChoices)}, MULTI_VALUE_TYPE(kChromeHomeSwipeLogicChoices)},
......
...@@ -71,7 +71,6 @@ const base::Feature* kFeaturesExposedToJava[] = { ...@@ -71,7 +71,6 @@ const base::Feature* kFeaturesExposedToJava[] = {
&kCCTRedirectPreconnect, &kCCTRedirectPreconnect,
&kChromeDuplexFeature, &kChromeDuplexFeature,
&kChromeHomeInactivitySheetExpansion, &kChromeHomeInactivitySheetExpansion,
&kChromeHomeMenuItemsExpandSheet,
&kChromeHomePersistentIph, &kChromeHomePersistentIph,
&kChromeHomePullToRefreshIphAtTop, &kChromeHomePullToRefreshIphAtTop,
&kChromeHomeSwipeLogic, &kChromeHomeSwipeLogic,
...@@ -205,9 +204,6 @@ const base::Feature kChromeDuplexFeature{"ChromeDuplex", ...@@ -205,9 +204,6 @@ const base::Feature kChromeDuplexFeature{"ChromeDuplex",
const base::Feature kChromeHomeInactivitySheetExpansion{ const base::Feature kChromeHomeInactivitySheetExpansion{
"ChromeHomeInactivitySheetExpansion", base::FEATURE_DISABLED_BY_DEFAULT}; "ChromeHomeInactivitySheetExpansion", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kChromeHomeMenuItemsExpandSheet{
"ChromeHomeMenuItemsExpandSheet", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kChromeHomePersistentIph{"ChromeHomePersistentIph", const base::Feature kChromeHomePersistentIph{"ChromeHomePersistentIph",
base::FEATURE_DISABLED_BY_DEFAULT}; base::FEATURE_DISABLED_BY_DEFAULT};
......
...@@ -24,7 +24,6 @@ extern const base::Feature kCCTPostMessageAPI; ...@@ -24,7 +24,6 @@ extern const base::Feature kCCTPostMessageAPI;
extern const base::Feature kCCTRedirectPreconnect; extern const base::Feature kCCTRedirectPreconnect;
extern const base::Feature kChromeDuplexFeature; extern const base::Feature kChromeDuplexFeature;
extern const base::Feature kChromeHomeInactivitySheetExpansion; extern const base::Feature kChromeHomeInactivitySheetExpansion;
extern const base::Feature kChromeHomeMenuItemsExpandSheet;
extern const base::Feature kChromeHomePersistentIph; extern const base::Feature kChromeHomePersistentIph;
extern const base::Feature kChromeHomePullToRefreshIphAtTop; extern const base::Feature kChromeHomePullToRefreshIphAtTop;
extern const base::Feature kChromeHomeSurvey; extern const base::Feature kChromeHomeSurvey;
......
...@@ -1937,13 +1937,6 @@ const char kChromeHomeInactivitySheetExpansionDescription[] = ...@@ -1937,13 +1937,6 @@ const char kChromeHomeInactivitySheetExpansionDescription[] =
"Expand bottom sheet on startup in Chrome Home after a period of" "Expand bottom sheet on startup in Chrome Home after a period of"
" inactivity."; " inactivity.";
const char kChromeHomeMenuItemsName[] =
"Show bookmarks, downloads, and history menu items in Chrome Home";
const char kChromeHomeMenuItemsDescription[] =
"Shows bookmarks, downloads, and history menu items in the overflow menu"
" when Chrome Home is enabled. These items will open the bottom sheet to"
" show the desired content.";
const char kChromeHomePersistentIphName[] = "Chrome Home Persistent Iph"; const char kChromeHomePersistentIphName[] = "Chrome Home Persistent Iph";
const char kChromeHomePersistentIphDescription[] = const char kChromeHomePersistentIphDescription[] =
"Wait to dismiss the Chrome Home IPH until the user inteacts with the " "Wait to dismiss the Chrome Home IPH until the user inteacts with the "
......
...@@ -1184,9 +1184,6 @@ extern const char kChromeHomeEnableSurveyDescription[]; ...@@ -1184,9 +1184,6 @@ extern const char kChromeHomeEnableSurveyDescription[];
extern const char kChromeHomeInactivitySheetExpansionName[]; extern const char kChromeHomeInactivitySheetExpansionName[];
extern const char kChromeHomeInactivitySheetExpansionDescription[]; extern const char kChromeHomeInactivitySheetExpansionDescription[];
extern const char kChromeHomeMenuItemsName[];
extern const char kChromeHomeMenuItemsDescription[];
extern const char kChromeHomePersistentIphName[]; extern const char kChromeHomePersistentIphName[];
extern const char kChromeHomePersistentIphDescription[]; extern const char kChromeHomePersistentIphDescription[];
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment