diff --git a/Engine/source/gui/core/guiCanvas.cpp b/Engine/source/gui/core/guiCanvas.cpp index 95f6213c2..2549a4ed2 100644 --- a/Engine/source/gui/core/guiCanvas.cpp +++ b/Engine/source/gui/core/guiCanvas.cpp @@ -549,8 +549,7 @@ void GuiCanvas::setCursorPos(const Point2I &pt) } else { - Point2I screenPt( mPlatformWindow->clientToScreen( pt ) ); - mPlatformWindow->setCursorPosition( screenPt.x, screenPt.y ); + mPlatformWindow->setCursorPosition(pt.x, pt.y); } } diff --git a/Engine/source/windowManager/sdl/sdlCursorController.cpp b/Engine/source/windowManager/sdl/sdlCursorController.cpp index 601df4e19..f4d8913c9 100644 --- a/Engine/source/windowManager/sdl/sdlCursorController.cpp +++ b/Engine/source/windowManager/sdl/sdlCursorController.cpp @@ -64,17 +64,12 @@ S32 PlatformCursorControllerSDL::getDoubleClickHeight() void PlatformCursorControllerSDL::setCursorPosition( S32 x, S32 y ) { - if( PlatformWindowManager::get() && PlatformWindowManager::get()->getFirstWindow() ) - { - AssertFatal( dynamic_cast( PlatformWindowManager::get()->getFirstWindow() ), ""); - PlatformWindowSDL *window = static_cast( PlatformWindowManager::get()->getFirstWindow() ); - SDL_WarpMouseInWindow(window->getSDLWindow(), x, y); - } + SDL_WarpMouseGlobal(x, y); } void PlatformCursorControllerSDL::getCursorPosition( Point2I &point ) { - SDL_GetMouseState( &point.x, &point.y ); + SDL_GetGlobalMouseState( &point.x, &point.y ); } void PlatformCursorControllerSDL::setCursorVisible( bool visible )