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 aa8bcf0573b83f1d71afcfe1d39df6d2c34ccccb..a74f20d7561512c1945c2089a318da8b2c20875f 100644 |
| --- a/ash/common/accelerators/accelerator_controller.cc |
| +++ b/ash/common/accelerators/accelerator_controller.cc |
| @@ -587,6 +587,14 @@ void AcceleratorController::SetImeControlDelegate( |
| bool AcceleratorController::ShouldCloseMenuAndRepostAccelerator( |
| const ui::Accelerator& accelerator) const { |
| + // The context menu can be activated via Search+Shift+Volume up. When seeing |
| + // any key up events involving these keys, don't ever close the menu as it was |
| + // involved in opening the menu. |
| + if (accelerator.type() == ui::ET_KEY_RELEASED && |
| + (accelerator.key_code() == ui::VKEY_LWIN || accelerator.IsShiftDown() || |
| + accelerator.key_code() == ui::VKEY_F10)) |
| + return false; |
|
oshima
2016/10/21 18:10:42
Looks like this is caused by the TOGGLE_APP_LIST a
David Tseng
2016/10/21 20:29:25
Done.
This appears to fix the issue; thanks for t
oshima
2016/10/24 18:53:04
This is because the menu runs nested message loop,
David Tseng
2016/10/24 19:03:56
The menu used to run a message loop:
https://coder
|
| + |
| auto itr = accelerators_.find(accelerator); |
| if (itr == accelerators_.end()) |
| return false; // Menu shouldn't be closed for an invalid accelerator. |