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

Side by Side Diff: chrome/browser/ui/toolbar/wrench_menu_model.cc

Issue 12490012: Send Feedback Experiment (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: -static Created 7 years, 9 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #include "chrome/browser/ui/toolbar/wrench_menu_model.h" 5 #include "chrome/browser/ui/toolbar/wrench_menu_model.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <cmath> 8 #include <cmath>
9 9
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 12 matching lines...) Expand all
23 #include "chrome/browser/signin/signin_manager_factory.h" 23 #include "chrome/browser/signin/signin_manager_factory.h"
24 #include "chrome/browser/signin/signin_ui_util.h" 24 #include "chrome/browser/signin/signin_ui_util.h"
25 #include "chrome/browser/task_manager/task_manager.h" 25 #include "chrome/browser/task_manager/task_manager.h"
26 #include "chrome/browser/ui/browser.h" 26 #include "chrome/browser/ui/browser.h"
27 #include "chrome/browser/ui/browser_commands.h" 27 #include "chrome/browser/ui/browser_commands.h"
28 #include "chrome/browser/ui/browser_finder.h" 28 #include "chrome/browser/ui/browser_finder.h"
29 #include "chrome/browser/ui/browser_window.h" 29 #include "chrome/browser/ui/browser_window.h"
30 #include "chrome/browser/ui/global_error/global_error.h" 30 #include "chrome/browser/ui/global_error/global_error.h"
31 #include "chrome/browser/ui/global_error/global_error_service.h" 31 #include "chrome/browser/ui/global_error/global_error_service.h"
32 #include "chrome/browser/ui/global_error/global_error_service_factory.h" 32 #include "chrome/browser/ui/global_error/global_error_service_factory.h"
33 #include "chrome/browser/ui/send_feedback_experiment.h"
33 #include "chrome/browser/ui/tabs/tab_strip_model.h" 34 #include "chrome/browser/ui/tabs/tab_strip_model.h"
34 #include "chrome/browser/ui/toolbar/bookmark_sub_menu_model.h" 35 #include "chrome/browser/ui/toolbar/bookmark_sub_menu_model.h"
35 #include "chrome/browser/ui/toolbar/encoding_menu_controller.h" 36 #include "chrome/browser/ui/toolbar/encoding_menu_controller.h"
36 #include "chrome/browser/ui/toolbar/recent_tabs_sub_menu_model.h" 37 #include "chrome/browser/ui/toolbar/recent_tabs_sub_menu_model.h"
37 #include "chrome/browser/upgrade_detector.h" 38 #include "chrome/browser/upgrade_detector.h"
38 #include "chrome/common/chrome_paths.h" 39 #include "chrome/common/chrome_paths.h"
39 #include "chrome/common/chrome_switches.h" 40 #include "chrome/common/chrome_switches.h"
40 #include "chrome/common/pref_names.h" 41 #include "chrome/common/pref_names.h"
41 #include "chrome/common/profiling.h" 42 #include "chrome/common/profiling.h"
42 #include "content/public/browser/host_zoom_map.h" 43 #include "content/public/browser/host_zoom_map.h"
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 // state. 79 // state.
79 string16 GetUpgradeDialogMenuItemName() { 80 string16 GetUpgradeDialogMenuItemName() {
80 if (UpgradeDetector::GetInstance()->is_outdated_install()) { 81 if (UpgradeDetector::GetInstance()->is_outdated_install()) {
81 return l10n_util::GetStringFUTF16( 82 return l10n_util::GetStringFUTF16(
82 IDS_UPGRADE_BUBBLE_MENU_ITEM, 83 IDS_UPGRADE_BUBBLE_MENU_ITEM,
83 l10n_util::GetStringUTF16(IDS_SHORT_PRODUCT_NAME)); 84 l10n_util::GetStringUTF16(IDS_SHORT_PRODUCT_NAME));
84 } else { 85 } else {
85 return l10n_util::GetStringUTF16(IDS_UPDATE_NOW); 86 return l10n_util::GetStringUTF16(IDS_UPDATE_NOW);
86 } 87 }
87 } 88 }
89
88 } // namespace 90 } // namespace
89 91
90 //////////////////////////////////////////////////////////////////////////////// 92 ////////////////////////////////////////////////////////////////////////////////
91 // EncodingMenuModel 93 // EncodingMenuModel
92 94
93 EncodingMenuModel::EncodingMenuModel(Browser* browser) 95 EncodingMenuModel::EncodingMenuModel(Browser* browser)
94 : ALLOW_THIS_IN_INITIALIZER_LIST(ui::SimpleMenuModel(this)), 96 : ALLOW_THIS_IN_INITIALIZER_LIST(ui::SimpleMenuModel(this)),
95 browser_(browser) { 97 browser_(browser) {
96 Build(); 98 Build();
97 } 99 }
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
195 197
196 if (chrome::CanOpenTaskManager()) 198 if (chrome::CanOpenTaskManager())
197 AddItemWithStringId(IDC_TASK_MANAGER, IDS_TASK_MANAGER); 199 AddItemWithStringId(IDC_TASK_MANAGER, IDS_TASK_MANAGER);
198 200
199 AddItemWithStringId(IDC_CLEAR_BROWSING_DATA, IDS_CLEAR_BROWSING_DATA); 201 AddItemWithStringId(IDC_CLEAR_BROWSING_DATA, IDS_CLEAR_BROWSING_DATA);
200 202
201 AddSeparator(ui::NORMAL_SEPARATOR); 203 AddSeparator(ui::NORMAL_SEPARATOR);
202 204
203 #if !defined(OS_CHROMEOS) 205 #if !defined(OS_CHROMEOS)
204 // Show IDC_FEEDBACK in "Tools" menu for non-ChromeOS platforms. 206 // Show IDC_FEEDBACK in "Tools" menu for non-ChromeOS platforms.
205 AddItemWithStringId(IDC_FEEDBACK, IDS_FEEDBACK); 207 if (!chrome::send_feedback_experiment::UseAlternateLocation()) {
206 AddSeparator(ui::NORMAL_SEPARATOR); 208 AddItemWithStringId(IDC_FEEDBACK,
209 chrome::send_feedback_experiment::UseAlternateText() ?
210 IDS_FEEDBACK_ALT : IDS_FEEDBACK);
sky 2013/03/15 23:23:42 indent 4 (same on 217)
Harry McCleave 2013/03/19 03:11:32 Done.
211 AddSeparator(ui::NORMAL_SEPARATOR);
212 }
213 #else
214 if (chrome::send_feedback_experiment::UseAlternateLocation()) {
215 AddItemWithStringId(IDC_FEEDBACK,
216 chrome::send_feedback_experiment::UseAlternateText() ?
217 IDS_FEEDBACK_ALT : IDS_FEEDBACK);
218 AddSeparator(ui::NORMAL_SEPARATOR);
219 }
207 #endif 220 #endif
208 221
209 encoding_menu_model_.reset(new EncodingMenuModel(browser)); 222 encoding_menu_model_.reset(new EncodingMenuModel(browser));
210 AddSubMenuWithStringId(IDC_ENCODING_MENU, IDS_ENCODING_MENU, 223 AddSubMenuWithStringId(IDC_ENCODING_MENU, IDS_ENCODING_MENU,
211 encoding_menu_model_.get()); 224 encoding_menu_model_.get());
212 AddItemWithStringId(IDC_VIEW_SOURCE, IDS_VIEW_SOURCE); 225 AddItemWithStringId(IDC_VIEW_SOURCE, IDS_VIEW_SOURCE);
213 AddItemWithStringId(IDC_DEV_TOOLS, IDS_DEV_TOOLS); 226 AddItemWithStringId(IDC_DEV_TOOLS, IDS_DEV_TOOLS);
214 AddItemWithStringId(IDC_DEV_TOOLS_CONSOLE, IDS_DEV_TOOLS_CONSOLE); 227 AddItemWithStringId(IDC_DEV_TOOLS_CONSOLE, IDS_DEV_TOOLS_CONSOLE);
215 228
216 #if defined(ENABLE_PROFILING) && !defined(NO_TCMALLOC) 229 #if defined(ENABLE_PROFILING) && !defined(NO_TCMALLOC)
(...skipping 386 matching lines...) Expand 10 before | Expand all | Expand 10 after
603 if (!is_new_menu) { 616 if (!is_new_menu) {
604 AddItemWithStringId(IDC_HELP_PAGE_VIA_MENU, IDS_HELP_PAGE); 617 AddItemWithStringId(IDC_HELP_PAGE_VIA_MENU, IDS_HELP_PAGE);
605 618
606 if (browser_defaults::kShowHelpMenuItemIcon) { 619 if (browser_defaults::kShowHelpMenuItemIcon) {
607 ui::ResourceBundle& rb = ResourceBundle::GetSharedInstance(); 620 ui::ResourceBundle& rb = ResourceBundle::GetSharedInstance();
608 SetIcon(GetIndexOfCommandId(IDC_HELP_PAGE_VIA_MENU), 621 SetIcon(GetIndexOfCommandId(IDC_HELP_PAGE_VIA_MENU),
609 rb.GetNativeImageNamed(IDR_HELP_MENU)); 622 rb.GetNativeImageNamed(IDR_HELP_MENU));
610 } 623 }
611 } 624 }
612 625
613 if (browser_defaults::kShowFeedbackMenuItem) 626 if (browser_defaults::kShowFeedbackMenuItem &&
614 AddItemWithStringId(IDC_FEEDBACK, IDS_FEEDBACK); 627 !chrome::send_feedback_experiment::UseAlternateLocation()) {
628 AddItemWithStringId(IDC_FEEDBACK,
629 chrome::send_feedback_experiment::UseAlternateText() ?
630 IDS_FEEDBACK_ALT : IDS_FEEDBACK);
631 }
615 632
616 AddGlobalErrorMenuItems(); 633 AddGlobalErrorMenuItems();
617 634
618 if (is_new_menu) { 635 if (is_new_menu) {
619 AddSubMenuWithStringId(IDC_ZOOM_MENU, IDS_MORE_TOOLS_MENU, 636 AddSubMenuWithStringId(IDC_ZOOM_MENU, IDS_MORE_TOOLS_MENU,
620 tools_menu_model_.get()); 637 tools_menu_model_.get());
621 } 638 }
622 639
623 bool show_exit_menu = browser_defaults::kShowExitMenuItem; 640 if (browser_defaults::kShowExitMenuItem)
624 #if defined(OS_WIN) && defined(USE_AURA) 641 AddSeparator(ui::NORMAL_SEPARATOR);
625 if (browser_->host_desktop_type() == chrome::HOST_DESKTOP_TYPE_ASH) 642
626 show_exit_menu = false; 643 #if !defined(OS_CHROMEOS)
644 // For Send Feedback Link experiment (crbug.com/169339).
645 if (chrome::send_feedback_experiment::UseAlternateLocation()) {
646 AddItemWithStringId(IDC_FEEDBACK,
647 chrome::send_feedback_experiment::UseAlternateText() ?
sky 2013/03/15 23:23:42 You have this text four times, how about a GetAlte
Harry McCleave 2013/03/19 03:11:32 Done.
648 IDS_FEEDBACK_ALT : IDS_FEEDBACK);
649 AddSeparator(ui::NORMAL_SEPARATOR);
650 }
627 #endif 651 #endif
628 if (show_exit_menu) { 652
629 AddSeparator(ui::NORMAL_SEPARATOR); 653 if (browser_defaults::kShowExitMenuItem)
sky 2013/03/15 23:23:42 Doesn't this miss the logic on 625 old?
Harry McCleave 2013/03/19 03:11:32 Ah re-base my old nemesis (done).
630 AddItemWithStringId(IDC_EXIT, IDS_EXIT); 654 AddItemWithStringId(IDC_EXIT, IDS_EXIT);
631 }
632 655
633 if (is_new_menu && supports_new_separators && 656 if (is_new_menu && supports_new_separators &&
634 !ui::NativeTheme::IsNewMenuStyleEnabled()) { 657 !ui::NativeTheme::IsNewMenuStyleEnabled()) {
635 AddSeparator(ui::SPACING_SEPARATOR); 658 AddSeparator(ui::SPACING_SEPARATOR);
636 } 659 }
637 } 660 }
638 661
639 void WrenchMenuModel::AddGlobalErrorMenuItems() { 662 void WrenchMenuModel::AddGlobalErrorMenuItems() {
640 // TODO(sail): Currently we only build the wrench menu once per browser 663 // TODO(sail): Currently we only build the wrench menu once per browser
641 // window. This means that if a new error is added after the menu is built 664 // window. This means that if a new error is added after the menu is built
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
724 &enable_increment, &enable_decrement); 747 &enable_increment, &enable_decrement);
725 } 748 }
726 zoom_label_ = l10n_util::GetStringFUTF16( 749 zoom_label_ = l10n_util::GetStringFUTF16(
727 IDS_ZOOM_PERCENT, base::IntToString16(zoom_percent)); 750 IDS_ZOOM_PERCENT, base::IntToString16(zoom_percent));
728 } 751 }
729 752
730 void WrenchMenuModel::OnZoomLevelChanged( 753 void WrenchMenuModel::OnZoomLevelChanged(
731 const content::HostZoomMap::ZoomLevelChange& change) { 754 const content::HostZoomMap::ZoomLevelChange& change) {
732 UpdateZoomControls(); 755 UpdateZoomControls();
733 } 756 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698