I’ve considered many solutions now, and I don’t want to add an other user preference or properties editor toggle. So this leads us with 2 options:
Remove sync for object tab. This solves most of the use cases, but at times it is nice to immediately jump to the object tab from the outliner. It could also be seen as an arbitrary exception to always sync except for objects.
Only sync when clicking on the icon. This would solve all of the issues here, including the “shared border” syncing problem. If properties sync is always intentional by clicking on the icon I don’t think we need to define cases where a sync can never happen.
I’m going to make a quick test of icon properties tab switching.
And what about the cases where you have two properties areas? For example when sculpting one for the tool proprieties one for the rest. how that would work? Or multi window setups on one window you have specific objects and properties on the other whole scene and global properties.
In my opinion using one tab set for object, scene, global, tool properties was bad(delicately speaking) design decision and now you need to over complicate things… to make it somewhat usable - but that is just a digression.
Disabling sync when a non object tab is selected(tool tab, render tab) would be an option - crappy option but still…
Count me in the “I only ever wanted selection sync which we got. I never even wanted a properties sync.” group
I hope the icon approach above at least makes it in but it’s still not ideal. I now have to be extra careful to aim for a particular spot on the outliner row to not get sync behavior. Before I could just hit the row itself and not have to worry. I suppose I could learn to be careful
I just thought, what if clicking on the icons for the respective property tabs is done not by clicking but by double-clicking? So, even if we click on the object without paying extra attention on where to click we’re sure there won’t be unwanted jumps in the properties. This could also be a customizable key in the keymap editor, where we could potentially choose also to do it with just one click as it is now. I think this, along with clicking on the object’s icon and not the name, would avoid any kind of unwanted behavior.
I actually like the current behavior, maybe because I use c4d all the time, and it works almost the same there… and I think people just need to get used to it, cuz it’s really great…
So, before destroying this nice and intuitive syncing behavior, maybe you should consider adding a user preference setting for that, so those not familiar with it can turn that off… removing it would be quite a regression IMHO…
I implemented the second option today (only sync when clicking the icon) and I think it’s a good solution. It doesn’t require a preference, and clicking the icon is still a simple enough target.
I would have pushed the commit, but there is a small fix remaining. But then I found an unrelated bug and spent a few hours trying to figure out when it was introduced. Hopefully tomorrow I can get this property tab switching on icon click out for testing.
I committed the fix to only do properties sync on the icons.
That just makes the feature less intrusive, less discoverable but that does not solve the issues.
We will have to constantly inform new comers of distinction between clicking on names/clicking on icons and distinction between properties editor with shared border and properties editor without.
I think that many people discovering blender will be confused ; and they probably consider one or the other behavior as a bug.
User is not free to build workspace as he wants. He has to place a Properties Editor next to Outliner to have synchronization. No only that, but size of that properties has to be constrained in one dimension.
same width or same height.
IMO, the most simple thing to do is to let user control synchronization.
Just an item added to right click menu of Properties editor to synchronize it with Outliner.
Ability to have synchronization, when you want, where you want like it is already the case for animation editors.
With that solution, nobody will have a motive to complain.
It is more simple, more intuitive, more discoverable and more consistent.
I think Nathan mentioned that now that sync is only with icons we wouldn’t need anymore the outliner to be shared with properties and it would just be always synced. I’d personally prefer it this way, as the current behavior makes it very hidden and look almost like a bug as you said.
I’ve always been pro properties sync, but yeah having the option to deactivate it would be nice, as we can deactivate outliner/3D view sync selection.
I proposed before that if instead of clicking was double-clicking, the users wouldn’t need to pay extra attention to click on the name and not the icon, and when they want to sync, they’d know for sure it would happen by double-clicking.
Simple tested-case when it is annoying: I am checking and tweaking some light power values, so I have light panel opened. When I select the next light in the list, by clicking on outliner, the panel changes from light data to object data, and I have to switch it back to continue tweaking…
I should click on the icon but in blender’s outliner the icon comes after the name, and it might even disappear if the object has a long name (as in C4D btw).
With the latest patch I can choose on the fly what behaviour I want to see: rather change the panel or keep it. I could even be in the scene data (object agnostic) panel and it wouldn’t disappear unless I choose it to do.
Hy guys, i do have a question, i think it goes into this outliner thread.
Would it be possible to to have a checkbox that would link the “hide in viewport” “disable in viewport” and “disable in render” buttons, so that if you press while the “sync” is on it would simultaneously enable/disable all 3 at once ?
Because when i work i often just hide objects which i just dont want to se or render but i forget to do the same for the render restriction toggle. It can especially get painful if i have to do that for a long list of objects. Syncing the buttons would make this so much easier to do.
Maybe even a option to look at the state of “hide in viewport” and apply that state to the disable in viewport and disable in render.
Well there is a addon for that somewhere i think, but the problem of over increasing number of addons for anything and everything blender related is becoming a problem, especially when i have to install over 20 addons for various things i really dont need an extra mini addon for this.
Especially since its a “basic” accessibility papercut issue not something thats complicated, which would suit being in the main blender branch, well that’s how i see it anyway.
Well. That would be less satisfying for people making workspaces with multiple properties editors.
What is the point to have several of them if they are showing same thing.
Not really… In c4d, the object name and the icons are separate in (resizeable) columns… so stuff don’t disappear when you have long names, unless you deliberately do so…
The new behavior is just a little bit less intuitive and more slow…
That’d be nice. doing it with an addon myself as well, but many addons can create a clutter
While we’re on the subject, it’d also be nice to be able to key viewport visibility (not just enabling/disabling) of objects, and make it consistent between objects and collections.
This might not be outliner related though.
This seems like a pretty good compromise. While it’s a bit hidden, so are other cool features of the outliner, imo it’s just something that people need to discover when learning Blender.
Thanks for your work on this Nathan! Really happy to see you sticking around.
This has been suggested a few times, and it is a good idea. But let’s keep this topic focused on feedback of outliner changes in 2.91 and 2.92.
I’m working on making the all the icons highlight on mouse hover so it’s more clear that an action will happen when selecting the icons.
We also discussed making the heuristic smarter for syncing, before adding a toggle. I think a toggle will likely happen, but perhaps there is a way we can avoid an option. For example, if there is only one outliner in the window, always sync even if it doesn’t border a properties editor. I think it is possible we could think of a strategy for syncing like this, so if you have any ideas let me know. This does loose the flexibility of complete control so a toggle is the final solution if nothing else works.