From 23f7f27c45522f30883322d132b7ef0df8d0f0f8 Mon Sep 17 00:00:00 2001 From: iota97 Date: Sun, 12 Jul 2020 09:47:44 +0200 Subject: [PATCH] Fix decimal part --- UI/TouchControlLayoutScreen.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/UI/TouchControlLayoutScreen.cpp b/UI/TouchControlLayoutScreen.cpp index e6553480dc..a5462dd236 100644 --- a/UI/TouchControlLayoutScreen.cpp +++ b/UI/TouchControlLayoutScreen.cpp @@ -280,8 +280,8 @@ void ControlLayoutView::Touch(const TouchInput &touch) { newPos.x = startObjectX_ + (touch.x - startDragX_); newPos.y = startObjectY_ + (touch.y - startDragY_); if (g_Config.bTouchSnapToGrid) { - newPos.x -= (int)(newPos.x - controlBounds.w) % g_Config.iTouchSnapGridSize; - newPos.y -= (int)(newPos.y - controlBounds.h) % g_Config.iTouchSnapGridSize; + newPos.x -= fmod(newPos.x - controlBounds.w, g_Config.iTouchSnapGridSize); + newPos.y -= fmod(newPos.y - controlBounds.h, g_Config.iTouchSnapGridSize); } newPos = ClampTo(newPos, validRange); @@ -294,8 +294,8 @@ void ControlLayoutView::Touch(const TouchInput &touch) { // Snap to grid if (g_Config.bTouchSnapToGrid) { - diffX -= (int)(touch.x - startDragX_) % (g_Config.iTouchSnapGridSize/2); - diffY += (int)(touch.y - startDragY_) % (g_Config.iTouchSnapGridSize/2); + diffX -= fmod(touch.x - startDragX_, g_Config.iTouchSnapGridSize/2); + diffY += fmod(touch.y - startDragY_, g_Config.iTouchSnapGridSize/2); } float movementScale = 0.02f; float newScale = startScale_ + diffY * movementScale;