This is my attempt to synchronize editors between workspaces.
The main problem of synchronizing editors is: if there is more than one editor of the same type is presented, how we know which one corresponds to another in different workspace?
To make this possible, the desired areas are marked by user with “Slots” that determine which area in one workspace corresponds to the area in another workspace. This design works well for 3D-view, 2D-editors, but not for Outliner unfortunately.
Demo, how it works:
I think this feature is very lacking, requests for it were on a blender.today and I saw similar concept in Machine tools add-on using special pie menu https://youtu.be/HdKkskyFDN4?t=263
And here is the patch:
That do you think about it? Can it be improved?
I like the idea. But would prefefer less clicking.
For me there could be only checkbox in preferences: ‘sync 3d display settings between workspaces’ - this would copy current 3d view settings on workspace change automatically.
Then on top - maybe small menu in 3d view - copy / paste display settings from active 3d view. Or option to save load 3d view preset (kind of like your slots - but using preset widget menu and supporting custom names -> [Textured View, Wire view, Random Color Solid, etc].
The Idea that you can sync not only 3D view, but any editor, that you want, for example, Timeline, node editors, Properties and Outliner (outline sync doesn’t work in prototype, unfortunately, but the idea was to get ability to sync it also).
Of-course 3D view is the first editor, that must have this feature, but sync Outliners, timelines, may be useful also.
Other problem, that if you use several 3D Views, it is hard to determine which viewport corresponds to another in different workspaces. So, I propose a solution to this problem: marking the corresponding areas with the same slot, that It’s not very easy to set up, but you set up it once and use all the time.