15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef ASH_ACCELERATORS_ACCELERATOR_TABLE_H_ 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define ASH_ACCELERATORS_ACCELERATOR_TABLE_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ash/ash_export.h" 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/basictypes.h" 10d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)#include "ui/events/event_constants.h" 11d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)#include "ui/events/keycodes/keyboard_codes.h" 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace ash { 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 151320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// There are five classes of accelerators in Ash: 1658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// 1758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// Ash (OS) reserved: 1858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// * Neither packaged apps nor web pages can cancel. 191320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// * For example, power button. 2058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// * See kReservedActions below. 2158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// 221320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// Ash (OS) preferred: 231320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// * Fullscreen window can consume, but normal window can't. 241320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// * For example, Alt-Tab window cycling. 251320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// * See kPreferredActions below. 261320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// 274e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// Chrome OS system keys: 284e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// * For legacy reasons, v1 apps can process and cancel. Otherwise handled 294e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// directly by Ash. 304e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// * Brightness, volume control, etc. 314e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// * See IsSystemKey() in ash/accelerators/accelerator_filter.cc. 3258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// 3358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// Browser reserved: 3458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// * Packaged apps can cancel but web pages cannot. 3558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// * For example, browser back and forward from first-row function keys. 3658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// * See IsReservedCommandOrKey() in 3758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// chrome/browser/ui/browser_command_controller.cc. 3858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// 3958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// Browser non-reserved: 4058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// * Both packaged apps and web pages can cancel. 4158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// * For example, selecting tabs by number with Ctrl-1 to Ctrl-9. 4258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// * See kAcceleratorMap in chrome/browser/ui/views/accelerator_table.cc. 4358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// 4458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// In particular, there is not an accelerator processing pass for Ash after 4558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// the browser gets the accelerator. See crbug.com/285308 for details. 4658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// 474e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// There are also various restrictions on accelerators allowed at the login 484e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// screen, when running in "forced app mode" (like a kiosk), etc. See the 494e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// various kActionsAllowed* below. 504e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// 515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Please put if/def sections at the end of the bare section and keep the list 525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// within each section in alphabetical order. 535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)enum AcceleratorAction { 54c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) ACCESSIBLE_FOCUS_NEXT, 55c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) ACCESSIBLE_FOCUS_PREVIOUS, 565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) BRIGHTNESS_DOWN, 575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) BRIGHTNESS_UP, 585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) CYCLE_BACKWARD_MRU, 595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) CYCLE_FORWARD_MRU, 60c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) DEBUG_TOGGLE_DEVICE_SCALE_FACTOR, 61c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) DEBUG_TOGGLE_SHOW_DEBUG_BORDERS, 62c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) DEBUG_TOGGLE_SHOW_FPS_COUNTER, 63c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) DEBUG_TOGGLE_SHOW_PAINT_RECTS, 645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) DISABLE_CAPS_LOCK, 655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) EXIT, 665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FOCUS_NEXT_PANE, 675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) FOCUS_PREVIOUS_PANE, 681320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci FOCUS_SHELF, 695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) KEYBOARD_BRIGHTNESS_DOWN, 705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) KEYBOARD_BRIGHTNESS_UP, 71eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch LAUNCH_APP_0, 72eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch LAUNCH_APP_1, 73eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch LAUNCH_APP_2, 74eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch LAUNCH_APP_3, 75eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch LAUNCH_APP_4, 76eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch LAUNCH_APP_5, 77eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch LAUNCH_APP_6, 78eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch LAUNCH_APP_7, 79eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch LAUNCH_LAST_APP, 805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) LOCK_PRESSED, 815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) LOCK_RELEASED, 825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) MAGNIFY_SCREEN_ZOOM_IN, 835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) MAGNIFY_SCREEN_ZOOM_OUT, 845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) MEDIA_NEXT_TRACK, 855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) MEDIA_PLAY_PAUSE, 865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) MEDIA_PREV_TRACK, 875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) NEW_INCOGNITO_WINDOW, 885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) NEW_TAB, 895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) NEW_WINDOW, 905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) NEXT_IME, 915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) OPEN_FEEDBACK_PAGE, 925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) POWER_PRESSED, 935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) POWER_RELEASED, 94c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) PREVIOUS_IME, 95c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) PRINT_LAYER_HIERARCHY, 962a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) PRINT_UI_HIERARCHIES, 97c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) PRINT_VIEW_HIERARCHY, 98c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) PRINT_WINDOW_HIERARCHY, 995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) RESTORE_TAB, 1005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ROTATE_SCREEN, 1012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) ROTATE_WINDOW, 1022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) SCALE_UI_DOWN, 103c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) SCALE_UI_RESET, 1042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) SCALE_UI_UP, 1055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) SHOW_KEYBOARD_OVERLAY, 1062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) SHOW_MESSAGE_CENTER_BUBBLE, 1072a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) SHOW_SYSTEM_TRAY_BUBBLE, 1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) SHOW_TASK_MANAGER, 109c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) SILENCE_SPOKEN_FEEDBACK, 1105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) SWAP_PRIMARY_DISPLAY, 1115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) SWITCH_IME, // Switch to another IME depending on the accelerator. 1125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) TAKE_PARTIAL_SCREENSHOT, 1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) TAKE_SCREENSHOT, 1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) TOGGLE_APP_LIST, 1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) TOGGLE_CAPS_LOCK, 1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) TOGGLE_CAPS_LOCK_BY_ALT_LWIN, 1175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) TOGGLE_DESKTOP_BACKGROUND_MODE, 118c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) TOGGLE_FULLSCREEN, 1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) TOGGLE_MAXIMIZED, 120a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) TOGGLE_OVERVIEW, 1215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) TOGGLE_ROOT_WINDOW_FULL_SCREEN, 1225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) TOGGLE_SPOKEN_FEEDBACK, 123a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) TOGGLE_TOUCH_VIEW_TESTING, 1245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) TOGGLE_WIFI, 1252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) TOUCH_HUD_CLEAR, 1262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) TOUCH_HUD_MODE_CHANGE, 127eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch TOUCH_HUD_PROJECTION_TOGGLE, 1285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) VOLUME_DOWN, 1295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) VOLUME_MUTE, 1305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) VOLUME_UP, 1315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) WINDOW_MINIMIZE, 1325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) WINDOW_POSITION_CENTER, 1335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) WINDOW_SNAP_LEFT, 1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) WINDOW_SNAP_RIGHT, 1355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_CHROMEOS) 13690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) ADD_REMOVE_DISPLAY, 13790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) TOGGLE_MIRROR_MODE, 138c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) DISABLE_GPU_WATCHDOG, 1395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) LOCK_SCREEN, 1405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) OPEN_CROSH, 1412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) OPEN_FILE_MANAGER, 14268043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles) SWITCH_TO_NEXT_USER, 143a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles) SWITCH_TO_PREVIOUS_USER, 1441320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#else 1451320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci DUMMY_FOR_RESERVED, 1465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 1475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 1485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)struct AcceleratorData { 1505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) bool trigger_on_press; 1515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ui::KeyboardCode keycode; 1525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int modifiers; 1535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) AcceleratorAction action; 1545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 1555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Accelerators handled by AcceleratorController. 1575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const AcceleratorData kAcceleratorData[]; 1585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const size_t kAcceleratorDataLength; 1595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 160c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#if !defined(NDEBUG) 161c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Accelerators useful when running on desktop. Debug build only. 162c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)ASH_EXPORT extern const AcceleratorData kDesktopAcceleratorData[]; 163c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)ASH_EXPORT extern const size_t kDesktopAcceleratorDataLength; 164c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#endif 165c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 1665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Debug accelerators enabled only when "Debugging keyboard shortcuts" flag 1675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// (--ash-debug-shortcuts) is enabled. 1685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const AcceleratorData kDebugAcceleratorData[]; 1695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const size_t kDebugAcceleratorDataLength; 1705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Actions that should be handled very early in Ash unless the current target 1725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// window is full-screen. 1731320f92c476a1ad9d19dba2a48c72b75566198e9Primiano TucciASH_EXPORT extern const AcceleratorAction kPreferredActions[]; 1741320f92c476a1ad9d19dba2a48c72b75566198e9Primiano TucciASH_EXPORT extern const size_t kPreferredActionsLength; 1751320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 1761320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// Actions that are always handled in Ash. 1775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const AcceleratorAction kReservedActions[]; 1785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const size_t kReservedActionsLength; 1795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 18090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Actions that should be handled very early in Ash unless the current target 18190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// window is full-screen, these actions are only handled if 18290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// DebugShortcutsEnabled is true (command line switch 'ash-debug-shortcuts'). 18390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)ASH_EXPORT extern const AcceleratorAction kReservedDebugActions[]; 18490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)ASH_EXPORT extern const size_t kReservedDebugActionsLength; 18590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) 1865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Actions allowed while user is not signed in or screen is locked. 1875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const AcceleratorAction kActionsAllowedAtLoginOrLockScreen[]; 1885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const size_t kActionsAllowedAtLoginOrLockScreenLength; 1895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Actions allowed while screen is locked (in addition to 1915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// kActionsAllowedAtLoginOrLockScreen). 1925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const AcceleratorAction kActionsAllowedAtLockScreen[]; 1935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const size_t kActionsAllowedAtLockScreenLength; 1945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Actions allowed while a modal window is up. 1965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const AcceleratorAction kActionsAllowedAtModalWindow[]; 1975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const size_t kActionsAllowedAtModalWindowLength; 1985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Actions which will not be repeated while holding an accelerator key. 2005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const AcceleratorAction kNonrepeatableActions[]; 2015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ASH_EXPORT extern const size_t kNonrepeatableActionsLength; 2025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Actions allowed in app mode. 2042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)ASH_EXPORT extern const AcceleratorAction kActionsAllowedInAppMode[]; 2052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)ASH_EXPORT extern const size_t kActionsAllowedInAppModeLength; 2062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 207f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// Actions that require at least 1 window. 208f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)ASH_EXPORT extern const AcceleratorAction kActionsNeedingWindow[]; 209f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)ASH_EXPORT extern const size_t kActionsNeedingWindowLength; 210f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) 2115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace ash 2125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // ASH_ACCELERATORS_ACCELERATOR_TABLE_H_ 214