Chromium Code Reviews| Index: ui/wm/core/accelerator_filter.cc |
| diff --git a/ui/wm/core/accelerator_filter.cc b/ui/wm/core/accelerator_filter.cc |
| index 12e91316d21ce81ce0c8906c851bf13f24cedf83..d598ddfe64f8fe6847d1af1b53d33e59dcb503d7 100644 |
| --- a/ui/wm/core/accelerator_filter.cc |
| +++ b/ui/wm/core/accelerator_filter.cc |
| @@ -71,6 +71,18 @@ void AcceleratorFilter::OnKeyEvent(ui::KeyEvent* event) { |
| event->StopPropagation(); |
| } |
| +void AcceleratorFilter::OnMouseEvent(ui::MouseEvent* event) { |
| + // When a mouse event is interleaved between two key accelerators, we must |
| + // store this event as an empty default accelerator in the accelerator |
| + // history, so that the |AcceleratorController| can notice that something |
| + // actually happend between those two key accelerators. |
| + // We ignore synthesized mouse events. |
| + if (event->flags() & ui::EF_IS_SYNTHESIZED) |
| + return; |
|
sadrul
2015/05/04 17:16:17
Remove the check for synthesized event if it isn't
afakhry
2015/05/04 20:17:08
Done.
|
| + |
| + accelerator_history_->StoreCurrentAccelerator(ui::Accelerator()); |
| +} |
| + |
| ui::Accelerator CreateAcceleratorFromKeyEvent(const ui::KeyEvent& key_event) { |
| const int kModifierFlagMask = |
| (ui::EF_SHIFT_DOWN | ui::EF_CONTROL_DOWN | ui::EF_ALT_DOWN); |