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

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: . 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::UseAlternateSendFeedbackLocation()) {
206 AddSeparator(ui::NORMAL_SEPARATOR); 208 AddItemWithStringId(IDC_FEEDBACK,
209 chrome::GetSendFeedbackMenuLabelID());
210 AddSeparator(ui::NORMAL_SEPARATOR);
211 }
212 #else
213 if (chrome::UseAlternateSendFeedbackLocation()) {
214 AddItemWithStringId(IDC_FEEDBACK,
215 chrome::GetSendFeedbackMenuLabelID());
216 AddSeparator(ui::NORMAL_SEPARATOR);
217 }
207 #endif 218 #endif
208 219
209 encoding_menu_model_.reset(new EncodingMenuModel(browser)); 220 encoding_menu_model_.reset(new EncodingMenuModel(browser));
210 AddSubMenuWithStringId(IDC_ENCODING_MENU, IDS_ENCODING_MENU, 221 AddSubMenuWithStringId(IDC_ENCODING_MENU, IDS_ENCODING_MENU,
211 encoding_menu_model_.get()); 222 encoding_menu_model_.get());
212 AddItemWithStringId(IDC_VIEW_SOURCE, IDS_VIEW_SOURCE); 223 AddItemWithStringId(IDC_VIEW_SOURCE, IDS_VIEW_SOURCE);
213 AddItemWithStringId(IDC_DEV_TOOLS, IDS_DEV_TOOLS); 224 AddItemWithStringId(IDC_DEV_TOOLS, IDS_DEV_TOOLS);
214 AddItemWithStringId(IDC_DEV_TOOLS_CONSOLE, IDS_DEV_TOOLS_CONSOLE); 225 AddItemWithStringId(IDC_DEV_TOOLS_CONSOLE, IDS_DEV_TOOLS_CONSOLE);
215 226
216 #if defined(ENABLE_PROFILING) && !defined(NO_TCMALLOC) 227 #if defined(ENABLE_PROFILING) && !defined(NO_TCMALLOC)
(...skipping 386 matching lines...) Expand 10 before | Expand all | Expand 10 after
603 if (!is_new_menu) { 614 if (!is_new_menu) {
604 AddItemWithStringId(IDC_HELP_PAGE_VIA_MENU, IDS_HELP_PAGE); 615 AddItemWithStringId(IDC_HELP_PAGE_VIA_MENU, IDS_HELP_PAGE);
605 616
606 if (browser_defaults::kShowHelpMenuItemIcon) { 617 if (browser_defaults::kShowHelpMenuItemIcon) {
607 ui::ResourceBundle& rb = ResourceBundle::GetSharedInstance(); 618 ui::ResourceBundle& rb = ResourceBundle::GetSharedInstance();
608 SetIcon(GetIndexOfCommandId(IDC_HELP_PAGE_VIA_MENU), 619 SetIcon(GetIndexOfCommandId(IDC_HELP_PAGE_VIA_MENU),
609 rb.GetNativeImageNamed(IDR_HELP_MENU)); 620 rb.GetNativeImageNamed(IDR_HELP_MENU));
610 } 621 }
611 } 622 }
612 623
613 if (browser_defaults::kShowFeedbackMenuItem) 624 if (browser_defaults::kShowFeedbackMenuItem &&
614 AddItemWithStringId(IDC_FEEDBACK, IDS_FEEDBACK); 625 !chrome::UseAlternateSendFeedbackLocation()) {
626 AddItemWithStringId(IDC_FEEDBACK,
627 chrome::GetSendFeedbackMenuLabelID());
628 }
615 629
616 AddGlobalErrorMenuItems(); 630 AddGlobalErrorMenuItems();
617 631
618 if (is_new_menu) { 632 if (is_new_menu) {
619 AddSubMenuWithStringId(IDC_ZOOM_MENU, IDS_MORE_TOOLS_MENU, 633 AddSubMenuWithStringId(IDC_ZOOM_MENU, IDS_MORE_TOOLS_MENU,
620 tools_menu_model_.get()); 634 tools_menu_model_.get());
621 } 635 }
622 636
623 bool show_exit_menu = browser_defaults::kShowExitMenuItem; 637 bool show_exit_menu = browser_defaults::kShowExitMenuItem;
624 #if defined(OS_WIN) && defined(USE_AURA) 638 #if defined(OS_WIN) && defined(USE_AURA)
625 if (browser_->host_desktop_type() == chrome::HOST_DESKTOP_TYPE_ASH) 639 if (browser_->host_desktop_type() == chrome::HOST_DESKTOP_TYPE_ASH)
626 show_exit_menu = false; 640 show_exit_menu = false;
627 #endif 641 #endif
628 if (show_exit_menu) { 642 if (show_exit_menu)
629 AddSeparator(ui::NORMAL_SEPARATOR); 643 AddSeparator(ui::NORMAL_SEPARATOR);
644
645 #if !defined(OS_CHROMEOS)
646 // For Send Feedback Link experiment (crbug.com/169339).
647 if (chrome::UseAlternateSendFeedbackLocation()) {
648 AddItemWithStringId(IDC_FEEDBACK,
649 chrome::GetSendFeedbackMenuLabelID());
650 AddSeparator(ui::NORMAL_SEPARATOR);
651 }
652 #endif
653
654 if (show_exit_menu)
630 AddItemWithStringId(IDC_EXIT, IDS_EXIT); 655 AddItemWithStringId(IDC_EXIT, IDS_EXIT);
631 }
632 656
633 if (is_new_menu && supports_new_separators && 657 if (is_new_menu && supports_new_separators &&
634 !ui::NativeTheme::IsNewMenuStyleEnabled()) { 658 !ui::NativeTheme::IsNewMenuStyleEnabled()) {
635 AddSeparator(ui::SPACING_SEPARATOR); 659 AddSeparator(ui::SPACING_SEPARATOR);
636 } 660 }
637 } 661 }
638 662
639 void WrenchMenuModel::AddGlobalErrorMenuItems() { 663 void WrenchMenuModel::AddGlobalErrorMenuItems() {
640 // TODO(sail): Currently we only build the wrench menu once per browser 664 // 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 665 // 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); 748 &enable_increment, &enable_decrement);
725 } 749 }
726 zoom_label_ = l10n_util::GetStringFUTF16( 750 zoom_label_ = l10n_util::GetStringFUTF16(
727 IDS_ZOOM_PERCENT, base::IntToString16(zoom_percent)); 751 IDS_ZOOM_PERCENT, base::IntToString16(zoom_percent));
728 } 752 }
729 753
730 void WrenchMenuModel::OnZoomLevelChanged( 754 void WrenchMenuModel::OnZoomLevelChanged(
731 const content::HostZoomMap::ZoomLevelChange& change) { 755 const content::HostZoomMap::ZoomLevelChange& change) {
732 UpdateZoomControls(); 756 UpdateZoomControls();
733 } 757 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/send_feedback_experiment.cc ('k') | chrome/browser/ui/webui/help/help_handler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698