Index: ui/aura/root_window.cc |
diff --git a/ui/aura/root_window.cc b/ui/aura/root_window.cc |
index 5c6f48ddafef93c233dbdd13043c81483e9d53cc..6cec8adee6c092f0b926938f4808ed5565a19ac0 100644 |
--- a/ui/aura/root_window.cc |
+++ b/ui/aura/root_window.cc |
@@ -68,9 +68,17 @@ Window* ConsumerToWindow(ui::GestureConsumer* consumer) { |
static_cast<Window*>(consumer) : NULL; |
} |
-void SetLastMouseLocation(const Window* root_window, |
- const gfx::Point& location) { |
- Env::GetInstance()->SetLastMouseLocation(*root_window, location); |
+void SetLastMouseLocation(const RootWindow* root_window, |
+ const gfx::Point& location_in_root) { |
+ client::ScreenPositionClient* client = |
+ client::GetScreenPositionClient(root_window); |
+ if (client) { |
+ gfx::Point location_in_screen = location_in_root; |
+ client->ConvertPointToScreen(root_window, &location_in_screen); |
+ Env::GetInstance()->set_last_mouse_location(location_in_screen); |
+ } else { |
+ Env::GetInstance()->set_last_mouse_location(location_in_root); |
+ } |
} |
RootWindowHost* CreateHost(RootWindow* root_window, |
@@ -205,10 +213,9 @@ void RootWindow::SetCursor(gfx::NativeCursor cursor) { |
host_->SetCursor(cursor); |
} |
-void RootWindow::OnCursorVisibilityChanged(bool show) { |
+void RootWindow::OnCursorEnableStateChanged(bool enabled) { |
// Send entered / exited so that visual state can be updated to match |
// cursor state. |
- Env::GetInstance()->SetCursorShown(show); |
PostMouseMoveEventAfterWindowChange(); |
} |
@@ -567,10 +574,8 @@ void RootWindow::ReleaseNativeCapture() { |
host_->ReleaseCapture(); |
} |
-gfx::Point RootWindow::QueryMouseLocationForTest() const { |
- gfx::Point point; |
- host_->QueryMouseLocation(&point); |
- return point; |
+bool RootWindow::QueryMouseLocationForTest(gfx::Point* point) const { |
+ return host_->QueryMouseLocation(point); |
} |
//////////////////////////////////////////////////////////////////////////////// |