From dc68f28a40580078a892e9a5e35951d2a4fc0481 Mon Sep 17 00:00:00 2001 From: Andrew Lanzone Date: Fri, 6 Jun 2025 00:34:01 -0700 Subject: [PATCH] Disable right stick from panning map if zooming maps is enabled --- apps/openmw/mwgui/mapwindow.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/apps/openmw/mwgui/mapwindow.cpp b/apps/openmw/mwgui/mapwindow.cpp index f90180fb44..1c1920f0b2 100644 --- a/apps/openmw/mwgui/mapwindow.cpp +++ b/apps/openmw/mwgui/mapwindow.cpp @@ -839,7 +839,7 @@ namespace MWGui mControllerButtons.b = "#{sBack}"; mControllerButtons.x = global ? "#{sLocal}" : "#{sWorld}"; mControllerButtons.y = "#{sCenter}"; - mControllerButtons.rStick = "#{sMove}"; + mControllerButtons.rStick = Settings::map().mAllowZooming ? "" : "#{sMove}"; } } @@ -1420,11 +1420,15 @@ namespace MWGui bool MapWindow::onControllerThumbstickEvent(const SDL_ControllerAxisEvent& arg) { - int dx = arg.axis == SDL_CONTROLLER_AXIS_RIGHTX ? -30.0f * arg.value / 32767 : 0; - int dy = arg.axis == SDL_CONTROLLER_AXIS_RIGHTY ? -30.0f * arg.value / 32767 : 0; - shiftMap(dx, dy); + if (!Settings::map().mAllowZooming) + { + int dx = arg.axis == SDL_CONTROLLER_AXIS_RIGHTX ? -30.0f * arg.value / 32767 : 0; + int dy = arg.axis == SDL_CONTROLLER_AXIS_RIGHTY ? -30.0f * arg.value / 32767 : 0; + shiftMap(dx, dy); - return true; + return true; + } + return false; } void MapWindow::shiftMap(int dx, int dy)