From 12be277710ff5ace6366e26fd564acd70b8ee2b7 Mon Sep 17 00:00:00 2001 From: "mazda@chromium.org" Date: Thu, 6 Dec 2012 23:58:58 +0000 Subject: [PATCH] Make Shift+Alt+S to show the system tray bubble. BUG=157983 Review URL: https://chromiumcodereview.appspot.com/11443026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171645 0039d316-1c4b-4281-b951-d872f2087c98 --- ash/accelerators/accelerator_controller.cc | 13 ++++--------- ash/accelerators/accelerator_table.cc | 3 ++- ash/accelerators/accelerator_table.h | 2 +- ash/wm/shelf_layout_manager_unittest.cc | 6 +++--- 4 files changed, 10 insertions(+), 14 deletions(-) diff --git a/ash/accelerators/accelerator_controller.cc b/ash/accelerators/accelerator_controller.cc index cd62a95656b0..5a6736639a16 100644 --- a/ash/accelerators/accelerator_controller.cc +++ b/ash/accelerators/accelerator_controller.cc @@ -623,15 +623,6 @@ bool AcceleratorController::PerformAction(int action, return HandleRotatePaneFocus(Shell::FORWARD); case FOCUS_PREVIOUS_PANE: return HandleRotatePaneFocus(Shell::BACKWARD); - case FOCUS_SYSTEM_TRAY: { - internal::StatusAreaWidget* status_area = - ash::Shell::GetInstance()->status_area_widget(); - if (status_area) { - return shell->focus_cycler()->FocusWidget( - status_area->system_tray()->GetWidget()); - } - break; - } case SHOW_KEYBOARD_OVERLAY: ash::Shell::GetInstance()->delegate()->ShowKeyboardOverlay(); return true; @@ -642,6 +633,10 @@ bool AcceleratorController::PerformAction(int action, return true; } break; + case SHOW_SYSTEM_TRAY_BUBBLE: + if (!shell->system_tray()->HasSystemBubble()) + shell->system_tray()->ShowDefaultView(BUBBLE_CREATE_NEW); + break; case SHOW_TASK_MANAGER: Shell::GetInstance()->delegate()->ShowTaskManager(); return true; diff --git a/ash/accelerators/accelerator_table.cc b/ash/accelerators/accelerator_table.cc index ee8772e201c8..c84c4094bb0c 100644 --- a/ash/accelerators/accelerator_table.cc +++ b/ash/accelerators/accelerator_table.cc @@ -115,7 +115,6 @@ const AcceleratorData kAcceleratorData[] = { { true, ui::VKEY_VOLUME_DOWN, ui::EF_NONE, VOLUME_DOWN }, { true, ui::VKEY_VOLUME_UP, ui::EF_NONE, VOLUME_UP }, { true, ui::VKEY_L, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, FOCUS_LAUNCHER }, - { true, ui::VKEY_S, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, FOCUS_SYSTEM_TRAY }, { true, ui::VKEY_HELP, ui::EF_NONE, SHOW_KEYBOARD_OVERLAY }, { true, ui::VKEY_OEM_2, ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN, SHOW_KEYBOARD_OVERLAY }, @@ -125,6 +124,8 @@ const AcceleratorData kAcceleratorData[] = { { true, ui::VKEY_F14, ui::EF_NONE, SHOW_KEYBOARD_OVERLAY }, { true, ui::VKEY_BROWSER_BACK, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN, SHOW_OAK }, + { true, ui::VKEY_S, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, + SHOW_SYSTEM_TRAY_BUBBLE }, { true, ui::VKEY_ESCAPE, ui::EF_SHIFT_DOWN, SHOW_TASK_MANAGER }, { true, ui::VKEY_1, ui::EF_ALT_DOWN, SELECT_WIN_0 }, { true, ui::VKEY_2, ui::EF_ALT_DOWN, SELECT_WIN_1 }, diff --git a/ash/accelerators/accelerator_table.h b/ash/accelerators/accelerator_table.h index 53492e9cf4ed..4747bdb77cbc 100644 --- a/ash/accelerators/accelerator_table.h +++ b/ash/accelerators/accelerator_table.h @@ -27,7 +27,6 @@ enum AcceleratorAction { FOCUS_LAUNCHER, FOCUS_NEXT_PANE, FOCUS_PREVIOUS_PANE, - FOCUS_SYSTEM_TRAY, KEYBOARD_BRIGHTNESS_DOWN, KEYBOARD_BRIGHTNESS_UP, LOCK_PRESSED, @@ -59,6 +58,7 @@ enum AcceleratorAction { SELECT_WIN_7, SHOW_KEYBOARD_OVERLAY, SHOW_OAK, + SHOW_SYSTEM_TRAY_BUBBLE, SHOW_TASK_MANAGER, SWAP_PRIMARY_DISPLAY, SWITCH_IME, // Switch to another IME depending on the accelerator. diff --git a/ash/wm/shelf_layout_manager_unittest.cc b/ash/wm/shelf_layout_manager_unittest.cc index b3df7c3e955c..6a3dad7ac420 100644 --- a/ash/wm/shelf_layout_manager_unittest.cc +++ b/ash/wm/shelf_layout_manager_unittest.cc @@ -822,12 +822,12 @@ TEST_F(ShelfLayoutManagerTest, ShelfFlickerOnTrayActivation) { EXPECT_EQ(SHELF_AUTO_HIDE, shelf->visibility_state()); EXPECT_EQ(SHELF_AUTO_HIDE_HIDDEN, shelf->auto_hide_state()); - // Focus the system tray. That should make the shelf visible again. + // Show the status menu. That should make the shelf visible again. Shell::GetInstance()->accelerator_controller()->PerformAction( - FOCUS_SYSTEM_TRAY, ui::Accelerator()); + SHOW_SYSTEM_TRAY_BUBBLE, ui::Accelerator()); EXPECT_EQ(SHELF_AUTO_HIDE, shelf->visibility_state()); EXPECT_EQ(SHELF_AUTO_HIDE_SHOWN, shelf->auto_hide_state()); - EXPECT_FALSE(Shell::GetInstance()->system_tray()->HasSystemBubble()); + EXPECT_TRUE(Shell::GetInstance()->system_tray()->HasSystemBubble()); // Now activate the tray (using the keyboard, instead of using the mouse to // make sure the mouse does not alter the auto-hide state in the shelf). -- 2.11.4.GIT