From 0e37f240debf282f1ec173be47657484d44377a0 Mon Sep 17 00:00:00 2001 From: Yash Suthar Date: Tue, 9 Dec 2025 11:45:12 +0530 Subject: [PATCH] Link: Fixed Scale property behaviour when the object is moved Signed-off-by: Yash Suthar --- src/Gui/ViewProviderLink.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Gui/ViewProviderLink.cpp b/src/Gui/ViewProviderLink.cpp index 4d440ec18c..6f7ac9e846 100644 --- a/src/Gui/ViewProviderLink.cpp +++ b/src/Gui/ViewProviderLink.cpp @@ -2162,13 +2162,15 @@ void ViewProviderLink::updateData(const App::Property* prop) if (childVp) { childVp->updateData(prop); } + + inherited::updateData(prop); + if (!isRestoring() && !pcObject->isRestoring()) { auto ext = getLinkExtension(); if (ext) { updateDataPrivate(getLinkExtension(), prop); } } - return inherited::updateData(prop); } static inline bool canScale(const Base::Vector3d& v) @@ -2208,7 +2210,7 @@ void ViewProviderLink::updateDataPrivate(App::LinkBaseExtension* ext, const App: } else if (prop == ext->getPlacementProperty() || prop == ext->getLinkPlacementProperty()) { auto propLinkPlacement = ext->getLinkPlacementProperty(); - if (!propLinkPlacement || propLinkPlacement == prop) { + if (!propLinkPlacement || propLinkPlacement == prop || prop == ext->getPlacementProperty()) { const auto& v = ext->getScaleVector(); if (canScale(v)) { pcTransform->scaleFactor.setValue(v.x, v.y, v.z);