Various Synced Selection Fixes
These changes are mostly less noticable cases where a selection sync is needed. I did not take the time to fix or test all of these cases earlier because I first wanted the selection syncing algorithm to be reviewed and accepted before proceeding.
- Ensure that syncs occur on changing, creating, and deleting view layers.
- Tag for syncing after changing scenes. With unique scenes, syncing already functioned as expected. When a linked copy of a scene is created, the outliner tree element selection state is maintained between the two scenes, so it is required to sync on scene changes because a scene may be a linked copy.
- Tag for syncing after creating a full copy of a scene.
- Sync selection on creating a new workspace
- Sync selection on loading a file/homefile with load UI disabled
- Sync selection on duplicating objects
- Sync selection on separate operators
- Sync selection on paste in 3D view, sequencer, and outliner.
- Sync selection on various outliner operations (object ops, drag and drop)
- Sync selection when selecting/deselecting collection contents from outliner