summaryrefslogtreecommitdiff
path: root/indra/llui/llui.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/llui/llui.cpp')
-rw-r--r--indra/llui/llui.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/indra/llui/llui.cpp b/indra/llui/llui.cpp
index 770f13c1c3..e9f8ba020e 100644
--- a/indra/llui/llui.cpp
+++ b/indra/llui/llui.cpp
@@ -237,9 +237,13 @@ void LLUI::dirtyRect(LLRect rect)
void LLUI::setMousePositionScreen(S32 x, S32 y)
{
S32 screen_x, screen_y;
+#if defined(LL_DARWIN)
+ screen_x = ll_round((F32)x);
+ screen_y = ll_round((F32)y);
+#else
screen_x = ll_round((F32)x * getScaleFactor().mV[VX]);
screen_y = ll_round((F32)y * getScaleFactor().mV[VY]);
-
+#endif
LLView::getWindow()->setCursorPosition(LLCoordGL(screen_x, screen_y).convert());
}
@@ -250,7 +254,7 @@ void LLUI::getMousePositionScreen(S32 *x, S32 *y)
getWindow()->getCursorPosition(&cursor_pos_window);
LLCoordGL cursor_pos_gl(cursor_pos_window.convert());
*x = ll_round((F32)cursor_pos_gl.mX / getScaleFactor().mV[VX]);
- *y = ll_round((F32)cursor_pos_gl.mY / getScaleFactor().mV[VX]);
+ *y = ll_round((F32)cursor_pos_gl.mY / getScaleFactor().mV[VY]);
}
//static