Index: ui/aura/root_window_host_win.cc |
diff --git a/ui/aura/root_window_host_win.cc b/ui/aura/root_window_host_win.cc |
index 789072c6c087409887672ff19cb4603d26c7f787..e7e0d9db2a2e0f02825e5e60875353aa212f58c6 100644 |
--- a/ui/aura/root_window_host_win.cc |
+++ b/ui/aura/root_window_host_win.cc |
@@ -10,6 +10,7 @@ |
#include "base/message_loop.h" |
#include "ui/aura/client/capture_client.h" |
+#include "ui/aura/client/cursor_client.h" |
#include "ui/aura/root_window.h" |
#include "ui/base/cursor/cursor_loader_win.h" |
#include "ui/base/events/event.h" |
@@ -177,6 +178,13 @@ void RootWindowHostWin::ReleaseCapture() { |
} |
bool RootWindowHostWin::QueryMouseLocation(gfx::Point* location_return) { |
+ client::CursorClient* cursor_client = |
+ client::GetCursorClient(GetRootWindow()); |
+ if (cursor_client && !cursor_client->IsMouseEventsEnabled()) { |
+ *location_return = gfx::Point(0, 0); |
+ return false; |
+ } |
+ |
POINT pt; |
GetCursorPos(&pt); |
ScreenToClient(hwnd(), &pt); |