Fix from rive-app/rive#2965
diff --git a/include/constraints/constraint.hpp b/include/constraints/constraint.hpp index ae330ac..e8427b1 100644 --- a/include/constraints/constraint.hpp +++ b/include/constraints/constraint.hpp
@@ -13,6 +13,7 @@ virtual void markConstraintDirty(); virtual void constrain(TransformComponent* component) = 0; void buildDependencies() override; + void onDirty(ComponentDirt dirt) override; }; } // namespace rive
diff --git a/src/constraints/constraint.cpp b/src/constraints/constraint.cpp index 9da89eb..cd32ec6 100644 --- a/src/constraints/constraint.cpp +++ b/src/constraints/constraint.cpp
@@ -28,4 +28,11 @@ { Super::buildDependencies(); parent()->addDependent(this); +} + +void Constraint::onDirty(ComponentDirt dirt) +{ + // Whenever the constraint gets any dirt, make sure to mark the constrained + // component dirty. + markConstraintDirty(); } \ No newline at end of file