Avoid being able to undo a part of containerisation #178
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.
Changelog Description
Containerise will now happen inside an undo chunk, disallowing to undo a part of the command.
Additional review information
Without this there is a bug if the user were to Load something and they would press UNDO a few times that they may have undo'ed a part of the containerisation. In particular, they may have undo'ed to JUST a state where the container is recognized but it lacks the representation attribute - meaning it will break anything that tries to get the
container["representation"]
value from the containers in the scene - e.g. loader, publishing from the scene (on collect input versions), etc.This makes it so that if the user were to undo - it undoes the full creation of the container.
Technically we could ALSO add the same undo chunk decorator on all the maya loader plug-in methods to ensure they all operate in a single undo chunk.
Testing notes:
TIP: To see containers in the outliner enable "Ignore hidden in outliner":