Index: scribus/ui/propertiespalette.cpp
===================================================================
--- scribus/ui/propertiespalette.cpp	(Revision 25886)
+++ scribus/ui/propertiespalette.cpp	(Arbeitskopie)
@@ -356,12 +356,13 @@
 	if (!m_haveDoc || !m_ScMW || m_ScMW->scriptIsRunning())
 		return;
 
-	enablePalettes(false);
+//	enablePalettes(false);
 
 	PageItem* currItem = currentItemFromSelection();
 	if (m_doc->m_Selection->count() > 1)
 	{
 		scXYZ->setEnabled(true);
+		scShape->setEnabled(false);
 		scShadow->setEnabled(true);
 		scLine->setEnabled(true);
 		scColor->setEnabled(true);
@@ -377,6 +378,12 @@
 		case -1:
 			m_haveItem = false;
 			colorPalette->showGradient(0);
+			scXYZ->setEnabled(false);
+			scShape->setEnabled(false);
+			scLine->setEnabled(false);
+			scColor->setEnabled(false);
+			scTransparency->setEnabled(false);
+			scShadow->setEnabled(false);
 			break;
 		case PageItem::ImageFrame:
 		case PageItem::LatexFrame:
@@ -386,16 +393,24 @@
 				scXYZ->setEnabled(true);
 				scShadow->setEnabled(true);
 				scShape->setEnabled(true);
+				scLine->setEnabled(false);
 				scColor->setEnabled(true);
+				scTransparency->setEnabled(false);
 			}
 			else
 			{
-				enablePalettes(true);
+				scXYZ->setEnabled(true);
+				scShadow->setEnabled(true);
+				scShape->setEnabled(true);
+				scLine->setEnabled(true);
+				scColor->setEnabled(true);
+				scTransparency->setEnabled(true);
 			}
 			break;
 		case PageItem::Line:
 			scXYZ->setEnabled(true);
 			scShadow->setEnabled(true);
+			scShape->setEnabled(false);
 			scLine->setEnabled(true);
 			scColor->setEnabled(true);
 			scTransparency->setEnabled(true);
@@ -412,7 +427,12 @@
 		case PageItem::PolyLine:
 		case PageItem::Spiral:
 		case PageItem::PathText:
-			enablePalettes(true);
+			scXYZ->setEnabled(true);
+			scShadow->setEnabled(true);
+			scShape->setEnabled(true);
+			scLine->setEnabled(true);
+			scColor->setEnabled(true);
+			scTransparency->setEnabled(true);
 			break;
 		}
 	}
@@ -424,6 +444,7 @@
 	{
 		setCurrentItem(currItem);
 	}
+
 }
 
 void PropertiesPalette::unitChange()
Index: scribus/ui/scrspinbox.cpp
===================================================================
--- scribus/ui/scrspinbox.cpp	(Revision 25886)
+++ scribus/ui/scrspinbox.cpp	(Arbeitskopie)
@@ -28,11 +28,11 @@
 ScrSpinBox::ScrSpinBox(QWidget *parent, int unitIndex) : QDoubleSpinBox(parent)
 {
 	init(unitIndex);
+	setFocusPolicy(Qt::StrongFocus);
 }
 
-ScrSpinBox::ScrSpinBox(double minValue, double maxValue, QWidget *pa, int unitIndex) : QDoubleSpinBox(pa)
+ScrSpinBox::ScrSpinBox(double minValue, double maxValue, QWidget *pa, int unitIndex) : ScrSpinBox(pa, unitIndex)
 {
-	init(unitIndex);
 	setMinimum(minValue);
 	setMaximum(maxValue);
 }
@@ -333,9 +335,9 @@
 
 	if (event->type() == QEvent::Wheel)
 	{
-		//If read only don't spin
-		if (isReadOnly())
-			return false;
+		// If read only don't spin OR avoid value changes if widget has no focus
+		if (isReadOnly() || !hasFocus())
+			return true;
 		auto* wheelEvent = dynamic_cast<QWheelEvent*>(event);
 		bool shiftB = wheelEvent->modifiers() & Qt::ShiftModifier;
 		bool altB = wheelEvent->modifiers() & Qt::AltModifier;
