| Index: ash/accelerators/accelerator_controller.cc
|
| diff --git a/ash/accelerators/accelerator_controller.cc b/ash/accelerators/accelerator_controller.cc
|
| index 2762f944573416de07351998dba4e09d1683d458..ee67958de0b9f685c35deceb5e57917483b8b6b8 100644
|
| --- a/ash/accelerators/accelerator_controller.cc
|
| +++ b/ash/accelerators/accelerator_controller.cc
|
| @@ -189,8 +189,14 @@ AcceleratorController::~AcceleratorController() {
|
| }
|
|
|
| void AcceleratorController::Init() {
|
| - for (size_t i = 0; i < kActionsAllowedAtLoginScreenLength; ++i) {
|
| - actions_allowed_at_login_screen_.insert(kActionsAllowedAtLoginScreen[i]);
|
| + for (size_t i = 0; i < kActionsAllowedAtLoginOrLockScreenLength; ++i) {
|
| + actions_allowed_at_login_screen_.insert(
|
| + kActionsAllowedAtLoginOrLockScreen[i]);
|
| + actions_allowed_at_lock_screen_.insert(
|
| + kActionsAllowedAtLoginOrLockScreen[i]);
|
| + }
|
| + for (size_t i = 0; i < kActionsAllowedAtLockScreenLength; ++i) {
|
| + actions_allowed_at_lock_screen_.insert(kActionsAllowedAtLockScreen[i]);
|
| }
|
|
|
| for (size_t i = 0; i < kAcceleratorDataLength; ++i) {
|
| @@ -265,18 +271,22 @@ bool AcceleratorController::AcceleratorPressed(
|
| AcceleratorAction action = static_cast<AcceleratorAction>(it->second);
|
|
|
| ash::Shell* shell = ash::Shell::GetInstance();
|
| + bool at_login_screen = false;
|
| #if defined(OS_CHROMEOS)
|
| - bool at_login_screen = shell->IsScreenLocked() ||
|
| - (shell->delegate() && !shell->delegate()->IsUserLoggedIn());
|
| -#else
|
| - bool at_login_screen = shell->IsScreenLocked();
|
| -#endif // OS_CHROMEOS
|
| + at_login_screen = (shell->delegate() && !shell->delegate()->IsUserLoggedIn());
|
| +#endif
|
| + bool at_lock_screen = shell->IsScreenLocked();
|
|
|
| if (at_login_screen &&
|
| actions_allowed_at_login_screen_.find(action) ==
|
| actions_allowed_at_login_screen_.end()) {
|
| return false;
|
| }
|
| + if (at_lock_screen &&
|
| + actions_allowed_at_lock_screen_.find(action) ==
|
| + actions_allowed_at_lock_screen_.end()) {
|
| + return false;
|
| + }
|
|
|
| switch (action) {
|
| case CYCLE_BACKWARD_MRU:
|
|
|