Chromium Code Reviews| Index: ash/common/accelerators/accelerator_controller.cc |
| diff --git a/ash/common/accelerators/accelerator_controller.cc b/ash/common/accelerators/accelerator_controller.cc |
| index 7fecc5446228c3e3a34f0f9fa4faa3e505136fe0..f00332a273ea0280e09990dc72b86179082b5bf2 100644 |
| --- a/ash/common/accelerators/accelerator_controller.cc |
| +++ b/ash/common/accelerators/accelerator_controller.cc |
| @@ -551,6 +551,8 @@ bool CanHandleToggleCapsLock(const ui::Accelerator& accelerator, |
| const ui::Accelerator& previous_accelerator) { |
| chromeos::input_method::InputMethodManager* ime = |
| chromeos::input_method::InputMethodManager::Get(); |
| + if (!ime) |
| + return false; |
|
oshima
2017/04/11 19:04:47
when ime is null?
weidongg
2017/04/11 22:55:43
|ime| is checked below at |return| multiple times.
|
| // This shortcust is set to be trigger on release. Either the current |
| // accelerator is a Search release or Alt release. |
| @@ -563,7 +565,7 @@ bool CanHandleToggleCapsLock(const ui::Accelerator& accelerator, |
| ui::Accelerator::KeyState::PRESSED && |
| (previous_accelerator.key_code() == ui::VKEY_LWIN || |
| previous_accelerator.key_code() == ui::VKEY_MENU)) { |
| - return ime && ime->GetImeKeyboard(); |
| + return ime->GetImeKeyboard(); |
| } |
| } |
| @@ -577,10 +579,16 @@ bool CanHandleToggleCapsLock(const ui::Accelerator& accelerator, |
| ui::Accelerator::KeyState::PRESSED && |
| (previous_accelerator.key_code() == ui::VKEY_LWIN || |
| previous_accelerator.key_code() == ui::VKEY_MENU)) { |
| - return ime && ime->GetImeKeyboard(); |
| + return ime->GetImeKeyboard(); |
| } |
| } |
| + // Caps Lock release |
| + if (accelerator.key_code() == ui::VKEY_CAPITAL && |
| + accelerator.key_state() == ui::Accelerator::KeyState::RELEASED) { |
| + return ime->GetImeKeyboard(); |
| + } |
| + |
| return false; |
| } |