Index: ui/views/mus/pointer_watcher_event_router.cc |
diff --git a/ui/views/mus/pointer_watcher_event_router.cc b/ui/views/mus/pointer_watcher_event_router.cc |
index 3696acb569d9790f9d252922d373c733633ee23d..6393bf7bca3fdef9d8a538c2d368a070ae7df50f 100644 |
--- a/ui/views/mus/pointer_watcher_event_router.cc |
+++ b/ui/views/mus/pointer_watcher_event_router.cc |
@@ -6,6 +6,7 @@ |
#include "services/ui/public/cpp/window.h" |
#include "services/ui/public/cpp/window_tree_client.h" |
+#include "ui/display/screen.h" |
#include "ui/events/base_event_utils.h" |
#include "ui/events/event.h" |
#include "ui/views/mus/native_widget_mus.h" |
@@ -85,7 +86,14 @@ bool PointerWatcherEventRouter::HasPointerWatcher() { |
void PointerWatcherEventRouter::OnWindowTreeCaptureChanged( |
ui::Window* gained_capture, |
ui::Window* lost_capture) { |
- FOR_EACH_OBSERVER(PointerWatcher, pointer_watchers_, OnMouseCaptureChanged()); |
+ const ui::MouseEvent mouse_event(ui::ET_MOUSE_CAPTURE_CHANGED, gfx::Point(), |
+ gfx::Point(), ui::EventTimeForNow(), 0, 0); |
+ const ui::PointerEvent event(mouse_event); |
+ FOR_EACH_OBSERVER( |
+ PointerWatcher, pointer_watchers_, |
+ OnPointerEventObserved( |
+ event, display::Screen::GetScreen()->GetCursorScreenPoint(), |
sadrul
2016/08/19 16:38:59
Why not gfx::Point()?
riajiang
2016/08/19 17:23:42
(same as the first reply)
sadrul
2016/08/22 14:55:19
OK. Get the location first, before calling the obs
riajiang
2016/08/22 16:03:05
Done.
|
+ nullptr)); |
} |
void PointerWatcherEventRouter::OnDidDestroyClient( |