Index: ash/accelerators/accelerator_table.cc |
diff --git a/ash/accelerators/accelerator_table.cc b/ash/accelerators/accelerator_table.cc |
index 88e2ccd5a56b1aa4b0835498482a2aa7ba5ce9ed..225ad90b49f256a19176212baa9fbfd8502a9352 100644 |
--- a/ash/accelerators/accelerator_table.cc |
+++ b/ash/accelerators/accelerator_table.cc |
@@ -5,73 +5,80 @@ |
#include "ash/accelerators/accelerator_table.h" |
#include "base/basictypes.h" |
+#include "ui/base/events.h" |
namespace ash { |
const AcceleratorData kAcceleratorData[] = { |
- // trigger_on_press, KeyboardCode, shift, control, alt, AcceleratorAction |
- |
- { false, ui::VKEY_MENU, true, false, true, NEXT_IME }, |
- { false, ui::VKEY_SHIFT, true, false, true, NEXT_IME }, |
- { true, ui::VKEY_SPACE, false, true, false, PREVIOUS_IME }, |
+ { false, ui::VKEY_MENU, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, NEXT_IME }, |
+ { false, ui::VKEY_SHIFT, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, NEXT_IME }, |
+ { true, ui::VKEY_SPACE, ui::EF_CONTROL_DOWN, PREVIOUS_IME }, |
// Shortcuts for Japanese IME. |
- { true, ui::VKEY_CONVERT, false, false, false, SWITCH_IME }, |
- { true, ui::VKEY_NONCONVERT, false, false, false, SWITCH_IME }, |
- { true, ui::VKEY_DBE_SBCSCHAR, false, false, false, SWITCH_IME }, |
- { true, ui::VKEY_DBE_DBCSCHAR, false, false, false, SWITCH_IME }, |
+ { true, ui::VKEY_CONVERT, ui::EF_NONE, SWITCH_IME }, |
+ { true, ui::VKEY_NONCONVERT, ui::EF_NONE, SWITCH_IME }, |
+ { true, ui::VKEY_DBE_SBCSCHAR, ui::EF_NONE, SWITCH_IME }, |
+ { true, ui::VKEY_DBE_DBCSCHAR, ui::EF_NONE, SWITCH_IME }, |
// Shortcuts for Koren IME. |
- { true, ui::VKEY_HANGUL, false, false, false, SWITCH_IME }, |
- { true, ui::VKEY_SPACE, true, false, false, SWITCH_IME }, |
+ { true, ui::VKEY_HANGUL, ui::EF_NONE, SWITCH_IME }, |
+ { true, ui::VKEY_SPACE, ui::EF_SHIFT_DOWN, SWITCH_IME }, |
- { true, ui::VKEY_TAB, false, false, true, CYCLE_FORWARD_MRU }, |
- { true, ui::VKEY_TAB, true, false, true, CYCLE_BACKWARD_MRU }, |
- { true, ui::VKEY_F5, false, false, false, CYCLE_FORWARD_LINEAR }, |
+ { true, ui::VKEY_TAB, |
+ ui::EF_ALT_DOWN, CYCLE_FORWARD_MRU }, |
+ { true, ui::VKEY_TAB, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, |
+ CYCLE_BACKWARD_MRU }, |
+ { true, ui::VKEY_F5, ui::EF_NONE, CYCLE_FORWARD_LINEAR }, |
#if defined(OS_CHROMEOS) |
- { true, ui::VKEY_BRIGHTNESS_DOWN, false, false, false, BRIGHTNESS_DOWN }, |
- { true, ui::VKEY_BRIGHTNESS_UP, false, false, false, BRIGHTNESS_UP }, |
- { true, ui::VKEY_L, true, true, false, LOCK_SCREEN }, |
- { true, ui::VKEY_M, false, true, false, OPEN_FILE_MANAGER }, |
- { true, ui::VKEY_T, false, true, true, OPEN_CROSH }, |
+ { true, ui::VKEY_BRIGHTNESS_DOWN, ui::EF_NONE, BRIGHTNESS_DOWN }, |
+ { true, ui::VKEY_BRIGHTNESS_UP, ui::EF_NONE, BRIGHTNESS_UP }, |
+ { true, ui::VKEY_L, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN, LOCK_SCREEN }, |
+ { true, ui::VKEY_M, ui::EF_CONTROL_DOWN, OPEN_FILE_MANAGER }, |
+ { true, ui::VKEY_T, ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN, OPEN_CROSH }, |
#endif |
- { true, ui::VKEY_Q, true, true, false, EXIT }, |
- { true, ui::VKEY_Z, false, true, true, TOGGLE_SPOKEN_FEEDBACK }, |
+ { true, ui::VKEY_Q, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN, EXIT }, |
+ { true, ui::VKEY_Z, ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN, |
+ TOGGLE_SPOKEN_FEEDBACK }, |
// When you change the shortcut for NEW_INCOGNITO_WINDOW or NEW_WINDOW, |
// you also need to modify ToolbarView::GetAcceleratorForCommandId() in |
// chrome/browser/ui/views/toolbar_view.cc. |
- { true, ui::VKEY_N, true, true, false, NEW_INCOGNITO_WINDOW }, |
- { true, ui::VKEY_N, false, true, false, NEW_WINDOW }, |
+ { true, ui::VKEY_N, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN, |
+ NEW_INCOGNITO_WINDOW }, |
+ { true, ui::VKEY_N, ui::EF_CONTROL_DOWN, NEW_WINDOW }, |
- { true, ui::VKEY_F5, true, false, false, CYCLE_BACKWARD_LINEAR }, |
- { true, ui::VKEY_F5, false, true, false, TAKE_SCREENSHOT }, |
- { true, ui::VKEY_F5, true, true, false, TAKE_PARTIAL_SCREENSHOT }, |
- { true, ui::VKEY_PRINT, false, false, false, TAKE_SCREENSHOT }, |
+ { true, ui::VKEY_F5, ui::EF_SHIFT_DOWN, CYCLE_BACKWARD_LINEAR }, |
+ { true, ui::VKEY_F5, ui::EF_CONTROL_DOWN, TAKE_SCREENSHOT }, |
+ { true, ui::VKEY_F5, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN, |
+ TAKE_PARTIAL_SCREENSHOT }, |
+ { true, ui::VKEY_PRINT, ui::EF_NONE, TAKE_SCREENSHOT }, |
// On Chrome OS, Search key is mapped to LWIN. |
- { true, ui::VKEY_LWIN, false, false, false, SEARCH_KEY }, |
- { true, ui::VKEY_LWIN, false, true, false, TOGGLE_APP_LIST }, |
- { true, ui::VKEY_LWIN, true, false, false, TOGGLE_CAPS_LOCK }, |
- { true, ui::VKEY_F6, false, false, false, BRIGHTNESS_DOWN }, |
- { true, ui::VKEY_F7, false, false, false, BRIGHTNESS_UP }, |
- { true, ui::VKEY_F8, false, false, false, VOLUME_MUTE }, |
- { true, ui::VKEY_VOLUME_MUTE, false, false, false, VOLUME_MUTE }, |
- { true, ui::VKEY_F9, false, false, false, VOLUME_DOWN }, |
- { true, ui::VKEY_VOLUME_DOWN, false, false, false, VOLUME_DOWN }, |
- { true, ui::VKEY_F10, false, false, false, VOLUME_UP }, |
- { true, ui::VKEY_VOLUME_UP, false, false, false, VOLUME_UP }, |
- { true, ui::VKEY_L, true, false, true, FOCUS_LAUNCHER }, |
- { true, ui::VKEY_S, true, false, true, FOCUS_TRAY }, |
- { true, ui::VKEY_OEM_2, false, true, true, SHOW_KEYBOARD_OVERLAY }, |
- { true, ui::VKEY_OEM_2, true, true, true, SHOW_KEYBOARD_OVERLAY }, |
- { true, ui::VKEY_F1, true, true, false, SHOW_OAK }, |
- { true, ui::VKEY_1, false, false, true, SELECT_WIN_0 }, |
- { true, ui::VKEY_2, false, false, true, SELECT_WIN_1 }, |
- { true, ui::VKEY_3, false, false, true, SELECT_WIN_2 }, |
- { true, ui::VKEY_4, false, false, true, SELECT_WIN_3 }, |
- { true, ui::VKEY_5, false, false, true, SELECT_WIN_4 }, |
- { true, ui::VKEY_6, false, false, true, SELECT_WIN_5 }, |
- { true, ui::VKEY_7, false, false, true, SELECT_WIN_6 }, |
- { true, ui::VKEY_8, false, false, true, SELECT_WIN_7 }, |
- { true, ui::VKEY_9, false, false, true, SELECT_LAST_WIN }, |
+ { true, ui::VKEY_LWIN, ui::EF_NONE, SEARCH_KEY }, |
+ { true, ui::VKEY_LWIN, ui::EF_CONTROL_DOWN, TOGGLE_APP_LIST }, |
+ { true, ui::VKEY_LWIN, ui::EF_SHIFT_DOWN, TOGGLE_CAPS_LOCK }, |
+ { true, ui::VKEY_F6, ui::EF_NONE, BRIGHTNESS_DOWN }, |
+ { true, ui::VKEY_F7, ui::EF_NONE, BRIGHTNESS_UP }, |
+ { true, ui::VKEY_F8, ui::EF_NONE, VOLUME_MUTE }, |
+ { true, ui::VKEY_VOLUME_MUTE, ui::EF_NONE, VOLUME_MUTE }, |
+ { true, ui::VKEY_F9, ui::EF_NONE, VOLUME_DOWN }, |
+ { true, ui::VKEY_VOLUME_DOWN, ui::EF_NONE, VOLUME_DOWN }, |
+ { true, ui::VKEY_F10, ui::EF_NONE, VOLUME_UP }, |
+ { 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_TRAY }, |
+ { true, ui::VKEY_OEM_2, ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN, |
+ SHOW_KEYBOARD_OVERLAY }, |
+ { true, ui::VKEY_OEM_2, |
+ ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN, |
+ SHOW_KEYBOARD_OVERLAY }, |
+ { true, ui::VKEY_F1, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN, SHOW_OAK }, |
+ { true, ui::VKEY_1, ui::EF_ALT_DOWN, SELECT_WIN_0 }, |
+ { true, ui::VKEY_2, ui::EF_ALT_DOWN, SELECT_WIN_1 }, |
+ { true, ui::VKEY_3, ui::EF_ALT_DOWN, SELECT_WIN_2 }, |
+ { true, ui::VKEY_4, ui::EF_ALT_DOWN, SELECT_WIN_3 }, |
+ { true, ui::VKEY_5, ui::EF_ALT_DOWN, SELECT_WIN_4 }, |
+ { true, ui::VKEY_6, ui::EF_ALT_DOWN, SELECT_WIN_5 }, |
+ { true, ui::VKEY_7, ui::EF_ALT_DOWN, SELECT_WIN_6 }, |
+ { true, ui::VKEY_8, ui::EF_ALT_DOWN, SELECT_WIN_7 }, |
+ { true, ui::VKEY_9, ui::EF_ALT_DOWN, SELECT_LAST_WIN }, |
// We need the number keys with and without shift since the French keyboard |
// does not have explicit number keys. Instead they have to press |
@@ -79,38 +86,44 @@ const AcceleratorData kAcceleratorData[] = { |
// functionality, we should think about either assembling this table |
// dynamically - or by decoding the keys properly (which is of course in |
// conflict with other keyboards since the Shift+ is missing then). |
- { true, ui::VKEY_1, true, false, true, SELECT_WIN_0 }, |
- { true, ui::VKEY_2, true, false, true, SELECT_WIN_1 }, |
- { true, ui::VKEY_3, true, false, true, SELECT_WIN_2 }, |
- { true, ui::VKEY_4, true, false, true, SELECT_WIN_3 }, |
- { true, ui::VKEY_5, true, false, true, SELECT_WIN_4 }, |
- { true, ui::VKEY_6, true, false, true, SELECT_WIN_5 }, |
- { true, ui::VKEY_7, true, false, true, SELECT_WIN_6 }, |
- { true, ui::VKEY_8, true, false, true, SELECT_WIN_7 }, |
- { true, ui::VKEY_9, true, false, true, SELECT_LAST_WIN }, |
+ { true, ui::VKEY_1, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, SELECT_WIN_0 }, |
+ { true, ui::VKEY_2, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, SELECT_WIN_1 }, |
+ { true, ui::VKEY_3, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, SELECT_WIN_2 }, |
+ { true, ui::VKEY_4, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, SELECT_WIN_3 }, |
+ { true, ui::VKEY_5, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, SELECT_WIN_4 }, |
+ { true, ui::VKEY_6, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, SELECT_WIN_5 }, |
+ { true, ui::VKEY_7, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, SELECT_WIN_6 }, |
+ { true, ui::VKEY_8, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, SELECT_WIN_7 }, |
+ { true, ui::VKEY_9, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, SELECT_LAST_WIN }, |
// Window management shortcuts. |
- { true, ui::VKEY_OEM_4, false, false, true, WINDOW_SNAP_LEFT }, |
- { true, ui::VKEY_OEM_6, false, false, true, WINDOW_SNAP_RIGHT }, |
- { true, ui::VKEY_OEM_MINUS, false, false, true, WINDOW_MINIMIZE }, |
- { true, ui::VKEY_OEM_PLUS, false, false, true, WINDOW_MAXIMIZE_RESTORE }, |
- { true, ui::VKEY_OEM_PLUS, true, false, true, WINDOW_POSITION_CENTER }, |
+ { true, ui::VKEY_OEM_4, ui::EF_ALT_DOWN, WINDOW_SNAP_LEFT }, |
+ { true, ui::VKEY_OEM_6, ui::EF_ALT_DOWN, WINDOW_SNAP_RIGHT }, |
+ { true, ui::VKEY_OEM_MINUS, ui::EF_ALT_DOWN, WINDOW_MINIMIZE }, |
+ { true, ui::VKEY_OEM_PLUS, ui::EF_ALT_DOWN, WINDOW_MAXIMIZE_RESTORE }, |
+ { true, ui::VKEY_OEM_PLUS, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, |
+ WINDOW_POSITION_CENTER }, |
- { true, ui::VKEY_F3, true, true, true, ROTATE_WINDOWS }, |
+ { true, ui::VKEY_F3, |
+ ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN, |
+ ROTATE_WINDOWS }, |
#if !defined(NDEBUG) |
- { true, ui::VKEY_HOME, false, true, false, ROTATE_SCREEN }, |
- { true, ui::VKEY_B, false, true, true, TOGGLE_DESKTOP_BACKGROUND_MODE }, |
- { true, ui::VKEY_F11, false, true, false, TOGGLE_ROOT_WINDOW_FULL_SCREEN }, |
- { true, ui::VKEY_L, true, true, true, PRINT_LAYER_HIERARCHY }, |
- { true, ui::VKEY_W, true, true, true, PRINT_WINDOW_HIERARCHY }, |
+ { true, ui::VKEY_HOME, ui::EF_CONTROL_DOWN, ROTATE_SCREEN }, |
+ { true, ui::VKEY_B, ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN, |
+ TOGGLE_DESKTOP_BACKGROUND_MODE }, |
+ { true, ui::VKEY_F11, ui::EF_CONTROL_DOWN, TOGGLE_ROOT_WINDOW_FULL_SCREEN }, |
+ { true, ui::VKEY_L, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN, |
+ PRINT_LAYER_HIERARCHY }, |
+ { true, ui::VKEY_W, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN, |
+ PRINT_WINDOW_HIERARCHY }, |
// For testing on systems where Alt-Tab is already mapped. |
- { true, ui::VKEY_W, false, false, true, CYCLE_FORWARD_MRU }, |
- { true, ui::VKEY_W, true, false, true, CYCLE_BACKWARD_MRU }, |
- { true, ui::VKEY_F4, false, true, false, MONITOR_ADD_REMOVE }, |
- { true, ui::VKEY_F4, true, true, false, MONITOR_CYCLE }, |
- { true, ui::VKEY_HOME, true, true, false, MONITOR_TOGGLE_SCALE }, |
+ { true, ui::VKEY_W, ui::EF_ALT_DOWN, CYCLE_FORWARD_MRU }, |
+ { true, ui::VKEY_W, ui::EF_SHIFT_DOWN | ui::EF_ALT_DOWN, CYCLE_BACKWARD_MRU }, |
+ { true, ui::VKEY_F4, ui::EF_CONTROL_DOWN, MONITOR_ADD_REMOVE }, |
+ { true, ui::VKEY_F4, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN, MONITOR_CYCLE }, |
+ { true, ui::VKEY_HOME, ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN, |
+ MONITOR_TOGGLE_SCALE }, |
#endif |
- // trigger_on_press, KeyboardCode, shift, control, alt, AcceleratorAction |
}; |
const size_t kAcceleratorDataLength = arraysize(kAcceleratorData); |