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

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

Issue 2180293002: Remove the print option from the menu and make it a share destination. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased Created 4 years, 4 months 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
OLDNEW
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.text.TextUtils; 7 import android.text.TextUtils;
8 import android.view.Menu; 8 import android.view.Menu;
9 import android.view.MenuItem; 9 import android.view.MenuItem;
10 10
11 import org.chromium.base.CommandLine; 11 import org.chromium.base.CommandLine;
12 import org.chromium.chrome.R; 12 import org.chromium.chrome.R;
13 import org.chromium.chrome.browser.ChromeActivity; 13 import org.chromium.chrome.browser.ChromeActivity;
14 import org.chromium.chrome.browser.ChromeSwitches; 14 import org.chromium.chrome.browser.ChromeSwitches;
15 import org.chromium.chrome.browser.ShortcutHelper; 15 import org.chromium.chrome.browser.ShortcutHelper;
16 import org.chromium.chrome.browser.UrlConstants; 16 import org.chromium.chrome.browser.UrlConstants;
17 import org.chromium.chrome.browser.bookmarks.BookmarkBridge; 17 import org.chromium.chrome.browser.bookmarks.BookmarkBridge;
18 import org.chromium.chrome.browser.multiwindow.MultiWindowUtils; 18 import org.chromium.chrome.browser.multiwindow.MultiWindowUtils;
19 import org.chromium.chrome.browser.omaha.UpdateMenuItemHelper; 19 import org.chromium.chrome.browser.omaha.UpdateMenuItemHelper;
20 import org.chromium.chrome.browser.preferences.ManagedPreferencesUtils; 20 import org.chromium.chrome.browser.preferences.ManagedPreferencesUtils;
21 import org.chromium.chrome.browser.preferences.PrefServiceBridge; 21 import org.chromium.chrome.browser.preferences.PrefServiceBridge;
22 import org.chromium.chrome.browser.share.ShareHelper; 22 import org.chromium.chrome.browser.share.ShareHelper;
23 import org.chromium.chrome.browser.tab.Tab; 23 import org.chromium.chrome.browser.tab.Tab;
24 import org.chromium.chrome.browser.util.FeatureUtilities; 24 import org.chromium.chrome.browser.util.FeatureUtilities;
25 import org.chromium.components.dom_distiller.core.DomDistillerUrlUtils; 25 import org.chromium.components.dom_distiller.core.DomDistillerUrlUtils;
26 import org.chromium.printing.PrintingController;
27 import org.chromium.ui.base.DeviceFormFactor; 26 import org.chromium.ui.base.DeviceFormFactor;
28 27
29 /** 28 /**
30 * App Menu helper that handles hiding and showing menu items based on activity state. 29 * App Menu helper that handles hiding and showing menu items based on activity state.
31 */ 30 */
32 public class AppMenuPropertiesDelegate { 31 public class AppMenuPropertiesDelegate {
33 // Indices for different levels in drawable.btn_reload_stop. 32 // Indices for different levels in drawable.btn_reload_stop.
34 // Used only when preparing menu and refresh reload button in menu when tab 33 // Used only when preparing menu and refresh reload button in menu when tab
35 // page load status changes. 34 // page load status changes.
36 private static final int RELOAD_BUTTON_LEVEL_RELOAD = 0; 35 private static final int RELOAD_BUTTON_LEVEL_RELOAD = 0;
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
147 146
148 // Hide request desktop site on all chrome:// pages except for the N TP. Check request 147 // Hide request desktop site on all chrome:// pages except for the N TP. Check request
149 // desktop site if it's activated on this page. 148 // desktop site if it's activated on this page.
150 MenuItem requestItem = menu.findItem(R.id.request_desktop_site_id); 149 MenuItem requestItem = menu.findItem(R.id.request_desktop_site_id);
151 requestItem.setVisible(!isChromeScheme || currentTab.isNativePage()) ; 150 requestItem.setVisible(!isChromeScheme || currentTab.isNativePage()) ;
152 requestItem.setChecked(currentTab.getUseDesktopUserAgent()); 151 requestItem.setChecked(currentTab.getUseDesktopUserAgent());
153 requestItem.setTitleCondensed(requestItem.isChecked() 152 requestItem.setTitleCondensed(requestItem.isChecked()
154 ? mActivity.getString(R.string.menu_request_desktop_site_on) 153 ? mActivity.getString(R.string.menu_request_desktop_site_on)
155 : mActivity.getString(R.string.menu_request_desktop_site_off )); 154 : mActivity.getString(R.string.menu_request_desktop_site_off ));
156 155
157 PrintingController printingController =
158 mActivity.getChromeApplication().getPrintingController();
159 disableEnableMenuItem(menu, R.id.print_id,
160 printingController != null && !currentTab.isNativePage(),
161 printingController != null && !printingController.isBusy()
162 && PrefServiceBridge.getInstance().isPrintingEnabled (),
163 PrefServiceBridge.getInstance().isPrintingManaged());
164
165 // Only display reader mode settings menu option if the current page is in reader mode. 156 // Only display reader mode settings menu option if the current page is in reader mode.
166 menu.findItem(R.id.reader_mode_prefs_id) 157 menu.findItem(R.id.reader_mode_prefs_id)
167 .setVisible(DomDistillerUrlUtils.isDistilledPage(currentTab. getUrl())); 158 .setVisible(DomDistillerUrlUtils.isDistilledPage(currentTab. getUrl()));
168 } 159 }
169 160
170 if (isOverviewMenu) { 161 if (isOverviewMenu) {
171 if (isIncognito) { 162 if (isIncognito) {
172 // Hide normal close all tabs item. 163 // Hide normal close all tabs item.
173 menu.findItem(R.id.close_all_tabs_menu_id).setVisible(false); 164 menu.findItem(R.id.close_all_tabs_menu_id).setVisible(false);
174 // Enable close incognito tabs only if there are incognito tabs. 165 // Enable close incognito tabs only if there are incognito tabs.
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
264 bookmarkMenuItem.setIcon(R.drawable.btn_star_filled); 255 bookmarkMenuItem.setIcon(R.drawable.btn_star_filled);
265 bookmarkMenuItem.setChecked(true); 256 bookmarkMenuItem.setChecked(true);
266 bookmarkMenuItem.setTitleCondensed(mActivity.getString(R.string.edit _bookmark)); 257 bookmarkMenuItem.setTitleCondensed(mActivity.getString(R.string.edit _bookmark));
267 } else { 258 } else {
268 bookmarkMenuItem.setIcon(R.drawable.btn_star); 259 bookmarkMenuItem.setIcon(R.drawable.btn_star);
269 bookmarkMenuItem.setChecked(false); 260 bookmarkMenuItem.setChecked(false);
270 bookmarkMenuItem.setTitleCondensed(null); 261 bookmarkMenuItem.setTitleCondensed(null);
271 } 262 }
272 } 263 }
273 } 264 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698