summaryrefslogtreecommitdiffstats
path: root/chrome/browser/ui/browser_command_controller_unittest.cc
diff options
context:
space:
mode:
authormsw@chromium.org <msw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-13 16:47:06 +0000
committermsw@chromium.org <msw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-13 16:47:06 +0000
commit338416c007a0aa0386d4ab83d60112f6f60d4013 (patch)
tree1850282b8073f04b069ba50a01b4a40064eab1a0 /chrome/browser/ui/browser_command_controller_unittest.cc
parent11f85951bcac785050a646368f5b418a97828f76 (diff)
downloadchromium_src-338416c007a0aa0386d4ab83d60112f6f60d4013.zip
chromium_src-338416c007a0aa0386d4ab83d60112f6f60d4013.tar.gz
chromium_src-338416c007a0aa0386d4ab83d60112f6f60d4013.tar.bz2
Support full-screen and single-profile avatar bubbles.
Enable IDC_SHOW_AVATAR_MENU for normal browser windows. (full-screen and single-profile windows are now allowed) (non-tabbed and incognito windows are still disallowed) Nix BrowserCommandController's use of ProfileManager. (no commands rely on the profile count anymore) Cleanup some BrowserCommandController code. Inline AvatarMenuButton::ShowAvatarBubble in BrowserView. (ShowAvatarBubbleFromAvatarButton needs to set an anchor) (single-profile windows have no avatar icon; use hotdogs) Anchor to the Chrome menu button in Mac single-profile too. Take an ArrowPaintType in AvatarMenuBubbleView::ShowBubble. (lets fullscreen hide the arrow, there's no visible anchor) (this corresponds with fullscreen bookmark bubble behavior) Remove a stale Windows Valgrind DrMemory test exclusion entry. (test name was changed, but the exclusion wasn't; isn't needed) BUG=255452,167014 TEST=The avatar menu shows for Ctrl+Shift+M even in fullscreen and even for single-profile Chrome windows. Test with and without the experimental --new-profile-management, and in LTR and RTL Chrome UI modes. R=pkasting@chromium.org, asvitkine@chromium.org Review URL: https://codereview.chromium.org/264303006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270126 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/ui/browser_command_controller_unittest.cc')
-rw-r--r--chrome/browser/ui/browser_command_controller_unittest.cc52
1 files changed, 16 insertions, 36 deletions
diff --git a/chrome/browser/ui/browser_command_controller_unittest.cc b/chrome/browser/ui/browser_command_controller_unittest.cc
index b080e71..1b0eb27 100644
--- a/chrome/browser/ui/browser_command_controller_unittest.cc
+++ b/chrome/browser/ui/browser_command_controller_unittest.cc
@@ -171,7 +171,7 @@ TEST_F(BrowserCommandControllerTest, AppFullScreen) {
EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_FULLSCREEN));
}
-TEST_F(BrowserCommandControllerTest, OldAvatarMenuDisabledWhenOnlyOneProfile) {
+TEST_F(BrowserCommandControllerTest, OldAvatarMenuEnabledForOneOrMoreProfiles) {
#if defined(OS_CHROMEOS)
// TODO(nkostylev): Cleanup this code once multi-profiles are enabled by
// default on CrOS. http://crbug.com/351655
@@ -188,26 +188,26 @@ TEST_F(BrowserCommandControllerTest, OldAvatarMenuDisabledWhenOnlyOneProfile) {
ASSERT_TRUE(testing_profile_manager.SetUp());
ProfileManager* profile_manager = testing_profile_manager.profile_manager();
- chrome::BrowserCommandController command_controller(browser(),
- profile_manager);
+ chrome::BrowserCommandController command_controller(browser());
const CommandUpdater* command_updater = command_controller.command_updater();
+ bool enabled = true;
+#if defined(OS_CHROMEOS)
+ // Chrome OS uses system tray menu to handle multi-profiles.
+ enabled = false;
+#endif
+
testing_profile_manager.CreateTestingProfile("p1");
ASSERT_EQ(1U, profile_manager->GetNumberOfProfiles());
- EXPECT_FALSE(command_updater->IsCommandEnabled(IDC_SHOW_AVATAR_MENU));
+ EXPECT_EQ(enabled, command_updater->IsCommandEnabled(IDC_SHOW_AVATAR_MENU));
testing_profile_manager.CreateTestingProfile("p2");
ASSERT_EQ(2U, profile_manager->GetNumberOfProfiles());
-#if defined(OS_CHROMEOS)
- // Chrome OS uses system tray menu to handle multi-profiles.
- EXPECT_FALSE(command_updater->IsCommandEnabled(IDC_SHOW_AVATAR_MENU));
-#else
- EXPECT_TRUE(command_updater->IsCommandEnabled(IDC_SHOW_AVATAR_MENU));
-#endif
+ EXPECT_EQ(enabled, command_updater->IsCommandEnabled(IDC_SHOW_AVATAR_MENU));
testing_profile_manager.DeleteTestingProfile("p1");
ASSERT_EQ(1U, profile_manager->GetNumberOfProfiles());
- EXPECT_FALSE(command_updater->IsCommandEnabled(IDC_SHOW_AVATAR_MENU));
+ EXPECT_EQ(enabled, command_updater->IsCommandEnabled(IDC_SHOW_AVATAR_MENU));
testing_profile_manager.DeleteTestingProfile("p2");
}
@@ -232,8 +232,7 @@ TEST_F(BrowserCommandControllerTest, NewAvatarMenuEnabledWhenOnlyOneProfile) {
ASSERT_TRUE(testing_profile_manager.SetUp());
ProfileManager* profile_manager = testing_profile_manager.profile_manager();
- chrome::BrowserCommandController command_controller(browser(),
- profile_manager);
+ chrome::BrowserCommandController command_controller(browser());
const CommandUpdater* command_updater = command_controller.command_updater();
testing_profile_manager.CreateTestingProfile("p1");
@@ -265,7 +264,6 @@ TEST_F(BrowserCommandControllerTest, NewAvatarMenuEnabledInGuestMode) {
TestingProfileManager testing_profile_manager(
TestingBrowserProcess::GetGlobal());
ASSERT_TRUE(testing_profile_manager.SetUp());
- ProfileManager* profile_manager = testing_profile_manager.profile_manager();
// Set up guest a profile.
TestingProfile::Builder guest_builder;
@@ -281,8 +279,7 @@ TEST_F(BrowserCommandControllerTest, NewAvatarMenuEnabledInGuestMode) {
chrome::GetActiveDesktop());
scoped_ptr<Browser> guest_browser(
chrome::CreateBrowserWithTestWindowForParams(&profile_params));
- chrome::BrowserCommandController command_controller(guest_browser.get(),
- profile_manager);
+ chrome::BrowserCommandController command_controller(guest_browser.get());
const CommandUpdater* command_updater = command_controller.command_updater();
#if defined(OS_CHROMEOS)
// Chrome OS uses system tray menu to handle multi-profiles.
@@ -302,10 +299,6 @@ TEST_F(BrowserCommandControllerTest, AvatarMenuAlwaysDisabledInIncognitoMode) {
if (!profiles::IsMultipleProfilesEnabled())
return;
- TestingProfileManager testing_profile_manager(
- TestingBrowserProcess::GetGlobal());
- ASSERT_TRUE(testing_profile_manager.SetUp());
-
// Set up a profile with an off the record profile.
TestingProfile::Builder normal_builder;
scoped_ptr<TestingProfile> original_profile = normal_builder.Build();
@@ -316,9 +309,7 @@ TEST_F(BrowserCommandControllerTest, AvatarMenuAlwaysDisabledInIncognitoMode) {
scoped_ptr<Browser> otr_browser(
chrome::CreateBrowserWithTestWindowForParams(&profile_params));
- ProfileManager* profile_manager = testing_profile_manager.profile_manager();
- chrome::BrowserCommandController command_controller(otr_browser.get(),
- profile_manager);
+ chrome::BrowserCommandController command_controller(otr_browser.get());
const CommandUpdater* command_updater = command_controller.command_updater();
// The old style avatar menu should be disabled.
@@ -465,10 +456,6 @@ TEST_F(BrowserCommandControllerFullscreenTest,
}
TEST_F(BrowserCommandControllerTest, IncognitoModeOnSigninAllowedPrefChange) {
- TestingProfileManager testing_profile_manager(
- TestingBrowserProcess::GetGlobal());
- ASSERT_TRUE(testing_profile_manager.SetUp());
-
// Set up a profile with an off the record profile.
TestingProfile::Builder builder;
builder.SetIncognito();
@@ -485,9 +472,7 @@ TEST_F(BrowserCommandControllerTest, IncognitoModeOnSigninAllowedPrefChange) {
scoped_ptr<Browser> browser2(
chrome::CreateBrowserWithTestWindowForParams(&profile_params));
- ProfileManager* profile_manager = testing_profile_manager.profile_manager();
- chrome::BrowserCommandController command_controller(browser2.get(),
- profile_manager);
+ chrome::BrowserCommandController command_controller(browser2.get());
const CommandUpdater* command_updater = command_controller.command_updater();
// Check that the SYNC_SETUP command is updated on preference change.
@@ -497,12 +482,7 @@ TEST_F(BrowserCommandControllerTest, IncognitoModeOnSigninAllowedPrefChange) {
}
TEST_F(BrowserCommandControllerTest, OnSigninAllowedPrefChange) {
- TestingProfileManager testing_profile_manager(
- TestingBrowserProcess::GetGlobal());
- ASSERT_TRUE(testing_profile_manager.SetUp());
- ProfileManager* profile_manager = testing_profile_manager.profile_manager();
- chrome::BrowserCommandController command_controller(browser(),
- profile_manager);
+ chrome::BrowserCommandController command_controller(browser());
const CommandUpdater* command_updater = command_controller.command_updater();
// Check that the SYNC_SETUP command is updated on preference change.