Fix perform_node_renames handling of AnimationMixers track paths #84282
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #83936
This modifies the handling of AnimationPlayers in the perform_node_renames method by moving it before the properties are modified which allows it still retain the correct path to its root. Additionally, since AnimationPlayers and AnimationTrees have been refactored in to the base AnimationMixer class, it now provides handling for AnimationTrees too, but will only run it for AnimationTrees which don't point to an AnimationPlayer.
Additionally, I have restricted path renaming from read-only animations and modifications to tracks marked as imported. This feels like it makes sense since any modifications to these would not be preserved anyway.
There are still other issues discovered around AnimationMixer root nodes in respect to how they're meant to behave, but those issues are out of scope of the reported bug.