Index: scribus/ui/scrspinbox.cpp
===================================================================
--- scribus/ui/scrspinbox.cpp	(Revision 26266)
+++ scribus/ui/scrspinbox.cpp	(Arbeitskopie)
@@ -227,6 +227,7 @@
 	ts.replace("%", "");
 	ts.replace("°", "");
 	ts.replace(FinishTag, "");
+	ts.replace(suffix(), ""); // We have to remove custom suffix to get a valid input
 	ts = ts.trimmed();
 
 	if (ts.endsWith(su))
@@ -341,29 +342,36 @@
 		if (isReadOnly() || !hasFocus())
 			return true;
 		auto* wheelEvent = dynamic_cast<QWheelEvent*>(event);
+		int oldStep = singleStep(); // remember old single steps
 		bool shiftB = wheelEvent->modifiers() & Qt::ShiftModifier;
-		bool altB = wheelEvent->modifiers() & Qt::AltModifier;
+		bool altB = wheelEvent->modifiers() & Qt::ControlModifier;
+
 		if (shiftB && !altB)
-		{
 			setSingleStep((m_unitIndex == SC_INCHES) ? 0.0625 : 0.1);
-			retval = QAbstractSpinBox::event(event);
-		}
 		else if (!shiftB && altB)
-		{
 			setSingleStep((m_unitIndex == SC_INCHES) ? 1.0 : 10.0);
-			retval = QAbstractSpinBox::event(event);
-		}
 		else if (shiftB && altB)
-		{
 			setSingleStep((m_unitIndex == SC_INCHES) ? 0.03125 : 0.01);
-			retval = QAbstractSpinBox::event(event);
-		}
 		else
-		{
 			setSingleStep((m_unitIndex == SC_INCHES) ? 0.125 : 1.0);
-			retval = QAbstractSpinBox::event(event);
-		}
-		return retval;
+
+		// Reimplement MouseWheel behavior without CTRL modifier behavior of QAbstractSpinBox
+#ifdef Q_OS_MACOS
+		if ((wheelEvent->modifiers() & Qt::ShiftModifier) && wheelEvent->source() == Qt::MouseEventNotSynthesized)
+			wheelDeltaRemainder += wheelEvent->angleDelta().x();
+		else
+			wheelDeltaRemainder += wheelEvent->angleDelta().y();
+#else
+		wheelDeltaRemainder += wheelEvent->angleDelta().y();
+#endif
+		const int steps = wheelDeltaRemainder / 120;
+		wheelDeltaRemainder -= steps * 120;
+		if (stepEnabled() & (steps > 0 ? StepUpEnabled : StepDownEnabled))
+			stepBy(steps);
+
+		setSingleStep(oldStep);
+
+		return true;
 	}
 
 	if (event->type() == QEvent::LocaleChange)
Index: scribus/ui/scrspinbox.h
===================================================================
--- scribus/ui/scrspinbox.h	(Revision 26266)
+++ scribus/ui/scrspinbox.h	(Arbeitskopie)
@@ -54,6 +54,7 @@
 	
 	protected:
 		uint m_unitIndex { 0 };
+		int wheelDeltaRemainder;
 		const QMap<QString, double>* m_constants { nullptr };
 
 		void setParameters(int s);

