| Index: ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
|
| diff --git a/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc b/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
|
| index 005f3468f45499300cfe89cf79be854ed6b4fc2a..a3fd31102a55a63104d7403ddb8716f5063fb56e 100644
|
| --- a/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
|
| +++ b/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
|
| @@ -1595,8 +1595,13 @@
|
| break;
|
| }
|
| case FocusOut:
|
| - ReleaseCapture();
|
| - X11DesktopHandler::get()->ProcessXEvent(xev);
|
| + if (xev->xfocus.mode != NotifyGrab) {
|
| + ReleaseCapture();
|
| + OnHostLostWindowCapture();
|
| + X11DesktopHandler::get()->ProcessXEvent(xev);
|
| + } else {
|
| + dispatcher()->OnHostLostMouseGrab();
|
| + }
|
| break;
|
| case FocusIn:
|
| X11DesktopHandler::get()->ProcessXEvent(xev);
|
|
|