| Index: ui/aura/window_event_dispatcher.cc
|
| diff --git a/ui/aura/window_event_dispatcher.cc b/ui/aura/window_event_dispatcher.cc
|
| index eb08269c95bc94138074385699a928d294916208..e100bc82bdf810db4cb4f4c54445cea0a408144b 100644
|
| --- a/ui/aura/window_event_dispatcher.cc
|
| +++ b/ui/aura/window_event_dispatcher.cc
|
| @@ -391,8 +391,12 @@ void WindowEventDispatcher::UpdateCapture(Window* old_capture,
|
| }
|
|
|
| void WindowEventDispatcher::OnOtherRootGotCapture() {
|
| - // Sending the mouse exit causes bugs on Windows (e.g. crbug.com/394672).
|
| - // TODO(pkotwicz): Fix the bugs and send mouse exit on Windows too.
|
| + // Windows provides the TrackMouseEvents API which allows us to rely on the
|
| + // OS to send us the mouse exit events (WM_MOUSELEAVE). Additionally on
|
| + // desktop Windows, every top level window could potentially have its own
|
| + // root window, in which case this function will get called whenever those
|
| + // windows grab mouse capture. Sending mouse exit messages in these cases
|
| + // causes subtle bugs like (crbug.com/394672).
|
| #if !defined(OS_WIN)
|
| if (mouse_moved_handler_) {
|
| // Dispatch a mouse exit to reset any state associated with hover. This is
|
|
|