summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorAndrey Lihatskiy <andreylproductengine@lindenlab.com>2019-05-23 14:34:10 +0000
committerAndrey Lihatskiy <andreylproductengine@lindenlab.com>2019-05-23 14:34:10 +0000
commit91edfab36b4a489374554d49bb06bd02e270d0fd (patch)
treebcdfec176506ee26ba2ed11ea6a5f98c8924abd5 /indra
parentb7c3a2fbeb7580978741b80c2213e78c7ed7e0ff (diff)
parent0dd7ac4a8d4fe2dfc7cc2327a2f6b4870c7801d3 (diff)
Merged in default (pull request #56)
SL-10898[Mac] Camera spins and pulls back when using alt+zoom with mouse Approved-by: Maxim Nikolenko Approved-by: Andrey Lihatskiy
Diffstat (limited to 'indra')
-rw-r--r--indra/llui/llui.cpp10
-rw-r--r--indra/newview/llworldmapview.cpp6
2 files changed, 5 insertions, 11 deletions
diff --git a/indra/llui/llui.cpp b/indra/llui/llui.cpp
index e9f8ba020e..52190a1473 100644
--- a/indra/llui/llui.cpp
+++ b/indra/llui/llui.cpp
@@ -236,14 +236,14 @@ void LLUI::dirtyRect(LLRect rect)
//static
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);
+ S32 screen_x = ll_round(((F32)x * getScaleFactor().mV[VX]) / LLView::getWindow()->getSystemUISize());
+ S32 screen_y = ll_round(((F32)y * getScaleFactor().mV[VY]) / LLView::getWindow()->getSystemUISize());
#else
- screen_x = ll_round((F32)x * getScaleFactor().mV[VX]);
- screen_y = ll_round((F32)y * getScaleFactor().mV[VY]);
+ S32 screen_x = ll_round((F32)x * getScaleFactor().mV[VX]);
+ S32 screen_y = ll_round((F32)y * getScaleFactor().mV[VY]);
#endif
+
LLView::getWindow()->setCursorPosition(LLCoordGL(screen_x, screen_y).convert());
}
diff --git a/indra/newview/llworldmapview.cpp b/indra/newview/llworldmapview.cpp
index b27257a262..86249badaa 100644
--- a/indra/newview/llworldmapview.cpp
+++ b/indra/newview/llworldmapview.cpp
@@ -887,14 +887,8 @@ void LLWorldMapView::drawFrustum()
F32 half_width_pixels = half_width_meters * meters_to_pixels;
// Compute the frustum coordinates. Take the UI scale into account.
-#if defined(LL_DARWIN)
- F32 ui_scale_factor = gSavedSettings.getF32("UIScaleFactor");
- F32 ctr_x = ((getLocalRect().getWidth() * 0.5f + sPanX) * ui_scale_factor) * LLUI::getScaleFactor().mV[VX];
- F32 ctr_y = ((getLocalRect().getHeight() * 0.5f + sPanY) * ui_scale_factor) * LLUI::getScaleFactor().mV[VY];
-#else
F32 ctr_x = ((getLocalRect().getWidth() * 0.5f + sPanX) * LLUI::getScaleFactor().mV[VX]);
F32 ctr_y = ((getLocalRect().getHeight() * 0.5f + sPanY) * LLUI::getScaleFactor().mV[VY]);
-#endif
gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE);