| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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.appmenu; | 5 package org.chromium.chrome.browser.appmenu; |
| 6 | 6 |
| 7 import android.content.Context; | 7 import android.content.Context; |
| 8 import android.content.pm.ResolveInfo; | 8 import android.content.pm.ResolveInfo; |
| 9 import android.graphics.PorterDuff; | 9 import android.graphics.PorterDuff; |
| 10 import android.graphics.drawable.Drawable; | 10 import android.graphics.drawable.Drawable; |
| (...skipping 12 matching lines...) Expand all Loading... |
| 23 import org.chromium.chrome.browser.UrlConstants; | 23 import org.chromium.chrome.browser.UrlConstants; |
| 24 import org.chromium.chrome.browser.banners.AppBannerManager; | 24 import org.chromium.chrome.browser.banners.AppBannerManager; |
| 25 import org.chromium.chrome.browser.bookmarks.BookmarkBridge; | 25 import org.chromium.chrome.browser.bookmarks.BookmarkBridge; |
| 26 import org.chromium.chrome.browser.download.DownloadUtils; | 26 import org.chromium.chrome.browser.download.DownloadUtils; |
| 27 import org.chromium.chrome.browser.multiwindow.MultiWindowUtils; | 27 import org.chromium.chrome.browser.multiwindow.MultiWindowUtils; |
| 28 import org.chromium.chrome.browser.omaha.UpdateMenuItemHelper; | 28 import org.chromium.chrome.browser.omaha.UpdateMenuItemHelper; |
| 29 import org.chromium.chrome.browser.preferences.ManagedPreferencesUtils; | 29 import org.chromium.chrome.browser.preferences.ManagedPreferencesUtils; |
| 30 import org.chromium.chrome.browser.preferences.PrefServiceBridge; | 30 import org.chromium.chrome.browser.preferences.PrefServiceBridge; |
| 31 import org.chromium.chrome.browser.share.ShareHelper; | 31 import org.chromium.chrome.browser.share.ShareHelper; |
| 32 import org.chromium.chrome.browser.tab.Tab; | 32 import org.chromium.chrome.browser.tab.Tab; |
| 33 import org.chromium.chrome.browser.util.FeatureUtilities; |
| 33 import org.chromium.components.dom_distiller.core.DomDistillerUrlUtils; | 34 import org.chromium.components.dom_distiller.core.DomDistillerUrlUtils; |
| 34 import org.chromium.ui.base.DeviceFormFactor; | 35 import org.chromium.ui.base.DeviceFormFactor; |
| 35 import org.chromium.webapk.lib.client.WebApkValidator; | 36 import org.chromium.webapk.lib.client.WebApkValidator; |
| 36 | 37 |
| 37 import java.util.concurrent.TimeUnit; | 38 import java.util.concurrent.TimeUnit; |
| 38 | 39 |
| 39 /** | 40 /** |
| 40 * App Menu helper that handles hiding and showing menu items based on activity
state. | 41 * App Menu helper that handles hiding and showing menu items based on activity
state. |
| 41 */ | 42 */ |
| 42 public class AppMenuPropertiesDelegate { | 43 public class AppMenuPropertiesDelegate { |
| (...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 178 MenuItem requestItem = menu.findItem(R.id.request_desktop_site_id); | 179 MenuItem requestItem = menu.findItem(R.id.request_desktop_site_id); |
| 179 updateRequestDesktopSiteMenuItem(requestItem, currentTab); | 180 updateRequestDesktopSiteMenuItem(requestItem, currentTab); |
| 180 | 181 |
| 181 // Only display reader mode settings menu option if the current page
is in reader mode. | 182 // Only display reader mode settings menu option if the current page
is in reader mode. |
| 182 menu.findItem(R.id.reader_mode_prefs_id) | 183 menu.findItem(R.id.reader_mode_prefs_id) |
| 183 .setVisible(DomDistillerUrlUtils.isDistilledPage(currentTab.
getUrl())); | 184 .setVisible(DomDistillerUrlUtils.isDistilledPage(currentTab.
getUrl())); |
| 184 | 185 |
| 185 // Only display the Enter VR button if VR Shell Dev environment is e
nabled. | 186 // Only display the Enter VR button if VR Shell Dev environment is e
nabled. |
| 186 menu.findItem(R.id.enter_vr_id).setVisible( | 187 menu.findItem(R.id.enter_vr_id).setVisible( |
| 187 CommandLine.getInstance().hasSwitch(ChromeSwitches.ENABLE_VR
_SHELL_DEV)); | 188 CommandLine.getInstance().hasSwitch(ChromeSwitches.ENABLE_VR
_SHELL_DEV)); |
| 189 |
| 190 if (FeatureUtilities.isChromeHomeEnabled()) { |
| 191 // History, downloads, and bookmarks are shown in the Chrome Hom
e bottom sheet. |
| 192 menu.findItem(R.id.open_history_menu_id).setVisible(false); |
| 193 menu.findItem(R.id.downloads_menu_id).setVisible(false); |
| 194 menu.findItem(R.id.all_bookmarks_menu_id).setVisible(false); |
| 195 } |
| 188 } | 196 } |
| 189 | 197 |
| 190 if (isOverviewMenu) { | 198 if (isOverviewMenu) { |
| 191 if (isIncognito) { | 199 if (isIncognito) { |
| 192 // Hide normal close all tabs item. | 200 // Hide normal close all tabs item. |
| 193 menu.findItem(R.id.close_all_tabs_menu_id).setVisible(false); | 201 menu.findItem(R.id.close_all_tabs_menu_id).setVisible(false); |
| 194 // Enable close incognito tabs only if there are incognito tabs. | 202 // Enable close incognito tabs only if there are incognito tabs. |
| 195 menu.findItem(R.id.close_all_incognito_tabs_menu_id).setEnabled(
true); | 203 menu.findItem(R.id.close_all_incognito_tabs_menu_id).setEnabled(
true); |
| 196 } else { | 204 } else { |
| 197 // Hide close incognito tabs item. | 205 // Hide close incognito tabs item. |
| (...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 331 String url = currentTab.getUrl(); | 339 String url = currentTab.getUrl(); |
| 332 boolean isChromeScheme = url.startsWith(UrlConstants.CHROME_URL_PREFIX) | 340 boolean isChromeScheme = url.startsWith(UrlConstants.CHROME_URL_PREFIX) |
| 333 || url.startsWith(UrlConstants.CHROME_NATIVE_URL_PREFIX); | 341 || url.startsWith(UrlConstants.CHROME_NATIVE_URL_PREFIX); |
| 334 requstMenuItem.setVisible(!isChromeScheme || currentTab.isNativePage()); | 342 requstMenuItem.setVisible(!isChromeScheme || currentTab.isNativePage()); |
| 335 requstMenuItem.setChecked(currentTab.getUseDesktopUserAgent()); | 343 requstMenuItem.setChecked(currentTab.getUseDesktopUserAgent()); |
| 336 requstMenuItem.setTitleCondensed(requstMenuItem.isChecked() | 344 requstMenuItem.setTitleCondensed(requstMenuItem.isChecked() |
| 337 ? mActivity.getString(R.string.menu_request_desktop_site_on) | 345 ? mActivity.getString(R.string.menu_request_desktop_site_on) |
| 338 : mActivity.getString(R.string.menu_request_desktop_site_off)); | 346 : mActivity.getString(R.string.menu_request_desktop_site_off)); |
| 339 } | 347 } |
| 340 } | 348 } |
| OLD | NEW |